インテルとArgonne National Labの新型スーパーコンピューターAuroraがエクサの大台に

何百もの演算ユニットが、世界で初めて「エクサ」が頭に付く桁の計算(1秒間に1000兆回)に必要な性能を獲得し、スーパーコンピューターの規模は、ほぼ理解不能なレベルにまで成長した。どうやってそれを実現できたのか?「入念な計画、そして大量の配線だ」とこのプロジェクトに深く関わる2人は言う。

Intel(インテル)とArgonne National Labは(アルゴン・ナショナル・ラボ)は、Aurora(オーロラ)という名のエクサスケールの新しいコンピューター(米国ではいくつか開発中だが)の公開を予定しているとのニュースを今年の初めに知った私は、先日、インテルのエクストリーム・コンピューティング・オーガニゼーションの代表であるTrish Damkroger(トリッシュ・ダムクロガー)氏と、Argonneでコンピューティング、環境、生命科学を担当する研究所副所長のRick Stevens(リック・スティーブンス)氏から話を聞いた。

2人は、デンバーで開かれたスーパーコンピューティングカンファレンスにおいて、おそらくこの種の研究に関して深い知識を持っていると自認する人たちの前で、同システムの技術的な詳細について話し合った。インテルの新しいXeアーキテクチャーや汎用コンピューティング・チップのPonte Vecchio(ポンテ・ベキオ)も含むシステムの詳細については、業界誌や広報資料で読むことができる。そこで私は、この2人からもう少し大きな構想を聞き出そうと考えた。

関連記事:浮動小数点演算1回は100京ぶんの1秒、インテルとCrayが超高速次世代スパコンを共同開発中

こうしたプロジェクトが長期的なものだと聞いても、驚く人はいないだろう。しかし、どれだけ長いか想像がつくだろうか。10年間だ。そこでの難題のひとつには、開発当初に存在した技術を遥かに超えたコンピューティングハードウェアを確立しなければならないという点がある。

「エクサスケールが最初に始まったのが2007年です。当時はまだペタスケールの目標すら達成できていませんでした。つまり私たちの計画のマグニチュードは、3から4ほどかけ離れていたのです」とスティーブンス氏。「その当時、もしエクサスケールを実現したならば、ギガワット級の電力を必要としたでしょう。まったく非現実的です。そのため、エクサスケールの研究では、電力消費量の削減も大きな課題になりました」。

Xeアーキテクチャーを核とするインテルのスーパーコンピューティングは、7nmプロセスが基本になっているため、ニュートン物理学のまさに限界を押し広げようとするものだ。さらに小さくすれば、量子効果の影響を受けるようになる。しかし、ゲートを小さくすれば、必要な電力も小さくて済むようになる。顕微鏡レベルの節電だが、10億、1兆と重なれば、たちまち大きくなる。

だが、それは新たな問題を引き起こす。プロセッサーの能力を1000倍にまで高めると、メモリーのボトルネックにぶち当たってしまうのだ。システムが高速に思考できても、同じ速さでデータのアクセスや保存ができなければ意味がない。

「エクサスケールのコンピューティングを実現しても、エクサバイト級のバンド幅がなければ、非常に不釣り合いなシステムになってしまいます」。

しかも、これら2つの障害をクリアできても、3つ目に突き当たる。並行性と呼ばれる問題だ。高性能なコンピューティングにとって、膨大な数のコンピューティングユニットの同期も同程度に重要になる。すべてが一体として動作しなければならない。そのためには、すべての部分が互いにコミュニケートできなければならない。スケールが大きくなるほど、その課題は難しくなる。

「こうしたシステムには、数千数万のノードがあり、各ノードには数百のコアがあり、各コアには数千のコンピューティングユニットがあります。つまり、並行性には数十億通りあるということです」とスティーブンス氏は説明してくれた。「それに対処することが、アーキテクチャーの肝なのです」。

