PowerPC Processor Element
編集
PowerPC Processor Elementのブロックダイアグラム
PPE は64ビットPowerアーキテクチャであり、命令セットはPowerPC G5 (つまりPowerPC 970[3])互換ではあるが、既存のPowerPC系CPUとは異なる内部構造をもつ新設計のコアである。2スレッドを交代に実行することが可能で、スレッドの切り換えが速い事から、OSの駆動などを受け持つ。また、AltiVecにも対応している。
PowerPC Architecture, Book I〜III に準拠することが求められ、中にはBook I〜IIIでのオプション仕様がPPEでは必須になっているものがある。VMXもその一つ。
PPEの浮動小数点演算性能はIBMの示した布シミュレーションの例では、2.4 GHz駆動のPPEでPentium 4 3.6GHz相当CPUの20%程度のパフォーマンスしか出ておらず、浮動小数点演算は得意ではないと言え、通常はSPEなどへのリソースマネージメントを行うことになる[4]。
Cellの仕様を満たすためには最低1つは搭載することが求められる。
Synergistic Processor Element
編集
Synergistic Processor Elementのブロックダイアグラム
SPE は SIMD系のアーキテクチャで、単精度浮動小数点演算を4スロット同時に処理することができ、倍精度浮動小数点演算を2スロット同時に演算できる。また整数も16ビット値を8スロット、32ビット値を4スロットの演算ができる。以上のようなベクトル演算が可能な128ビット長128個のレジスタを持ち、ソフトウェアパイプライニングなど処理の最適化を可能とする。また、キャッシュメモリは持たず代わりに256KiBのローカルストア (LS) と呼ばれるSRAM専用メモリを持っており、そこにプログラムとデータを格納して実行する。SPEはメインメモリ上のプログラムとデータを直接扱えず、DMAを用いてXDR DRAMメモリとLS間の転送を行う必要がある。LSはメインメモリから独立したメモリ空間を持つため、キャッシュコヒーレンシ保持の仕組みが不要で高速化に貢献している。例えるなら常にL1キャッシュに当たっている状態である。SPEはMemory Flow Controller (MFC) と呼ばれる制御ユニットに専用のDMAコントローラを持ち、これによりSPEは多量のデータを高速に処理するストリーム処理を可能とする。IBMの示した物理挙動シミュレーションとレンダリングの例では、3.2GHzのPentium 4と比較し、2.1GHz駆動のSPE1基で1.5倍、8基で12倍の性能差を記録した[4]。IBMの示したシミュレーションをPentium 4 3.6GHzクラスのCPUで実装した場合との比較では3基のSPEでPentium 4 3.6GHzクラスCPUの2倍のパフォーマンスを記録した[4]。命令長は32ビット固定である。
1基あたり3.2GHz駆動で25.6GFLOPSの演算性能がある[5]。
Cellの仕様を満たすためには最低1つは搭載することが求められる。
セキュリティ強化のため、SPEはアイソレーションモードと呼ばれる特殊な動作モードを備えている[6]。これは、暗号化・復号処理やCSSやAACSなどのデジタル著作権管理システムでの利用が想定されている。
アイソレーションモードで動作するSPEのLS領域は他のSPE/PPEからのアクセスが遮断され、外部からの読み書きは一切できない。アイソレーションモードで暗号に用いる秘密鍵などの機密情報を扱うことで、他のプロセスからそれらを盗み取ることを不可能にする。
SPEはアイソレーションモード用の移行・離脱命令を実行することでそのモードに遷移する。一旦SPEがアイソレーションモードに入ると、外部から可能な操作はそのSPEで動作するプロセスの停止のみである。離脱命令および外部からのプロセス停止が実行されると、SPEのコンテキストおよびそのLSに置かれたプログラムやデータは速やかに消去されるため、機密情報が外部に漏洩することは無い。また、アイソレーションモードで実行されるプログラムコードは、それが本来のものと改変されていないか検証してから実行されるため、第三者による有害なコードを実行する危険性を排除している。
プロセス間の干渉を防ぐ機構として多くのプロセッサではCPUモードを備えているが、スーパーユーザーなどの元々高い権限を持つユーザが有害なプロセスを特権モードで動作させた場合にはこれを防止できない。アイソレーションモードはこのような場合でも機密情報を守ることが可能である。
プロセッサコア以外に、Rambus社からライセンス供与を受けた帯域幅25.6GB/sの新メモリXDR DRAMのメモリコントローラと、チップ間接続のための新インタフェースFlexIOも搭載する。FlexIOの帯域幅は最大76.8GB/sとなる。Cell内のコアとこれらのインタフェース群はやはり広帯域のリング状内部バスElement Interconnect Bus (EIB)と呼ばれるもので接続される。
Internal Interrupt Controller の事であり、Cell内部で割り込み処理を担っている。外部からの割り込み信号の対応や内部のPPEやSPEから発せられた割り込みを外部に伝えたりしている。
Element Interconnect Bus の事であり、Cell内部のメインバスとして各部を接続している。現在の実装(PPE×1+SPE×8)ではリングバス構造をしている。
コア個数など仕様によって最適な実装が大きく異なるのでCell仕様の範囲外とされている。EIBとしての役目が果たせるならば実装上の制限は無い。
2005年現在はコアが9個︵PPE×1+SPE×8︶搭載されているが、これはCell Broadband Engine アーキテクチャと呼ばれる規格化された拡張可能なアーキテクチャの一実装形態であり、これを1PEとした4PE︵PPE×4+SPE×32︶など多様な構成を取り得る[7]。
Cell Broadband Engineアーキテクチャ仕様書ではPPEとSPEがそれぞれ一つ以上が含まれる事を要求している。さらにIIC、EIBがそれぞれ一つ含まれる事を要求している[8]。
東芝が2007年9月に発表した[9]Cellベースのメディアプロセッサ﹁SpursEngine﹂は、SPEを4個とMPEG-2、H.264のエンコード・デコード回路を搭載し、動作周波数もCellより低い1.5GHz駆動(10W台)という構成である。
CPUのニーモニックによってビット長呼称が違っているが、Cellの場合は以下の通りになっている。
ビット長 |
名称
|
128 |
クワッドワード
|
64 |
ダブルワード
|
32 |
ワード
|
16 |
ハーフワード
|
8 |
バイト
|
CellのSPEは通常のマルチプロセッサと異なり各SPEが独立したメモリ空間を持ち、また分岐予測などのハードウェア機構を持たないため、その性能を十分に引き出すにはそれに合わせたプログラミングモデルを採用する必要がある。Cellの開発者たちは次のようなモデルを提案している[10]。
PPEがシステムメモリ上のジョブ・キューを管理し、複数のSPEにジョブを割り当てて管理する。ジョブ・キューからジョブをDMAコントローラを介してローカルストアに読み込む mini kernel が各SPE上で走り、ジョブを実行した結果をシステムメモリに返し、PPEと同期を取る。
各SPEにkernelを持ち、共有メモリのタスク・キューを使い、分散してスケジュールが行なわれる。タスクの同期は、ミューテックスまたはセマフォにより実現される。
各SPEは、input stream からの入力データに対してカーネル関数を実行し、その結果をoutput stream に送る。これは、シリアルまたは並列パイプラインを容易に実現する。このモデルは、データができるだけ長くローカルストアに存在するので効率がよい[11]。
最適化は、Synergistic Processing Unit (SPU) のインストラクションレベル、自動SIMD化、共有メモリモデルの自動並列化の3レベルがある。SPUのインストラクションレベルでは、ハードウエアで分岐予測を持たないので、分岐ヒント命令を少なくとも分岐の11サイクル前に自動的にスケジュールする。共有メモリモデルの自動並列化は、OpenMPで記述された1つのソースからPPEとSPEに自動分割する。SPEにおいては、コードは自動分割され、規則的なデータは共有メモリとローカルストア間のDMA命令に自動生成され、不規則なデータはソフトウエアキャシュにより処理される。ソフトウエアキャッシュ︵4 way set 連想メモリ︶は、SIMD命令で実行される。
Cellコンピューティングとは久夛良木健によれば以下の2つが要点となる[12]。
●従来のネットワークは情報のネットワークだったが、それがピア・ツー・ピアコンピューティングのバスになる。
●従来のバッチで非リアルタイムのグリッド・コンピューティングから、リアルタイムでのグリッドコンピューティングへ。
Cellではこのリアルタイムな処理分散を実現する前提の設計がなされている。SPEが独自にSPE用メインメモリーであるとも言えるローカルストアを持っている理由の一つには、この一環もある。
PS3発売当初のSCEは、PS3を核とした複数の機器による家庭内ネットワークでのCellコンピューティングを提唱していた[12]。しかし、久夛良木がSCE社長を退いて平井一夫体制になって以降は、Cellコンピューティングについて触れられることはほとんど無くなった。現状ではCellコンピューティングが行える環境は整備されておらず、実現できる見通しも立っていない。PlayStation 4ではCell Broadband Engineではなく他社製のチップをCPUに採用したため、Cellコンピューティング構想は事実上放棄された形となっている。
多数のコアを備えることにより処理能力の向上を実現したCell Broadband Engineの登場は衝撃的であった[13]。当時のPS3に搭載されたCell Broadband Engineのチップ全体のスループットは、当時の汎用PC向けCPUの10倍程度に達した[13]。その影響は大きく、IntelやAMDなどCPUベンダーは勿論、GPUベンダーまでもコアを肥大化させてシングルスレッド性能を追求する方向から、マルチコア化によってチップ全体での処理能力を追求する方向に転じた[13]。GPUコアをCell B.E.のように汎用処理にも使用するというアイデアを展開していった[13]。
長崎セミコンダクターマニュファクチャリング株式会社︵NSM︶は、2008年3月3日に設立した、東芝、ソニー、SCEの合弁会社。Cell Broadband Engine、RSX、東芝とソニーのデジタルコンシューマー機器等向けシステム・オン・チップ︵SoC︶を生産する[44][45]。
製造設備は、東芝が2008年4月[46]にソニーとソニーセミコンダクタ九州株式会社︵SCK︶から約900億円で購入[47]
[48]したSCK長崎テクノロジーセンター Fab2の下層[49]の300mmウェハーラインが東芝から貸与されている。資本金は1億円で、出資比率は東芝 60%、ソニー 20% 、SCE 20%[44][45]。
東芝とソニーは2010年12月24日のニュースリリースで、東芝が所有しNSMが操業する、SCK長崎テクノロジーセンターの300mmウェーハラインをソニーに譲渡する旨の基本合意書を締結したこと、法的拘束力を有する正式契約は2010年度内早期の締結を目指すこと、東芝、ソニー、SCEの三社によるNSMの合弁関係は譲渡に伴い解消されることを発表した[44][45]。ソニーは2010年12月27日のプレスリリースで、CMOSイメージセンサーの生産能力を倍増するために、東芝からSCK長崎テクノロジーセンターの300mmウェーハラインを取得し、設備の一部をCMOSイメージセンサーの製造ができるように整備すること等を発表した[50]。日本経済新聞では、東芝は世界2位のシェアであるNAND型メモリに経営資源を集中するため、不採算のシステムLSI事業では、巨額の設備投資が必要な先端品のシステムLSIについて、2011年度からは設計だけを行い、生産はサムスン電子に委託、収益改善につなげるため長崎工場はソニーに売却すると報じた[51]。
(一)^ 齊藤 智隆 (2006年6月). “Cellと共に歩む” (PDF). 株式会社東芝. 2009年11月9日閲覧。
(二)^ CEVOはCell Evolutionの意。ただし、命令セットはPowerPCアーキテクチャベースではなく、ARMアーキテクチャベース。
(三)^ “PowerPC G5(970)”. 2020年10月23日閲覧。
(四)^ abc西川善司の3DゲームファンのためのPS3パフォーマンス考察講座, GameWatch, 2006年3月31日
(五)^ IBM (2005年11月29日). “Cell Broadband Engine Architecture and its first implementation” (英語). 2012年1月13日閲覧。
(六)^ K. Shimizu et al (2007). “Cell Broadband Engine processor vault security architecture”. IBM Journal of Research and Development 51(5): 521-528. doi:10.1147/rd.515.0521.
(七)^ 後藤弘茂のWeekly海外ニュース - SCEIのPlayStation 3の心臓﹁Cell﹂の正体 -, PC Watch 2003年5月29日
(八)^ Cell Broadband Engine技術資料公開
(九)^ ab新プロセッサ﹁SpursEngine™﹂の開発サンプルをCEATEC JAPANで初公開, 株式会社 東芝, 2007年9月20日
(十)^ Kahle, J. A; M. N. Day, H. P. Hofstee, C. R. Johns, T. R. Maeurer, and D. Shippy (2005). “Introduction to the Cell multiprocessor”. IBM Journal of Research and Development 49(4): 589-604. doi:10.1147/rd.494.0589. http://researchweb.watson.ibm.com/journal/rd/494/kahle.html 2007年10月19日閲覧。.
(11)^ メインメモリに比べ、ローカルストアは高速アクセス可能なため
(12)^ ab後藤弘茂 (2003年9月9日). “後藤弘茂のWeekly海外ニュース‥PlayStation 3の次は家庭内Cellコンピューティング”. PC Watch. 2012年7月5日閲覧。
(13)^ abcdPlayStation 4のGPUコンピュート機能 後藤弘茂のWeekly海外ニュース
(14)^ Transmetaプレスリリース︵英語︶‥Accelerates LongRun2 Adoption for Cell Derivatives; Builds Technology Collaboration in Other Areas
(15)^ ソニー、CellにTransmetaの省電力技術﹁LongRun2﹂搭載, PC Watch 2005年4月1日
(16)^ なお、PS3では7SPEのうち1SPEはOSが占有するため、アプリケーションが使用可能なのは実質6SPEとなる。
(17)^ IBM、ロスアラモス国立研究所のペタフロップスパコン計画を落札--情報筋が明らかに, CNET Japan, 2006年9月6日
(18)^ “Beyond a Single Cell”. Los Alamos National Laboratory. 2006年10月25日閲覧。
(19)^ PLAYSTATION 3ハードウェアレポート︻速報編︼, PC Watch, 2006年11月11日
(20)^ ﹁フルHD時代に向け原点に立ち戻った﹂--東芝、Cellベースの新プロセッサを公開
(21)^ 日本IBM. “IBM 高性能プロセッサー﹁Cell/B.E.﹂搭載のブレードサーバ新製品”. 2007年10月20日閲覧。
(22)^ ソニー、Cell生産設備売却で東芝と合意
(23)^ 新型PS3ハードウェアレポート 〜大幅に縮小された冷却機構, PC Watch, 2007年11月12日
(24)^ ISSCCに次世代Cell B.E. 45nm版が登場 〜6GHz動作、電力を30%以上削減, PC Watch 後藤弘茂のWeekly海外ニュース, 2008年2月6日
(25)^ フィックスターズ、最新型Cell/B.E.を搭載したアクセラレータボードを発売 プレスリリース 2008年4月3日
(26)^ 東芝、Cellテレビや“超解像”テレビ/DVDなど計画, AV watch, 2008年5月8日
(27)^ IBM、Cellベースのブレード・サーバ﹁BladeCenter QS22﹂を発表 Computerworld News ︵2008年05月14日︶
(28)^ IBM みずほ証券へCell/B.E.搭載ブレードサーバーを納入 IBMプレスリリース 2008年5月27日
(29)^ フィックスターズ、みずほ証券のデリバティブシステムをCell/B.E.で高速化に成功 プレスリリース 2008年5月27日
(30)^ 米エネルギー省、IBMのスパコン﹁Roadrunner﹂が1PFLOPSを達成と発表
(31)^ 東芝、SpursEngine搭載/超解像度変換AVノート﹁Qosmio﹂, AV watch, 2008年6月23日
(32)^ CRI・ミドルウェア、東芝SpursEngine™向けミドルウェアに参入, CRI・ミドルウェア プレスリリース, 2008年7月18日
(33)^ ﹁SpursEngine﹂のハード/ソフト開発環境が明らかに, HD Processing FORUM, 2008年8月6日
(34)^ 米国市場に向けてCell/B.E.およびRSX®搭載“ZEGO(ゼゴ)”コンピューティングユニット年内発売, Sony プレスリリース, 2008年8月13日
(35)^ CRI・ミドルウェア‥﹁CRI SpursCoder﹂ダウンロード, CRI・ミドルウェア, 2008年11月26日
(36)^ 三菱総合研究所、動産担保融資における在庫データのモニタリングにCell/B.E.を活用 プレスリリース 2008年12月8日
(37)^ フィックスターズ、Cell活用のH.264リアルタイムソフトウェアエンコーダ マイコミジャーナル 2009年2月24日
(38)^ 北部九州の研究者はCell/B.E.を無償で活用 ITmedia エンタープライズニュース 2009年5月22日
(39)^ 北九州産業学術推進機構、高性能プロセッサ﹁Cell/B.E.﹂を用いたシステム基盤を研究者に開放 エンタープライズ RBB TODAY 2009年5月22日
(40)^ SCEJ、﹁プレイステーション﹂戦略発表会で新型PS3発表 ﹁機動戦士ガンダム戦記﹂同梱BOXは38,359円で同時発売, GAME Watch, 2009年8月19日
(41)^ 世界初﹁Cell Broadband EngineTM﹂搭載 高画質液晶テレビ﹁CELLレグザ 55X1﹂の発売について ニュースリリース 2009年10月5日
(42)^ Air Force To Expand PlayStation-Based Supercomputer InfomationWeek 2009年11月20日
(43)^ 3D放送を高精細に映す3D超解像技術を採用した液晶テレビ﹁CELLレグザ﹂の発売について ニュースリリース 2010年7月28日
(44)^ abc東芝及びソニーによる半導体製造設備の譲渡に関する基本合意書の締結について, 東芝ニュースリリース, 2010年12月24日
(45)^ abc東芝及びソニーによる半導体製造設備の譲渡に関する基本合意書の締結について, ソニーニュースリリース, 2010年12月24日
(46)^ ﹁東芝、半導体改革メド 大分は画像センサー中心 設計・生産、分業時代に﹂﹃日本経済新聞﹄2010年12月24日付日刊、第13版、第9面。
(47)^ 高性能半導体の生産合弁会社の概要について, 東芝ニュースリリース, 2008年2月20日
(48)^ 高性能半導体の生産合弁会社の概要について, ソニーニュースリリース, 2008年2月20日
(49)^ ソニーの裏面照射型CMOSセンサー工場を訪ねる, デジカメWatch, 2010年3月4日
(50)^ ソニー、イメージセンサーの生産能力を倍増, ソニーニュースリリース, 2010年12月27日
(51)^ ﹁東芝、サムスンと提携 先端LSI生産委託 投資競争から撤退 メモリー事業に集中﹂﹃日本経済新聞﹄2010年12月24日付日刊、第13版、第1面。
- アーキテクチャ、ニーモニック、SPE向けの言語拡張などCellに関する基本情報を網羅している。
- 2005年のGame Developers ConferenceでSony Computer Entertainment US Research and Developmentが発表したスライド。
- 製造プロセスや、音声認識エンジンでの性能評価やプログラミングモデルなどの応用に関するジャーナル。
- Cellの開発で中心的役割を担ったIBMのPeter Hofsteeらによるチュートリアルスライド。
- Cellの概要のほか、開発用リファレンスキット、家電向けのI/Oインタフェースを提供するSuperCompanionChip、ハイパーバイザー、ソフトウェア開発環境、画像処理における性能評価などの技術報告。