米ベンチャーのTileraは、ISSCC 2008にて同社のタイルプロセッサ「TILE64」の詳細を発表した。TILE64の発表は昨年のHotChipsに続いて2回目となる(講演番号4.4:TILE64 Processor: A 64-Core SoC with Mesh Interconnect)。

タイルプロセッサは最近のCPUアーキテクチャ開発の流れの中で新しい視点をもたらしている。コアを沢山実装しているが、その本質はデータフローモデルをベースにしたメッシュネットワーク上のコア間コミュニケーションにあり、この点でマルチコアとは異なるコンセプトのアーキテクチャだ。米国を中心に研究が進められ、MITの「RAWプロセッサ」、テキサス大学の「TRIPS」などが挙げられる。昨年のISSCCでIntelが80タイルプロセッサを発表、その後「Larrabee」というコードネームが与えられて開発が進んでいるようである。TileraはMITの研究を発祥にしており、この度ISSCCでは完成したチップの評価が発表された。合わせて既に製品を搭載したボードの出荷が開始されているという。そんな初の商用化タイルプロセッサの概要を見てみよう。

TILE64は、小さなCPUコアが8×8のアレイ状に並べられて、合計64個のタイルを構成している。TSMC 90nm Triple-Vt CMOSプロセスで製造され、6億1500万個のトランジスタを集積、9層銅配線という本格的なチップだ。1つのコアは、命令語長64bitの3-wide VLIWで、32bitの仮想メモリ空間を持ち、TLBで36bit物理アドレスに変換される。パイプラインは5 stageのin-order実行。8KBのL1命令キャッシュメモリとデータキャッシュメモリを持つ。その上に、64KBのユニファイド2-way L2キャッシュメモリを持つ。このL2キャッシュメモリはタイル間で共有でき、最大で4MBのL3キャッシュメモリを構成できる。

一つのコアは、プロセッサ部と、キャッシュ部、そしてスイッチ部に別れている。コア内バスとして5つのメッシュネットワークが用意されており、各コアに5つのスイッチが内蔵されている。そのうち2つはメモリコミュニケーション、3つはレジスタマップコミュニケーションに使われる。合計で双方向240GB/sのバンド幅を持つ。コア間では「データフロー型のコミュニケーションを行っている」(Bruce Edwards:Senior Member of Technical Staff)と説明されている。このコアは、同社が開発したオリジナルの命令セットアーキテクチャに準拠した新しいコアだという。ベースとしてはMIPSアーキテクチャに近いとのこと。一つのコアだけで、SMP Linuxが動作することが確認されている。この点はテキサス大学のTRIPSとは実装が異なるといい、TRIPSでは一つのコア上で一つのOSは動作しないはずだという。チップにはDDR2メモリコントローラが搭載され、バンド幅は25GB/s。72bit、800MHzのDDR2インタフェースを持つ。

ルネサス テクノロジの8コアチップと比較

64コアを並列化したTILE64チップを、ISSCC 2008でルネサス テクノロジ、日立製作所、早稲田大学のグループから発表されたSuperHコアを8つ集積したSoCと比較してみよう。

プロセッサ TILE64 ルネサス8コア
製造プロセス 90nm 90nm
コア数 64 8
動作周波数 750MHz 600MHz
動作電圧 1.0V 1.0V
MIPS 144000 9600
消費電力 10.8W 2.8W
MIPS/W 13333MIPS/W 3428MIPS/W
※MIPS値は理論値

理論的な処理能力を比較する限り、TILE64はかなり高い電力効率を示すことが分かる。実際に様々な処理を行わせたとき、「双方の得意不得意が示されていくはず」と、ルネサスの伊藤雅之氏(システムコア技術統括部CPU開発第一部先端プロセッサコア開発グループ主任技師)は述べる。また、TileraのBruce Edwards氏は次のように語る。「我々はこのプロセッサを通信アプリケーションやセキュリティソリューション向けに提供したいと考えている。そこでは顧客に応じて様々な処理に対応する必要があり、ストリーム形のDSPよりも柔軟に、かつ十分な価格性能比を以って対応できると考えている。」TILE64は、Linuxが動作するなど、DSPに比べると格段の柔軟性を持つ。かつデータ処理は高い並列性を活かして効率よく行うことができる。この特徴を活かせる分野に製品をアピールしていきたい考えだ。

一方、ルネサス テクノロジの伊藤雅之氏は今後の展開を次のように語る。「タイルプロセッサは近年のブームという印象もあり、我々も研究はしているが、実益をしっかりと見極めて行きたいと考えている。我々は昨年の4コアに続いて8コア版を開発したが、今後更なるマルチコア化を進めていくというよりは、グラフィックスや音声処理などの専用の処理エンジンを同載したヘテロジニアスなSoCの開発に向かう予定だ。そのほうが携帯電話などの利用シーンを想定すると、電力効率が高くなるはず。」と述べる。また、IntelのSilverthorneについては、「シングルコアながら、16段のパイプラインで2GHzという高いパフォーマンスは注目される。同じ能力を3コアで出すか、1コアで出すか、という時に、プログラマから見ると1コアで性能が出たほうが開発が簡単。シングルコアの性能向上も大切だ。」と述べる。

TILE64とルネサステクノロジの8コアSoC、そしてIntelのSilverthorne。それぞれ得意とする分野が異なるので、乱暴な比較は無用だが、それぞれ特徴が見えて興味深い。TILE64プロセッサに話を戻すと、OSが走るというCPUの機能を持ちながら、DSPのように高いデータ処理能力を持つ。ストリーム型のDSPやGPUに対して、どのように利点を示していくか、今後の発展が興味深いところだ。