MERCURY COMPUTER SYSTEMSブース~デュアルCellプロセッサシステムとPS3向け低価格SDK

Cellベースの製品開発に積極的なMERCURY COMPUTER SYSTEMSは昨年、SIGGRAPH 2006で発表したPCI Express x16バス接続のCellプロセッサ搭載アクセラレータボードに引き続き、今年もCell関連製品を多数発表、展示していた。この中から興味深い製品を2つピックアップして紹介しよう。

MERCURY COMPUTER SYSTEMSブース

1つはプレイステーション3(PS3)に対応した開発キット(SDK:Software Development Kit)「MultiCore Plus SDK」だ。

PS3はLinuxを標準で走らせることができるが、MultiCore Plus SDKはこのシステムを活用する開発キットだ。

最初に言っておくと、ゲーム開発向けのSDKではなく、むしろPS3をCellプロセッサベースのワークステーションとして活用させることをコンセプトとしており、PS3のグラフィックスプロセッサであるRSXを活用するドライバは提供されない。基本的にはマルチコアCPUのプログラミング……もっといえば1PPE+8(7)SPEで構成される非対称マルチコアCPUとしてのCellプロセッサの、プログラミング実験環境的な意味合いの製品といってもよいかもしれない。

ランタイムには、Cellプロセッサ上で動作するマルチスレッド対応のフレームワークが実装されており、つまり、キューに積まれたジョブを複数のSPEで処理していくメカニズム(MCF:MultiCore Framework)が提供されることになる。

MultiCore Plus SDKのソフトウェアスタック図

MCFの動作概念図。PPEでジョブのマネージをしてSPEで実際のコンピューティングを行うという方式。Cellプロセッサの活用形態としては一般的な形態だ

この他、FFTをはじめとした信号解析に最適な基本数学関数を600個以上内蔵したライブラリ「SAL(Scientific Algorithm Library)」、画像処理に最適な関数を300個以上内蔵したライブラリ「PixL」(Image Processing Algtorithm Library)なども提供される。SPEの動作状況を視認でき、デバグや最適化に便利なビジュアルトレーサ「TATL」(Trace Analysis Tool and Library)までも付属し、開発環境としてはかなり強力そうな印象がある。なお、価格はUS$399(約48000円)と、この手のソフトウェアとしてはずいぶんと安価に設定されている。

ビジュアルトレーサ「TATL」(Trace Analysis Tool and Library)

ブースではMultiCore Plus SDKを活用して制作したサンプルプログラムをリアルタイム実行させるデモを公開

デモではUSB接続されたWEBカメラの映像をリアルタイムに画像処理や変形処理を行って表示させる基本的なもの