【レポート】

CEDEC 2006 - CellプロセッサをGPU的に活用することができるのか

1 Cellの可能性を探る

    西川善司  [2006/09/14]

    東芝、IBM、ソニー・コンピュータエンタテインメントの3社連合の技術協力によって生み出されたCellプロセッサはPlayStation3のCPUとして知名度が高いが、そのプログラミングノウハウの蓄積やプログラム実行性についての研究は始まったばかりと言った状況だ。だからこそ、事実上、民生向け(?)初の非対称型マルチコアプロセッサであるCellプロセッサにはどんな可能性が秘められているのかが気になるというものだ。

    CEDEC 2006会期中に執り行われた「Cellグラフィックスプログラミング」と題されたセッションでは、Cellをグラフィックスプロセッサ的に活用するプログラミング技法についての解説が行われ、そうしたソフトウェア技術者の興味を一手に引きつけていたようだ。

    Cellプロセッサの仕組みを簡単に振り返る

    まずはCellプロセッサの基本情報を整理しておこう。

    Cellは東芝、IBM、SCEの3社協同で開発された非対称型のマルチコアCPUで、1基のPowerPC970互換コアのPPE : Power Processor Elementと、8基の128ビットSIMD型RISCプロセッサのSPE : Synergistic Processor Elementから構成される。なお、歩留まり向上の観点からPlayStation3に搭載されるCellにおいては、1基のSPEを予め不稼働仕様とするため、SPE7基構成となる。CellベースのワークステーションやCellベースのアクセラレーションカードのCellでは1PPE+8SPE構成となっている。動作クロックはPS3に採用されるものは3.2GHzと公言されているが、2.4GHzや2.8GHzといったバリエーションもワークステーションやアクセラレーションカードに採用されている。

    メインメモリとしてRambusのXDR DRAM(3.2GHzデータレート)が接続されるが、各SPUは独立した256KBの各自専用のメモリ空間(Local Storage)を持ち、ここで各SPEが担当するプログラムやデータを持ち込んで作業する形態をとる。

    PPEはメインCPU的な役割を果たすが、そのパフォーマンスは、実は3.2GHzという動作クロックから連想されるほど高くはないとされる。演算パイプラインがイン・オーダー限定であることなどが、その大きな要因であると指摘されているが、いずれにせよ、IBMは最初期から「PPEはMain-CPUというよりはConductor(指揮者)の役割を果たす」と説明しており、Cellで最大パフォーマンスを導き出すにはSPEの積極活用が欠かせないというのが定説となりつつある。

    Cellプロセッサのブロックダイアグラム

    新着記事

    特設サイトの情報

      人気記事

      一覧

      イチオシ記事

      新着記事

      特別企画

      マイナビニュースマガジン