この50GFlops/Wという目標は、現状から2桁の改善であるが、半導体の微細化だけでは1桁の改善ができるかどうかで、設計で1桁以上の改善が必要になると考えられる。携帯電話のようにスリープ時間が大部分のシステムなら大部分の動作を止める節電設計も可能であるが、ビジー状態が続くスパコンでは、この手は使えない。また、現在の汎用プロセサでもすでに省電力設計は徹底されており、乾いたタオルを絞ってさらに1桁の改善を行うには非常に革新的なアプローチが必須と思われる。
また、モジュール外へのメモリバンド幅が1TB/s以上というのは、5~10TFlopsの計算ノードに対しては妥当なバンド幅であるが、4GBのリンクを使っても250本必要とし、実現は容易ではない。
そして、このシステムは1ラック分とは言え、多数の計算ノードを含むことになると考えられるが、設計ターゲットとしてグローバル共有アドレス空間(Globally Shared Address Space)が挙げられていることが興味深い。
Roadrunnerや、Jaguar、BlueGeneと言った現在のTop500の上位に位置するシステムは分散メモリシステムで、他の計算ノードのメモリには直接アクセスできず、MPI(Message Passing Interface)などを使ってメッセージ通信でノード間のデータ転送を行っているが、単純なロードストア命令で全部のデータをアクセスできる共通メモリ空間の方がアプリケーションは作りやすいという判断であろう。しかし、このような超並列で、インタコネクト経由で共通メモリを実現し、しかも性能を出すというのは現状の技術の延長では非常に困難で、ここでも革新的なアプローチが必要となると思われる。
2チーム体制により5つのフェーズで開発
UHPCプロジェクトの開発体制案では、Technical Area-1(TA1)とTechnical Area-2(TA2)のチームを作る。TA1は実際にシステムを開発するチームで、こちらは複数のチームが競合する形でスタートする。一方、TA2は、TA1チームの設計に対する評価尺度を作り、提出された設計を評価するチームであり、こちらは1チームである。
そして、開発チームには半導体に始まるハードウェアの設計から、OS、コンパイラ、アプリケーションの開発と幅広いスキルが必要とされることから、企業や大学などを含めて、革新的な開発の全分野をカバーできるチームを作ることが求められている。
そして、提案されている開発スケジュールは以下の5つのフェーズに分かれている。
- Phase-1(1年間):実行モデルやシステム概念を作り、解析的手法で、目標が達成できることを示す
- Phase-2((1年間):実行モデルやシステムアーキテクチャの検討を深め、重要部分についてはシミュレータやエミュレータを開発し、それを用いて評価を行い、目標達成が可能な提案であることを示す
- Phase-3(2年間):Phase-3ではプレリミナリではあるが、一応、システム全体の設計を完了し、重要部分については試作を行い実現可能であることを示す。また、フルシステムのハード、ソフトが動作することをデモすることが求められており、 開発したシミュレータやエミュレータを用いてフルシステムの動作を示す必要がある。
そして、このPhase-3の終了時点の評価で、TA1のチーム数が絞り込まれ、最終的に試作システムを開発するPhase-4/5が開始されることになる。Phase-4/5は、全体で4年~5年が予定されており、設計を行い、試作機を作って納入するところまでがPhase-4であり、その試作システムを使ってアプリケーションを動かして評価を行ったり、プログラム作成の容易性や信頼性、安全性などのゴールの達成の確認を行うのがPhase-5となる。
このようにUHPCは、Ubiquitousという形容詞がついているように、計算センターのスパコンというよりも、広く前線に展開する兵器にもテラ~ペタ級の演算性能をもつコンピュータを展開し、飛躍的にインテリジェンスを改善しようという目論見である。そして、このプロジェクトが成功すれば、兵器だけでなく、汎用コンピュータの発展にも大きく貢献する。特に、水冷の超大型スパコンでなく、空冷の超低電力消費のシステムという点では、携帯デバイスからパソコンなどの機器のほうが、その技術的成果を有効に利用できることになると思われる。