彼らはそれをどう実現したのか。私は、目まぐるしく変化する高性能コンピューティングアーキテクチャーデザインについて、まったくの素人のため解説を試みようなどとは思わない。だが、このエクサスケールのシステムがネットで話題になっているところを見ると、どうやら彼らは実現したようだ。その解決策を、無謀を承知で解説するなら、基本的にネットワークサイドの大きな進歩とだけ言える。すべてのノードとユニットを結ぶ継続的なバンド幅のレベルは尋常ではない。

エクサスケールでアクセス可能にするために

2007年当時でも、プロセッサーの電力消費量が今ほど小さくなり、メモリーのバンド幅の改善もいずれは実現できると予測できたが、その他の傾向については、ほぼ予測不能だった。たとえば、AIと機械学習の爆発的な需要だ。あの当時、それは考えも及ばなかったが、今では部分的にでも機械学習問題に最適化されていない高性能コンピューティングシステムを作ることは愚行と思われてしまう。

「2023年までには、AIワークロードは高性能コンピューティング(HPC)サーバー市場全体の3分の1を占めるようになると私たちは考えています」とダムクロガー氏。「このAIとHPCの収斂により、その2つのワークロードが結合され、問題をより高速に解決し、より深い見識を与えてくれるようになります」

その結果、Auroraシステムのアーキテクチャーには柔軟性が持たせられ、機械学習の一部のタスクではとても重要となる行列計算のような、特定の一般的演算の高速化にも対応できるようになっている。

「しかしこれは、性能面だけの話ではないのです。プログラムのしやすさも重視しなければなりません」と彼女は続ける。「エクサスケールのマシンにおいて、最も大きな挑戦のひとつに、そのマシンを使うためのソフトウェアが簡単に書けるようにすることがあります。oneAPIは、Open Parallel C++のオープン標準をベースにしているため、統一的なプログラミングモデルになるでしょう。これが、コミュニティーでの利用を促進するための鍵になります」。

これを執筆中の時点で、世界で最もパワフルな単体のコンピューティングマシンであるSummitは、多くのシステム開発者が用いているものとは使い方がずいぶん異なっている。新しいスーパーコンピューターを広く受け入れてもらいたいと開発者が望むならば、その使い方をできる限り普通のコンピューターに近づけるべきだ。

「x86ベースのパッケージをSummitに持ち込むのは、ある意味大変なチャレンジになります」とスティーブンス氏は言う。「私たちの大きな強みは、x86ノードとインテルのGPUがシステムに使われていることです。そこでは、基本的に既存のすべてのソフトウェアを走らせることができます。標準的なソフトウェア、Linuxのソフトウェア、文字どおり数百万種類のアプリが使えます」。

私は、そこで使われた経費について尋ねてみた。こうしたシステムでは、5億ドルの予算がどのように使われたのか、その内訳については謎とされることが多いからだ。たとえばメモリーかプロセシングコアか、実際にどちらに多くの予算が費やされたのか、またはどれだけの長さの配線が使われているのかなど、私は純粋に興味があった。だが、スティーブンス氏もダムクロガー氏も話してはくれなかった。ただスティーブンス氏は「このマシンのバックリンクバンド幅は、インターネット全体の総計の何倍にも及び、大変なコストがかかっています」と教えてくれた。あとは想像にお任せする。

Auroraは、その従姉妹であるローレンス・リバーモア国立研究所のEl Capitanとは違い、兵器開発には使用されない。

関連記事:6億ドルのCrayスパコンは核兵器開発で他を圧倒する(未訳)

「Argonneは科学実験室です。そしてオープンです。科学を機密扱いにはしません」とスティーブンス氏。「私たちのマシンは、この国のユーザーの資産です。米国全土にこれを使う人たちがいます。相互評価が行われ料金が支払われたプロジェクトには、たっぷりの時間が割り当てることで、最高に面白いプロジェクトを呼び込みます。そうした利用法が全体の3分の2。残りの3分の1はエネルギー省が使いますが、その場合も機密扱いはなしです」。

最初の仕事は、気候科学、化学、データ科学になる予定だ。それらの大規模なプロジェクトをAuroraで実現する15チームが契約した。詳細は追って知らされる。

[原文へ]

(翻訳:金井哲夫)