PLAYSTATION3の並列化システムの構築及び性能評価
日大生産工(学部) ○峯 和也 日大生産工(院) 前田 泰幸 日大生産工 角田 和彦
1.はじめに
近年、CPUのクロック周波数の限界が近いと 言われているなか、処理性能をさらに向上さ せるため1つのCPUに複数のプロセッサが搭載 されたマルチコアCPUが次々と開発され、今や 主流となってきている
[1]。
2006年末に日本を皮切りに発売された PLAYSTATION3(以下PS3)にも、マルチコアCPU のひとつである"Cell"が搭載されている
[2]。 Cellの処理能力は内部のコアが協調するこ とで最大218GFLOPS(浮動小数点演算能力)に 達すると言われており、海外ではLinuxをイン ストールして並列処理をさせる研究室やPS3 を利用した並列プログラミングの授業を開講 する大学が出るなど、注目を浴びている
[2]。 本論文では、PS3にLinuxをインストールし
[3],[4]
、ベオウルフ型PCクラスタを構築し
[5],[6]
、MPI(Message Passing Interface)
[7]を利用して並列化を行い、ベンチマークでPC とPS3の性能を比較検討することを目的とし ている。
2.PLAYSTATION3
PLAYSTATION3 は、ソニー・コンピュータエ ンタテインメントから 2006 年 11 月 11 日に日 本をはじめとして発売されたコンシューマー ゲーム機である。Blu-ray Disc ドライブ,Cell プロセッサ, HDMI 出力端子などを搭載するこ とで高品質な音楽や映像,高速なゲーム処理 機能を実現している。
3.Cell Broadband Engine
Cellとはソニー,ソニー・コンピュータエン タテインメント,IBM,東芝によって共同開発 されたマイクロプロセッサである。
1つのCPUの中に、1個の汎用的なプロセッサ コア(PPE)と8個のシンプルなプロセッサコア (SPE)の計9個を搭載したヘテロジニアスマル チコアCPUであり、PS3をはじめ今後高品位テ レビやスーパーコンピュータなどに搭載され ることが想定されている
[8]。
3-1.PPE
PPE(Power Processor Element)とはPowerPC 互換のプロセッサコアの事であり、Cellプロ セッサの中に1つ存在している。
64ビットPowerPCアーキテクチャと同等の 機能を果たす他、メインメモリや外部デバイ スへの入出力制御など複雑な処理を担当する 制御系プロセッサである
[2]。
3-2.SPE
SPE(Synergistic Processor Element)とは SIMD(Single Instruction Multiple Data)演 算に特化したプロセッサコアの事であり、
Cellプロセッサの中に8つ存在している。
PPEのような複雑なプログラム制御はでき ないが、単純な計算を繰り返すようなマルチ メディア系の処理が得意である
[2]。
PS3に搭載されているCell内ではPPEがSPE やプログラムなどを制御、SPEが演算を素早く 行うことで全体として莫大な計算処理能力を 得ている。
4.姫野ベンチマーク
姫野ベンチマークとは情報基盤センター・
センター長の姫野龍太郎氏が考案したもの で、ポアッソン方程式解法をヤコビの反復法 で解く場合に主要なループの処理速度を計る ベンチマークソフトである
[9]。
Construction of parallelization system for PLAYSTATION3 and its performance evaluation
Kazuya MINE , Yasuyuki MAEDA , Kazuhiko KAKUDA
5.PS3クラスタの構築と性能評価
今回構築したPS3クラスタの写真を図1に、
並列システム構成を図2に示す。
図1.PS3を4台使用したPS3クラスタ
PS3-1 PS3-2 PS3-3 PS3-4
Local Area Network Local HUB
IP address Global
IP address
Floppy router 数理センター
PC PC
図2.並列システム構成図
5-1.PS3とPCの仕様
性能の比較としてPS3とPCの仕様を表1に示 す。
表1.PCとPS3との仕様比較 PS3 PC CPU Cellプロセッサ
(3.2GHz)
Intel Celeron (1.7GHz) メモリ XDR RAM256MB DDR SDRAM1GB OS Fedora7 Fedora8
5-2.性能評価
姫野ベンチマークを使用して計測したPCと PS3の性能(MFLOPS)比較結果を図3に示す。
図3を見ると、本来高速な処理能力が望める はずのCellが、いづれの行列サイズ,ノード数 でもCeleronに劣る結果となっている。
これは、PS3がLinuxをPPE上で仮想的に実行 しているために起こる現象であると考えられ る
[7]。Cellが性能を発揮するには、SPEが単 純演算を,PPEが複雑処理をそれぞれ受け持 ち、協調して演算処理を行えるようにしなけ ればならない。
また、PS3(M)の場合極端に性能が低いよう に見えるが、こちらはメモリ不足により行列 がメモリに収まり切らず、HDDのSWAP領域を使 用したためと思われる。
0 50 100 150 200 250 300 350 400
1 2 3 4
MFLOPS
ノード数
PS3(M) PS3(S) PC(M) PC(S)