Cell Broadband Engineについて
概要
Cell Broadband Engine(CBE)は、ソニー・コンピュータエンタテインメント、ソニー、
IBM、
東芝によって開発された64ビットRISCマイクロプロセッサです。このプロセッサは、家庭用ゲーム機である
PlayStation 3(PS3)のために開発され、大容量データを高効率で処理することを目的としており、データ並列処理を実現するために独自の
アーキテクチャを採用しています。Cellは、汎用コアとデータ処理コアのハイブリッド構成を持ち、
GPGPU(General-Purpose computing on Graphics Processing Units)という概念がまだ普及していない時代に新たな技術を提供しました。
Cellは、2003年から
2006年度にかけてソニーによって約5000億円が投資され、ゲーム機だけでなく
サーバーやデジタル家電といった多様な用途でも用いられることを想定されました。これは、PS3から始まった技術ですが、
IBM BladeCenter QS21のような
サーバーや、
東芝のCELL REGZAといった薄型テレビ、さらには映像制作機器にも採用されました。特に、米エネルギー省が保有する
スーパーコンピュータのRoadrunnerはCell
アーキテクチャを使用しており、TOP500やGreen500ランキングでもその性能が評価されています。
Cellは年々改良が進められ、製造プロセスは90nmから65nm、さらには45nmと微細化されていきました。しかし、ソフトウェア開発の難しさから、
PlayStation 4ではCellは採用されず、AMDのJaguarコアが選ばれました。Cellの独自
アーキテクチャは広く普及しなかったものの、ヘテロジニアス
マルチコア構造は、後のAPUなどで一般的な設計となりました。
特徴
Cellは
マルチコアプロセッサであり、1つのチップに9つのコアを搭載しています。これには、汎用プロセッサコアであるPowerPC Processor Element(PPE)と、シンプルな計算を担当する8つのSynergistic Processor Element(SPE)が含まれています。PPEは制御機能を担っており、SPEは演算に特化しています。これにより、Cellは高度に
並列化された作業を効率良く処理できます。
特筆すべきは、Cellの
アーキテクチャが命令のスケジューリング機構を持たず、シンプルな設計で高
クロックを実現している点です。そのため、整数演算能力ではパソコン向け
CPUに比べて劣るものの、
数値解析やシミュレーション、
動画・画像処理などには強力な性能を発揮します。また、仮想マシン支援機能により、複数のOSを干渉させずに実行することができます。
Cellの
アーキテクチャは、PPEとSPEから構成されており、PPEは64ビットPower
アーキテクチャを採用しています。内部構造は新設計であり、2スレッドを交互に実行できる設計となっています。一方、SPEはSIMD系
アーキテクチャで、単精度および倍精度の浮動小数点演算が可能です。SPEはローカルストアという専用のSRAMメモリを持ち、これによりキャッシュコヒーレンシの必要がなくなり、高速化を実現しました。
また、Cellのセキュリティ機能としてアイソレーションモードがあります。これは、特定の機密情報を扱う際に他のプロセスからのアクセスを遮断することにより、情報漏洩を防ぐ機能です。
プログラミングと発展
CellのSPEは、独立したメモリ空間を持ち、ハードウェア的な分岐予測を行わないため、効果的に利用するには独自のプログラミングモデルが必要です。開発者はジョブ・キューや自己マルチタスクなどのモデルを提案し、SPEの特性を活かすプログラミングが求められます。リアルタイムでのグリッドコンピューティングもCellの特長であり、家庭内ネットワークでの活用が期待されていましたが、実現には至りませんでした。Cellの設計は、後のコンピュータ
アーキテクチャにおける方向性にも影響を与えました。
結論
Cell Broadband Engineは、登場当初はその革新的な
アーキテクチャと機能により業界に大きな影響を与えました。その後、
マルチコア処理へのシフトが進む中でも、Cellの技術は多くの製品に応用され、今もなおその影響が色濃く残っています。今後の
CPUおよびGPUの進化においても、Cellの開発理念が新たな発展に繋がる可能性があります。