2TSUBAME 2.0 始まる
TSUBAME 1. 0 から2.0 への長い道のり（前 編 ）

次世代 気象モデルのフルGPU 計算— TSUBAME 2.0 の 3990 GPUで 145 TFlops —MEGADOCKによるタンパク質間相互作用予測〜システム 生 物 学への応 用〜

TSUBAME 2.0 始まる
TSUBAME 1.0 から2.0への長い道のり（前編 ）松岡 聡 ** 東京工業大学

学術国際 情 報センター

2010 年 11 月、日本初のペタコンTSUBAME 2.0 がいよいよ稼働する。
しかしその前任のTSUBAME1 より更に前に始まる技術的道のりは平坦ではなかった。
前編では、まず TSUBAME1 のスパコンとしての技術的特徴を述べ、そこからTSUBAME 2.0 へ継承された利点、並びに改善された欠点、更にどのように 2.4 ペタフロップス・30 倍もの性能向上が僅か 4 年半で達成されたかを論じる。

はじめに

1

性能である。TSUBAME 2.0 全体では総合性能 2.4 ペタフロップス―
2010 年の時点では我が国の全ての公共機関のスパコン性能を全て合算したより高速—であるが、その高密度さは自らが技術的にそう意図した所によるものであることが分かっていながら、実際に目にするとやはり感動を憶える。

2010 年 10 月初旬—かつては本センターの基盤総務で多くの人々が11 月の稼働を前に、既にTSUBAME 2.0 の訪問・見学は後を絶た事務作業をしていた—階の部屋のドアを開けると、今は別世界の風ない。しかし、単にマシンを見ただけではその中 身がわからない

景が目に飛び込んでくる（図 1）。TSUBAME 1.0 の冷却の暴力的な騒し、仮に分かってもそれだけでは不十分だ。スパコンとして、何故音に慣れた耳にとっては遥かに抑えられた、しかし確実な存在感をそのように設計されているのか—何故個々のコンポーネンツが選伴い、最新の密閉式の水冷冷却ラックを空気が循環する音が聞こえ択されているのか、何故それがそのように組み合わさっているのか、てくる。TSUBAME 2.0 の奥行きの深いラックが並び立つその光景は

TSUBAME1 や他のスパコンの経験がどのように技術的に生かされ一見はまるで事務倉庫のようで、とても世界最先端の技術を結集しているか—は必ずしもはっきりしない。ユーザにとって、あるいはた日本最速のスパコンを内包しているようには見えない。しかし、今後のスパコンの発展の為には、これらの点が明確になり、はたしてそのラックのドアを開けると、TSUBAME 2.0 用に新開発された計算

TSUBAME 2.0 でそれらに纏わる種々の技術的な課題がきちんとクリノード群が理路整然と並び、高々数本のケーブルがそれぞれから突アできたか、評価する必要がある。単なる安定運用だけでなく、その出しているのが見える。大型の冷蔵庫のようなラック僅か一本に内ような科学技術的先端性の評価がされ、それが公知にならなければ、包される総合性能は 50 テラフロップスで、僅か 8 年前に世界一位

国立大学の全国共同利用センタースパコンとして 30 億円以上の税だった、大型の体育館のような施設全体を占め、600 ラック以上が都

金が投入される価値はない。

市の高層ビル群のように林立していた地球シミュレータと同程度の

図1
GSIC105 号室 :TSUBAME 2.0
計算機ルーム02

それらの点で、TSUBAME 1.0 のスパコンの立ち位置は日本のそれ

ギガフロップスのピーク性能・最大 20ギガbps のネットワークと、としてはユニークであるかもしれない。特に、GSICセンターとして

いわゆる「ファットノード」構成を実現したのは、TSUBAME1 のス

はメーカー製 品のスパコンを単 純にカタログから買うわけではな

パコンとしての安定性・利便性のみならず、他の環境で実行できな

く、地球シミュレータや後のT2K と同様メーカーと共同の「開発型」

いアプリを実行できる「スパコンならでは」の特徴として大変有利の調達を行っている。のみならず、常に ①研究室での方式やシステなものであった。2010 年の今でもスパコンのノード計算機として十ムソフトウェアの基 礎 研 究 ⇒ ② GSICセンターにおける実 験 運 用

分普通に通用していることがその証である。

とそのアセスメント⇒③プロダクションマシンとしての開発・仕様

これらの特徴を元に、TSUBAME 1.0 は、我が国のスパコンとして初決定と①② へのフィードバックという、ウォーターフォール開発モめてTop500 においてかつての世界王者だった地球シミュレータをデルの段階を常に踏んできた。TSUBAME 1.0 における①は松岡研破り、アジアNo.1 のスパコンとして 1 年半君臨した [2] 。また、東工におけるクラスタのシステムの基 礎 研 究や、他の東 工 大の研 究 室

大内外から、企業を含み 2000 人近いユーザが 集まり、TSUBAME 1. 0におけるクラスタのアプリケーション基礎研究であり、②は東工大は人気のある「みんなのスパコン」として多様なユーザ層に大いにキャンパスグリッドにおける 4 年間に渡る合計 400ノード以上に及ん活用され続けた。

だクラスタ群での実 験 運 用である。それらの経 験を元に③である

それらの点から、TSUBAME1 は客観的に鑑みても「成功」である

TSUBAME1 の仕様が決定された。TSUBAME 2.0 においては、①基礎とみなして差し支えないであろう。Top500 などの「グランドチャ

研究はTSUBAME1 を含む種々の資源で行うことが可能となり、②はレンジベンチマーク性能」もさることながら、その高性能・大容量

後述のようにTSUBAME1 に実験用設備を増設してかつユーザにも開のみならず従来と専用設計のスパコンと比較して、スパコンとして放し、一体実験運用することで実現した。その結果、③ 後継機種との諸性質を保ちながら遥かに使いやすい環境を実現した。これにしてのTSUBAME 2.0 の仕様が決定した。今後はTSUBAME 3.0 におよりユーザ数の大幅な増加・高い利用率だけでなく、GSIC および東いてTSUBAME 2.0 が ②の役目を担う番である。

工大に数々のメリットをもたらした。文部科学省 Global Center of

前号では、TSUBAME 2.0 のそれぞれの構成要素の特徴を述べた

Excellence プログラムの一つである「計算世界観」の採択、国立大[1] 。本稿では、前後編構成でその裏にある技術的な理由づけを述

学法人の所 謂スパコン基盤センター連合である「学際大規模情報べる。前編ではまずTSUBAME1 の設計と、その経験がTSUBAME 2.0

基盤共同利用・共同研究拠点」の構成センターとしての旧帝大系の設計に影響したかを手短に述べる。後編は、ペタスケールからエ以外からの初めての参加、企業利用を促進する「先端研究施設促進

クサスケールに至る最新の技術動向が、そのプロトタイプとしての事業」の採択とそれによる 50 近い有名企業からの利用、米国マイTSUBAME 2.0 にどのような技術要件として反映されたかを述べる予クロソフト社やNVIDIA 社からの” Center of Technical Innovation ” ,定である。より完全な技術紹介とその評価は、TSUBAME 2.0 稼働後“ CUDA Center of Excellence ”の認定を含み、数々の学術的成果や栄に独立した本の刊行を要求するだろうが、ひとまずTSUBAME 2.0 始

誉が国内外に認定されたのである。

動にあたり各人の参考になれば大変幸いである。

TSUBAME 1.0 の 4 年以上に渡る運用経験は、特に我々やユーザが大 規 模 ベンチやアプリで多 大な負 荷をかけていた時だけでなく、

TSUBAME 1.0 を振り返って2

通 常の数百人ものユーザが同時利用している平常時まで、慎重にかつ網羅的に記録され、TSUBAME 2.0 の設計に繋がってきた。以下はTSUBAME1 において「上手くいった点」「上手くいかなかった点」の列挙である。当然ながら上手くいった点はTSUBAME 2.0 に引き継がれており、一方上手くいかなかった点はTSUBAME 2.0 における解TSUBAME 2.0 の前任であるTSUBAME 1.0（図 2）は 2006 年 4 月に産決課題となった。

声を上げた。東工大における長年にわたるクラスタ計算機の種々の研究と、GSIC のスパコンセンターとしての経験を生かした東工大キャンパスグリッド（2002 年 4 月 ~2006 年 3 月）
プロジェクトの種々の運用実験の成果を元に、各種設計が行われ、約 80 ペタフロップス・
655 ノード・10,000 CPUコア・21テラバイトのメモリ・1.1 ペタバ
イトのハードディスク・それらを全てInfiniBand で相互結合・360 枚（後に 648 枚に増設 ）の ClearSpeed アクセラレータによる密行列演算系の加速 、等 種々の特徴を兼ね備え、後継機種のテンプレートとなった。特に、当時各ノードにおいて、1ノード 2 ~ 4 CPUコアでメモリが 高々1~ 4GByte が主 流だった時 代に、Sun x 4600 と、その内蔵するAMD Opteron の 800 シリーズのマルチソケットサーバ用 CPUの特性を生かして、
各ノード16 CPU コア・32GByte メモリ・
（80+80）

図 2 TSUBAME1 計算機ルーム

03

TSUBAME 2.0 始まる
TSUBAME 1.0 から2.0 への長い道のり（前編）

TSUBAME 1 の光

3(ウ) 密行列計算のためのアクセラレータ：既にTSUBAME1 の時点
で、100テラフロップス近い性 能を当 時の技 術で、コスト・電力・スペースなどの制約内に収めるのは困難であった。そこで、以前より松岡研究室で研究していたアクセラレータ技術を採用する検討する運びとなった。幾つかの候補を検討し、結局英国

上記に述べたようなTSUBAME1 の成功を語るのは短い本稿内では困ClearSpeed 社が開発したSIMD 型の密行列演算用のアクセラ

難ではあるが、TSUBAME 2.0 へ引き継がれる技術的成功要因を挙げレータを導入した。これにより大型の密行列のBLASライブラ

ることはまず必要だろう。これは以下の点を含む：

リ利用時にはコマンドラインのスイッチの指定のみで倍近い性能をユーザが得ることが可能となった。当然 Linpackの性能向(ア) 高性能 x 86プロセッサ・Linux 等業界標準技術の大幅な採用：
莫大なPCおよびサーバの産業的「エコシステム」に支えられた上にも大幅に寄与したが、そのためには新たなハイブリッド型のアルゴリズムを研究開発する必要があった[3]。

PCクラスタのメリットは各所で語りつくされている：時勢に合わせた（ Just-in-Timeな）高性能・低コスト・（大量生産による）(エ) InfiniBandと大 型スイッチによるファットツリー 型ネットワーク

品質の安定性は多く語られているが、それに加え研究室の通常の構 成とI /Oネットワークの統合：スパコンのもう一つ重 要なのPC・ワークステーション・クラスタや、他の多数の同型のク

要素は、ノード間を接 続する高速なネットワークである。特 に、ラスタスパコンとのソフトウェアの連続性が大きなメリットで単に一つのノードのバンド幅だけでなく、そのレーテンシが通常ある。研究やそれを支えるシミュレーション等のソフトウェアのネットワークと比較してマイクロ秒単位と著しく低いことや、の複雑化により、単一のスパコンのみでソフトを開発し利用す全体が通信する際のバイセクションバンド幅が高いことが求めるシナリオは激減しており、むしろ多様な環境で同一のソフトられる。当然、しばしば相反する性質として同時に低コストやが連続に動作し、それらを使い分ける事が日常である。また、初高信頼性が求められる。TSUBAME1 のネットワークは 288 ポー

心者が通常のPCの環境から段階的にステップアップすること

トの大型 InfiniBand のスイッチが 2 階層・8 台（下位層 6 台、上がスパコン利用層の増大により強く求められる。これらを実現

位層 2 台）で構成された。これにより個々のノードから 20Gbps

する「みんなのスパコン」はTSUBAME1 の最も重大な特質の一とスパコンレベルの高バンド幅が安価に実現できただけでなく、つであり、多くの標準技術の採用により実現した。

対称性の高いネットワークにより柔軟な運用が可能となった。
例えば一台ノードが故障しても、他のノードに性能的影響を及(イ) 多プロセッサ・ファットノードのスパコン的アーキテクチャのぼさず代わりのノードを用いることが可能であった。またレーx 86 CPU による実現：しかしながら、スパコンはそれならではテンシも 5マイクロ秒程度と、専用のスパコンのネットワークの利用価値がなければ意味がない。特に、高速性のみならず大と同等となった。

容量の問題が解けることがスパコンの大きな魅力となる。このため、システム全体で多プロセッサ・高メモリ容量等であるだ(オ) 高機能ストレージにおける高密度・高バンド幅・並列ファイル

けでなく、内部でメモリを共有する個々のノード単位でも通常システムによる高 性 能 達 成：スパコンでしばしば忘れられがのPC クラスタ以上に多プロセッサ・高メモリであることが望

ちなのはストレージ部分であるが、TSUBAME1 では 100テラフ

ましい。過去には多くのスパコンが専用・高額なプロセッサお

ロップス級のシミュレーションおよび処理能力により、サブペ

よび専 用の筺 体 内メモリシステムを用いてそれらを実 現してタバイト級の莫大なデータを扱う必要性が生じていた。これにいたが、TSUBAME1 では最新のx 86プロセッサの共有メモリのより、ストレージも計算ノード全く同様に、高いスケーラビリ

新技術を用いることにより、それらと同様の構成を実現できた。

ティと並列性・高信頼性・低コスト・低消費電力化が求めら

これによりユーザにとってのメリットに加え、パーツ数の減少

れ、旧来のエンタプライズ系のIT 技術を基盤としたストレージによる信 頼 性 等の向 上などがもたらされた。更に業 務 用 機 関システムでは不十分であった。そこで、48 台のHDD と強力なサーバ に用いるレベルの電源・ファンの多重化や、ノードあたり

コントローラ兼ストレージサーバを4Uのシャシーに内蔵するSun

数10 にものぼる各 種モニタリング用センサーおよび監視ネッ

x4500 “ Thumper”（一 台あたり 24テラバイト）
42 台を中心としたトワーク、更には当時としては高効率な冷却や省電力等の技術

ストレージ構成とし、ストレージネットワークも計算ノード間要員をベースに運用体制を構築することによって、一万以上ののInfiniBand に直接接続する形で各 Thumperと計算ノードとCPUコア・80 テラフロップス級のスパコンの安価な構築が可能の間での超高速なデータのやりとりを可能とし、その上にLustreとなり、その後その技術や設計手法は米国テキサス大学 TACC

並列ファイルシステムを載せ、全体数百テラバイトの容量、10のRangerやドイツJulichスパコンセンターのEuropaクラスタ、

ギガバイト/ 秒以上の I/O 性能を可能とした。

更には我が国では東 大・筑 波 大・京 大のT2K スパコンに引き
継がれた。

04

(カ) 数百名の同時利用を前提とした分かりやすく公平でCapacity(ア) 性能向上に対する消費電力の問題：TSUBAME 1.0 はピーク時にとCapabilityを両立させるバッチスケジューラ：TSUBAME は

1MW 程度の電力を消費した。これは東工大大岡山キャンパスの2000 名のユーザがアカウントを持ち、同時に 100 名以上のユー全体の電力の10%以上にあたり、電気代は年額一 億円を超える。

ザがジョブを走らせている。年間のジョブ数は百万件以上にも2010 年 TSUBAME 2.0 では初期の目標性能は1.8 の 4 乗 ~=10 倍

及び、その利用形態―ジョブのサイズ・個数・並列性・実行時

強で、約 1 ペタフロップであった。しかしながら、その為には電力

間・QoS 要求・I/O 性能・等々―は本当に様々であるし、ユーザ性能比も10 倍にしなくてはならない。既にClearSpeedを用いていも初心者から多くのスパコンを使いこなすエキスパート、利用

たTSUBAME1 は時代のスパコンとして高効率であった；その証拠もプロジェクトも個人レベルの小さいものから多人数で多くのとして二年後に構築され、アクセラレータを用いない東大 T2K が資源を要求するものまで様々である。これらの多岐にわたる要同程 度の消費電力でLinpack 性能が高々 2 割程 度しか高くない求を公平に満たすにはTSUBAME1 と言えどとてもとても容量はことからもわかる。よって、TSUBAME1 並みの国際的な競争力を足りない。そこで、定額制と従量制の両立・高額な支払いによ維持するには、大幅な電力性能比の向上が必要となった。幸い、り高 QoS 確保手段の提供、更には大規模ジョブの為の予約制のJST-CRESTの「情報システムの超低消費電力化を目指した技術革導入、などの種々の機能を、ユーザに分かりやすくかつ公平感の新と統合化技術」に「 ULP-HPC: 次世代テクノロジのモデル化・ある形で実現するバッチスケジューラの開発を行なった。この

最 適化による超 低 消費電力ハイパフォーマンスコンピューティン

開発は運用と連携し、ユーザのフィードバックを得て完成度をグ（ULP-HPC）」という研究課題で応募し、採択されることによって高めていった。

目標 達 成のための① 基 礎 研 究を進めることが外 部資 金で可能となった。ULP-CRESTにおける電力性 能 比向上は 10 年で1000

これら以外にも、種々の技術的や運用上の工夫があった。特に毎倍であり、4 年半だと約 24 倍となる。

年ソフトウェア・ハードウェア等種々の見直しを行い、追加調達を行ったが、それはアプリのソフトウェアライセンスのように単に運用(イ) アクセラレータの広 範かつ柔 軟な適 用 性および性 能の問 題：

上不足していると判明したものだけでなく、②の将来に向けた運用

関連するが、アクセラレータも無論万能ではなく、特にClearSpeed

実験のものも含まれていた。

はライブラリ経由での密行列の演算には力を発揮したものの、その他の演算ではプログラミングが困難・メモリバンド幅不足・メ

TSUBAME 1 の影とTSUBAME 2.0 に向けての技術的進歩

4

モリ容量不足等の利用で、他の用途への応用がほとんどなされな
い状態であった。幸い、バンド幅や性能が高く、汎用性も高く、かつ業界標準品であるが故安価なGPUが台頭し始めており、松岡の研究室や他の研究室でもそのHPCへの利用法の基礎研究が既に行われていた。よって、2008 年頃には次期 TSUBAME 用にGPUをTSUBAME1 上のアプリケーションの実行性能や運用上で判明した諸用いるかの②実 験 運 用が行えるかが焦 点となっていった。幸い、問題で、やはり上記のような小手先の改良だけでは改善できない点

2007 年頃よりNVIDIA 社およびMicrosoft社等との技術パートナー

も種々明確になってきた。のみならず、スパコンの年率 180%といシップでGPU 活用の研究プロジェクトおよび共同研究が開始され、う性能向上の必要性と、それを担保する諸技術の研究開発により、2007年末にはプロトタイプの128GPUのクラスタ計算機を、2008

TSUBAME1 の設計時には最良の選択でも、2010 年のTSUBAME2 の稼

年10月にはTSUBAMEに 680 機の最新のNVIDIA Tesla GPU（図 3,

働時は必ずしもそうならない点もあらわになってきた。以下にそれ等

図 4）を接続し、TSUBAME 1.2として種々の運用実験を行った。

の点を挙げる：

図 3 TSUBAME1 で使用したNVIDIA Tesla s1070

図 4 TSUBAME2 で使用するNVIDIA Tesla M2050,
Thin ノード1 台に付き 3 機搭載

05

TSUBAME 2.0 始まる
TSUBAME 1.0 から2.0 への長い道のり（前編）(ウ) ノード内メモリおよびネットワークバンド幅の不足：また、GPUに限ためには、なるべく多くのノードを中央スイッチ近接に設置でらず、システム全体としてのバンド幅が全体的にTSUBAME1 では

きなくてはならないが、その為にはマシンが小さくなくてはなら

不足していた。メモリバンド幅に関しては二つの要 因があり、多ない。幸い、GPU の効率的な装着、および内部バンド幅向上なチャンネルメモリを大量に搭載したことによるメモリバスのクロッ

ど、様々な技術要件からノードを新設計することになり、今まで

ク低下と、用いたCPUの共 有メモリのハードウェア的要因によるにないレベルの高密度なノード実装が大きな技術目標となった全体の総合メモリバンド幅の制限（ノード全体で 20GB/s）
である。

（図 6）
。結果として、一ラックあたり 50テラフロップスというまた、ネットワークに関しては、InfiniBandの性能が各チャンネル

性能密度が実現でき、TSUBAME 2.0 の総合ラック数は 60 程度

1GB/s 強あるが、他のノード内のアクティビティと重なると半分に低とTSUBAME1 の約 3 / 4 となった。

下する現象が見られた。次回に譲るが、これらのバンド幅の大幅な向上は、単に現在のアプリケーションの高速化だけでなく、今後のシステムのスケーラビリティ確保のために重要な要因である。
よって、TSUBAME 2.0 の設計では、FLOPS 向上を超えるバンド幅の向上が最重要課題となり、それがノード計算機の新開発の一つの大きな事由となった。
(エ) ネットワーク全体のバイセクションバンド幅の不足：さらに、ネットワーク全体でもバイセクションバンド幅は、エンドポイントが13テラビット秒であるのに対し、2.8 テラビットと 1/5 程度であり、FFT のような大規模な全対全通信においては大きなボトル
ネックとなっており、地球シミュレータ等と比較して陰解法系
が弱点となっていた。よって、より全体で高バンド幅なネットワークを実現することが急務となった。このため、地球シミュ

図 5 下位スイッチからの光ファイバが集約される
InfiniBand コアスイッチ

レータ同様のフルバイセクションバンド幅を実現するネットワー
クが必要となったが、ノード数が 1500 程度と地球の 2 倍以上に達するため、
技術的な困難さが問題となった。種々の検討の結果、集中型の大規模スイッチと小規模スイッチを複合的に用い、中央に集中したスイッチに対しては下位スイッチから全面的に光ファイバ接続を用いることで解決の目途を立てた（ 図 5）。
(オ) 冷却効率の問題：TSUBAME 1.0 は冷却列と暖気列の分離を省スペースで実現するなど、2006 年当時としては最新の冷却技術を実現し、PUE 値（冷房の効率を現わす値・1 が理論的に最高で、2 だとマシンと冷却電力が同等。旧来のデータセンターでは 2を超えるものも多かった）として約 1.44 を達成していた。
しかし、マシン電力 1 に対し冷却電力が 0.44 も必要なのは近年の冷却技術としては最善ではない。よってPUE を少しでも 1 に近づける技術の検討が急務となった。そのため、水冷や密閉式の空冷と水冷のハイブリッド、自然大気冷却など、幾つもの方式を検討し、1.2 台のPUE の実現を目指した。
(カ) マシンサイズおよび重量の問題：TSUBAME １は全体で 80ラッ
ク近くの大きさで、その設置にGSIC 情報棟の計算機室のほとん
どの床面積を占めてしまっていた。これでは拡張性がないのみ
ならず、上下二階に多くの配線や管理が跨り、非効率であった。
そこで、性能密度を大幅に向上させ、より小さいマシン作りが重要な課題となった。これはマシンのコスト低減がメリットだけではない；上記のフルバイセクションネットワークを実現する

06

図 6 TSUBAME1 に比べ、サイズが 1/4 となった
TSUBAME2 計算ノード

(キ) ストレージの運用容量の不足：ストレージはTSUBAME1 で大幅な容量向上を果たしたものの、実際の運用容量は常に不足気味であった。これは様々な要因による。まずは三次記憶としてのテープシステムやMAID がなく、全て高性能ストレージであった為、バックアップも全て高額な高速ストレージに行う必要があった。また、ストレージ、特にLustre 並列ファイルシステムがsingle point of failure とならないよう多重化する必要性が生じたが、メタデータ管理の為に折角のThumper が消費されてしまう事態が生じた。同様のThumper の消費は他の理由でも起こり、A

またストライプ数が少ないRAID6 構成を余儀なくされたため、ユーザがLustre で高性能に使える領域は全体から見れば極小となってしまっていた。このため、2007 年にはさらにThumper を
20 ユニット追加し、総合物理容量を 1.6 ペタバイトに引き上げたが、それでもLustre の通常の運用領域はGaussian のスクラッチ用スペースを含めても 200 テラバイト程度の実容量であった。
そこで、TSUBAME2 ではLustre を含むストレージの運用管理を効率化し、物理容量に対する実運用容量を大幅に増加させる設計として、同時に性能や信頼性を向上させることとした。特に、TSUBAME1 の 2009 年以来の運用体制を発展させ、ストレージ

B
A 図7

率化し、かつ最大 10 ペタバイト以上に容量拡張できるテープ装

TSUBAME 2.0 のLustre 用ストレージサーバ 群

B 図 8 ディスクエンクロージャ内部には 60 台の 2TB SATA HDD
C 図9の管理サーバを専用化・多重化し、HDD のRAID 構成なども効置も別途導入した。
（ 図 7, 図 8, 図 9 ）(ク) ストレージのバンド幅の不足：更に、後の目標性能である 2-3

GSIC 国際棟（TSUBAME2 のある情報棟とは別棟）にあるテープライブラリ

ペタフロップス達成のためには、数百ギガバイト/ 秒のI /O 速度が求められるが、その実現のためのストレージシステムは莫大

D 図 10 TSUBAME2 計算ノードには 60GB 、または 120GBのSSDを2 機搭載

なディスク数とストレージサーバが必要となる。幸いOak Ridge
国立研究所のJaguarでのストレジワークロードの研究 [4, 5]で、
8 0 ~ 9 0 % 程 度のI/Oワークロードはスクラッチおよびチェック
ポイントであるという結果が出、丁度速度・信頼性・価格等の面で競争力を持ち出したSSD を各計算ノードに装備し（図 10）、
超高速ローカル I / O 装置としてそれらのワークロードを担当させることにより、Lustre のバンド幅への要求を大幅に下げられるという結論に達した。これにより要求仕様に盛り込むと共に、これらを高信頼に用いるチェックポイントアルゴリズムの研究をスタートさせ、かつ有効な運用方法を技術的に検討することとCした。実際、TSUBAME 2.0 に初期配備されるSSD の合算バンド
幅は 660ギガバイト/ 秒に達し、Jaguar の並列ファイルシステムのそれを大幅に上回る。

D

07

TSUBAME 2.0 始まる
TSUBAME 1.0 から2.0 への長い道のり（前編）(ケ) 一部信頼性の向上の必要性：TSUBAME はクラスタ計算機とし

Coping with Heterogeneity of Modern Accelerators", In Proc.

ては大規模ゆえにかなり高信頼を意識して設計された・実際

2 2 nd IEEE International Parallel & Distributed Processing

TSUBAME の障害ログは全てつぶさにGSIC のTSUBAME のHP で

Symposium (IPDPS 2008), The IEEE Press, Miami, FL, April 2008,

公開されているし、メジャーな全システムのダウンは東京城南[ 4 ] Weikuan Yu, Jeffrey S. Vetter, H. Sarp Oral. "Performance

しながら、
single point of failure はストレージおよびバッチキュー

Characterization and Optimization of Parallel I/O on the Cray XT",

システムに存在し、しばしばその不調は（マシン全体では無いもIn Proc. 22nd IEEE International Parallel & Distributed Processingのの）バッチキュークラス全体など、かなり大きな資源部分のSymposium (IPDPS 2008), The IEEE Press, Miami, FL, April 2008,

障害を引き起こした。そこで、ストレージを含む多くの部分のpp.1-10, DOI: 10.1109/IPDPS.2008.4536277

ハードレベルの多重化、およびサービスの多重化により、single[5] Julian Borrill, Leonid Oliker, John Shalf, Hongzhang Shan, Andrew

point of failure の排除した設計に努めた。コストはかかるものの、

Uselton. "HPC Global File System Performance Analysis Using A

多重性は常時運用時の性能アップも達成できるので、メリット

Scientic-Application Derived Benchmark", Parallel Computing,が大きい。

Volume 35 , Issue 6 (June 2009), pp. 358-373.

TSUBAME 2.0 のいよいよなる始まり― 後篇に向けて

5

以上、TSUBAME1 から 2.0 への進化の過程の概要を述べた。本稿執筆時点で、TSUBAME1 は 2.0 稼働準備の電力等確保のために段階的に縮退が進んでいる。順調に行けば、10 月末にはその歴史を終え、11 月初旬正式稼働の 2.0 の運用に直接引き継ぐ。多くの基本ソフ
トウェアスタックはTSUBAME1 から引き継がれるので、SGE ベース
からPBS Proベースに変更となったバッチキューコマンドの多少のコマンドの違いや、キュー・ストレージ構 成の多 少の変 更があるものの、ユーザはほとんど機 能 的な違いを感じないはずである。しかし、その性能をフルに発揮するアプリを走らせた場合、その 30 倍の性能向上を体験することになるだろう。それは後編で紹介するポストペ
タからエクサへの入り口であり、GPUによるメニーコアやマルチス
レッドやSSDによる超高速 I/O, 更には超高速光ネットワーク、更には新たなハードやシステムの大規模化・高速化に対応する種々のソ
フトウェア上の新言語・新機能・新たなツール群など、スーパコン
ピューティングの時代的変革を感じるようになることであろう。後編では、それらの観点からTSUBAME 2.0 を評価し、かつベンチマークの性能でそれらを具体的に論じる予定である。乞うご期待されたい。
参考文献[1] Satoshi Matsuoka, Toshio Endo, Naoya Maruyama, Hitoshi Sato,
Shin'Ichiro Takizawa. "The Total Picture of TSUBAME 2.0", The
TSUBAME E-Science Journal, Tokyo Tech.GSIC, Vol. 1, pp. 16-18,
Sep. 2010[ 2 ] Satoshi Matsuoka. Petascale Computing Algorithms andApplications --- Chapter 14 The Road to TSUBAME and Beyond,
Chapman & Hall CRC Computational Science Series, pp.289-310,
2009.
[3] Toshio Endo and Satoshi Matsuoka. "Massive Supercomputing08

pp.1-10, DOI: 10.1109/IPDPS.2008.4536251

地区の珍しい大停電を含め 4 年間に二回程しかなかった。しか次世代気象モデルのフルGPU計算― TSUBAME 2.0の3990GPUで145 TFlops ―下川辺 隆史 ** 東京工業大学

青木 尊之 **

総合 理 工学 研 究科、 ** 東 京工 業 大学

学術国際 情 報センター

次期気象予報のために気象庁で開発されている非静力気象モデルASUCAをGPU 上で効率良く走らせるには、膨大なコード全体をGPUに移植する必要がある。CUDAによる書き換えと、さまざまな新しい計算手法の導入により、
TSUBAME 2.0 の 3990 GPUを用い 145.0 TFlops（単精度計算）という高い実行性能を達成した。
HPCの主要アプリケーションである気象計算のプロダクション・コードに対し、GPUスパコンの有用性を示すことができた意義は非常に大きい。

はじめに

1

凝縮や雲形成、降雨などの局所的な物理変化のモデリング（パラメタ
リゼーション）に対する計算に分けられる。力学過程では浮動小数点
演算よりも圧倒的にメモリアクセスに時間がかかり、どの計算機でもピーク演算性能に対して十分高い実行性能は得られない。一方、物理過程はさまざまな経 験的なモデリングやパラメータを多く含み、一 部

気象予報は人々の日常生活や関連産業に大きな影響を与え、防災の観の計算は非常に負荷の高い浮動小数点演算を必要とする。

点からも非常に重要であることは言うまでもない。大気は地球規模のここ数年、GPU（Graphics Processing Units）の持つ高い浮動小数スケールで見れば非常に薄い層であり、鉛直方向の大気圧（勾配）と重点 演 算処 理 能 力と高いメモリバンド幅が注目され、GPUを高性 能ア

力の釣り合いが近似的に良く成り立つ。これまで静力学平衡モデルのクセラレータとして汎 用計算に使 用するGPGPU（ General-Purpose

気象計算が行われてきたが、水蒸気の上昇気流による上空での雲形成

GPU）の研究が盛んに行われている。2006 年にNVIDA 社がGPGPU 向などが重要であると認識されるようになり、大気の上下運動を考慮す

けの総合開発環境であるCUDA [3] をリリースして以降、GPGPUのプ

る3次元非静力学平衡モデルの気象計算が行われるようになってきた。

ログラミングが容易となり、HPC分野では数値流体力学をはじめとし気象計算では観測データとそれまでの計算結果を4 次元変分原理て、分子動力学、重力多体計算や高速フーリエ変換などでGPUを利用に基づいてデータ同化を行い初期値を作成する。気象はカオス的な現象であり、初期値から決定論的に時間発展させる長さには限界があり、した研究が精力的に進められている。
気象計算の分野も例外ではない。高速化は従来型スパコンのCPU性能の向上に頼るだけでなく、いち早くGPU のような新しい高性能演

度々初期値を入れ替えての再スタートが必要となる。
近年、ゲリラ豪雨のような突発的で局地的な豪雨が多く見られるよ算デバイスを利用する取り組みが開始されている。WRFのグループでは、うになった。これからのの気象予報では、このような現象を予報する

計算負荷の高いモジュールのみを GPU に移植し高速化を図った[4, 5]。

ために高 解 像 計算を迅 速に行うことが求められる。気 象 計算は細全体の計算は従来通り CPU 上で実行し、雲物理過程の一部のモジュー

かい格 子で 3 次 元 非 静力学 平 衡モデルの大 規 模 計算を行うようにルだけを GPU 化した。しかし、このようなコードの一部 GPU 化ではア

なりつつあり、HPC（ High Performance Computing）の代 表 的な

プリケーション全体はGPU上で高速 実行されない上、CPU-GPU 間のアプリケーションとなっている。

通信が頻繁に発生し、これがボトルネックとなるために GPU の持つ本来の性能を十 分に発揮できない。移植されたモジュール単体は 20 倍

GPUによる気象計算

2の高速化に成 功しているものの、アプリケーション全体では 30%の速度向上に留まっている[4]。物理過程は小さなモジュールの集合体であり、頻繁なモデルの変更が行われる。一方、力学過程はコード全体に関係する予報変数の時間積分を行うため、その一部だけGPU 化することは殆ど意味がない。

気 象 計 算を高 速に実 行する（高い実 行 性 能を得る）要 求は非 常に

東京工業大学 学術国際情報センターでは、680 基のGPUを搭載し強い。米国大気研究センターを中心に開発されている次世代大気シたスパコン TSUBAME 1.2 の後継機として、2010 年11月に4200 基を超ミュレーションコード WRF（Weather Research and Forecasting）[1]えるGPUを搭載し日本 初のペタスケールのスパコンTSUBAME 2.0 がは世界 標 準になりつつある研 究 用のオープンソースのコミュニティ・

稼働を開始する。TSUBAME 2.0 は、演算性能の大部分を GPU が担うコードであり、執 筆 時点で世 界 最 高 速のスパコン上でも実 行されこととなり、GPUから高い実行性能を引き出すアプリケーションの開発

50TFlopsを記 録している[2]。

が重要となる。本 稿では、気象計算のプロダクション・コードの全体

気象計算は力学過程と呼ばれる風速や気圧、湿度などの予報変数に対する流 体力学的な運 動の計算と、物理 過程と呼ばれる水蒸気のをGPU 化し、TSUBAME 2.0 上で実行させるためのプロセスと、その実行性能について紹介する。

09

次世代気象モデルのフルGPU 計算— TSUBAME 2.0 の 3990GPUで 145 TFlops —次世代気象シミュレーションコード
ASUCA

3

4

単一 GPU への実装と計算性能

ASUCA（Asuca is a System based on a Unified Concept for Atmosphere）

TSUBAME 2.0に導入されたNVIDIA社製 GPUであるTesla M2050（ Fermi

は気象庁が次期の気象予報のための現業コードとして開発を進めていアーキテクチャ）を用いて実行することを目指し、GPUコンピューティン

る次世代高分解能局地モデル[6]である。ASUCAのうち、現在までに開グ用の統合開発環境である CUDAを用いてGPUコードの開発を行った。

発を終えている全ての部分をGPU上へ実装することを試みた。

最 終的なASUCAの複 数 GPUへの実装を説明する前に、単一 GPU 計

力学過程のGPU 化はアプリケーション全体の枠組みに大きく影響す算における最適化手法について述べる。

るため、GPU 版のASUCAの開発の方向性を決める上で重要なステッ

ASUCAの実行の流れは図 1のようになっている。初 期 値データをプとなる。ASUCAは一 般 座標 系 を採 用し、力学過程の方程 式 系はCPUで読み込み、データをGPU上の global メモリへ転送する。全てのフラックス形式の完全圧縮・非静力学方程式系である。ASUCAでは鉛

予報変数をGPUのglobalメモリ上に確保し、時間発展ループの内側の

直方向の音波関連項のみを陰的に扱う HEVI（Horizontally explicit-

全ての計算をGPUで実行する。計算結果である予報値を出力するとき

Vertically implicit）法を採用している。風速などに比べて伝播速度ののみ、最小限の必要なデータをGPUのglobalメモリからCPUのメイン

速い音波、重力波に関係する項はサブステップを用いて小さい時間刻

メモリへ転送する。

みで計算し、移流計算や物理過程など、その他の項は大きい時間刻みで計算する[7]。大きい時間刻みでは 3 段階 Runge-Kutta 法、小さい

4-1 単一 GPUでの最適化手法

時間刻みでは 2 段階 Runge-Kutta 法を用い、これらはWRFと殆ど同じ

GPUの高い実 行 性 能を引き出すためにASUCAのGPUコード開 発で計算内容である。雲物理過程としては現在のところ水蒸気、雲水、雨導入される重要な最適化手法について、（ a）移流計算の実装と（b）楕を取り扱うKesslerタイプのwarm-rainスキームが導入されている。

円 型のHelmholtz 方 程 式の計算に対する実 装について焦 点を当て、以下に説明する。
（a）移流計算の実装
3 次元の移流計算を GPU 上で効率的に行うためには、global メモリへのアクセスをできる限り少なくすることが必要である。CUDA の block内で共有される shared メモリをキャッシュとして利用することで計算効率を向上させる。
計算領域の格子点数を nx×ny×nzとする。CUDA の block を（64,4, 1 ）、grid を
（nx /64, nz / 4 , 1）と割り当てCUDAのgridを物理 空間のxz平面に平行に配置する。CUDA の y方向が物理空間の z方向となる。
CUDAのblock 内の 各 threadを（x, z）平面に割り当て、y方向にマーチ
ングすることで ny 個の格 子点に対し j = 0 から j = ny −1 まで順に計算を行う
（図 2（a））。blockサイズは（64, 4, 1）と最 適化し実行性能を高めている。

図 1 ASUCA の時間発展計算の流れ。
時間ループ内の全計算はGPU 上で行われ、入出力のみCPU 上で行う。

（a）移流計算（b）Helmholtz 方程式

図 2 CUDAブロック内で実行されるスレッド・マーチング法10図 3 レジスタの利用によるglobalメモリアクセスの抑制

図 4 ASUCA の 1GPUでの単精度、倍精度計算における計算性能と CPU（1コアと 12コア）での倍精度計算における計算性能。

ASUCA の移流 計算では流 束 制 限 関 数を導入した風 上 差 分 法と単一 GPUを用い、格子数の x 、z 方向をそれぞれ nx = 256 、nz = 48

Lax-Wendroff 法を混合したスキームが用いられている。この計算はと固 定し、y方向の格 子 数を変 化させて単 精度、倍 精度でそれぞれそれぞれの空間方向 4 点を参照する。各 blockはそのサイズよりも両ASUCAを実行した。GPUはTSUBAME 2.0 に搭載されたNVIDIA Tesla

方向に 3 大きい
（64+3）×（4+3）の配列をsharedメモリ上に確保する。

M2050 を使 用し、その実 行 性 能を図 4 に示す。また、GPUコードの

物理 空間のxz平面のデータは計算に必要な時にglobalメモリから一元となったC/C++言 語で書かれたASUCAをIntel 社 製 Xeon X5670

旦このsharedメモリへコピーし、
block内のthreadで共有して利用する。

（Westmere-EP ）2.93GHz 6-core のうち1コア用いた時の計算性能と、

図 3 の外周領域には block の境界に位置するthread がアクセスする

Fortran で書かれたオリジナルのASUCA（Intel ifort でコンパイル）を

隣 接データを格 納する。sharedメモリを利 用することで block 内のXeon X5670 2.93GHz 6-core x 2 の12コアで計算した時の計算性能にthread がglobalメモリへ重複してアクセスすることを回避できる。一方、ついても合わせて示している。256×208×48 格子の計算では単精度

y方向にはマーチングの方向なのでthread 間でデータを共有する必要で 49.1 GFlops の性能を示し、これは倍精度で TSUBAME 2.0 の1ノーがなく、該当するthreadの一時変数（register）に格納して利用する。

ドにあるCPU 12コア用いたオリジナルのFortran コードによる計算のj+1番目の計算でsharedメモリで共 有するデータは j 番目の計算時に約 6 倍の性能を達成している。また、GPUの単精度と倍精度の実行性

既にregisterへ格納されているため、実際にはj+1番目の計算開始時能の違いがメモリ転送量に比例した 2 倍程度になっている。

にsharedメモリへはglobalメモリからでなくregisterからデータを移動し再利用することで計算効率を高めている[8]。
（b）1次元 Helmholtz 方程式による気圧計算の実装
移流計算と異なり気圧に対する楕円型の1次元 Helmholtz 方程式を

マルチ GPU 計算

解く計算では、3 重対角行列を解くために鉛直方向に逐次計算を行う。

5

CUDA のgrid を物理空間の xy 平面上に取り、各 thread はブロック内の（x, y）平面に割り当て、z 方向に一往復マーチングすることで計算がTSUBAME 2.0 に搭載されるTesla M2050 は 1 GPU当たり 3GByte のメ

完了する（ 図 2（b））
。

モリしか持たない、ASUCAは 1 GPU に対して 256×208×48 の計算

4-2 単一 GPUによる計算性能

格子サイズまでしか計算することができない（単精度の場合）。これ以上の計算 格子サイズを計算するためには複 数のGPUを用いる必 要が気象庁において開発されてきた ASUCA はFortran言語で書かれていある。例えば気象庁の数値予報で用いている典型的な計算格子サイ

るが、GPU上に実装するにあたり予報変数の配列の次元の順序を変更

ズは721×577×50 である。

するため、その検証目的も含めて C/C++言語に書き換え、さらにCUDA

ASUCAでは鉛直方向の格子点数が最大で100 程度であるため、複でGPU 化を実装した。CPUのC/C++コードはGPU との計算性能を比数 GPU 計算を行うために全 体の計算領 域をx 、y方向に二 次 元 領 域

較するためにも用いる。また、GPU コードの浮動 小 数 点演算数を直分割し、それぞれの領域の計算を一つのGPUが受け持つ。隣 接する

接測定することは困難であるため、ASUCA では CPU コードに対して

GPU 間での境界領域のデータ交換が必 要になるが、GPUは他のGPU

PAPI（Performance API ）[9]を用い実測した浮動小数点演算数を元に、の global メモリ上のデータに直接アクセスすることができない。そこ

GPU の実行時間から実行性能を評価している。

でGPU 間のデータ転 送はホストCPUのメモリを経由し、次の3 段階で

11次世代気象モデルのフルGPU 計算— TSUBAME 2.0 の 3990GPUで 145 TFlops —構成される。
（ 1）
CUDAランタイムライブラリによるGPUからCPUへの145.0 TFlopsという極めて高い実行性能を達成した。また倍精度計算

転送、（2）MPIライブラリによるCPU 間のデータ転送、（3）
CUDAランタでは 3936 GPUを利用して10336×9988×48 計算格子を計算し76.1

イムライブラリによるCPUからGPUへの転送を行う。

TFlops の実行性能を達成した。また、GPU 数を増やしたときに問題サ

複数 GPU 計算では、アプリケーション全体の実行時間に対してGPU

イズを変えて実行した場合、良い弱スケーリングが得られている。

間のデータ交換に必要な通信時間が無視できない。通信時間はCPU

図 6に現在の数値予報で使用されている初期値データと境界値デー

計算の場 合と同程 度であるが、GPUはCPUと比 較して格段に計算がタを用いた台風の気象計算を行った例を示す。437GPU用い計算格子速いため、相対的にアプリケーションの実行時間に占める通信時間の4792×4696×48（実際の格子間隔は水平500m）
を単精度で計算した。

割合が大きくなる。このため、複数 GPUを使うアプリケーションでは、通信のオーバーヘッドを隠蔽する工夫が必要になる。ASUCAでは、ス
ケーラビリティを向上させるため、GPU 間のデータ交換に必要な通信をGPUの計算とオーバーラップさせる最適化手法を導入している[10]。
5-1 マルチGPUによる計算性能
TSUBAME 2.0 において複 数 GPUを用いた計算によるASUCAの性 能について説 明する。TSUBAMEの各ノードはIntel 社 製 Xeon X5670（Westmere-EP）
2.93GHz 6-core x 2 、
メインメモリ約 50 Gbyteがあり、PCI-Express Bus 2.0 × 16 にNVIDIA 社製のGPU Tesla M2050 が 3 個接続されている。各ノード間はQDR InfiniBand（4GB/sec）2 本で接続されている。各 GPUは単精度計算では 256×208×48 格子、倍精度
計算では 256×108×48 格子を担当する。これは1GPUあたりのメモ
リを最大限活用し同時実行するスレッド数を最大にし、コアレス・アクセスを最大にするサイズである。
図 5 に複 数 GPUで実 行したASUCAの計 算 性 能 示す。3990 GPU
を利 用して14368×14284×48 計算 格 子に対して行った計算では、

図 5 TSUBAME 2.0 に搭載された
複数 GPU 計算と複数 CPU 計算の実行性能（弱スケーリング）の比較

図 6 台風の気象計算をTSUBAME 2.0 の 437 GPU を用い計算格子 4792 × 4696 × 48（水平 500m 格子）で単精度計算した例。雲を可視化している。

12

おわりに

6

Performance Computing Networking, Storage and Analysis.
New York, NY, USA: ACM, pp. 1–11, (2009)[6] J. Ishida, C. Muroi, K. Kawano, and Y. Kitamura, “Development of
a new nonhydrostatic model “ASUCA” at JMA,” CAS/JSC WGNE
Reserch Activities in Atomospheric and Oceanic Modelling, (2010)

次世代の気象予報を目指して開発している気象計算のプロダクション・[7] W. C. Skamarock and J. B. Klemp, “Efficiency and Accuracy of

コードをフル GPU 化し、東 京工業 大学の TSUBAME 2.0 スパコンのthe Klemp-Wilhelmson Time-Splitting Technique,” Monthly

GPU で実行した。CPUにより実行した場合と比較すると、GPUによる

Weather Review, vol. 122, pp. 2623–+, (1994)

計算では圧倒的な高速化を達成することができた。GPU を用いた計[8] P. Micikevicius, “3D finite difference computation on GPUs using

算は、マシンのコストと消費電力の面で大きなアドバンテージがあり、CUDA,” in GPGPU-2: Proceedings of 2nd Workshop on General

気象計算のような実用目的のコードに対する有効性を示すことができ

Purpose Processing on Graphics Processing Units. New York,たことの意義は大きい。中国を始めとして、大量のGPU がスパコンに

NY, USA: ACM, pp. 79–84, (2009)

導入される時 代が始まろうとしている。東 京工業 大学・学術国際 情[9] S. Browne, J. Dongarra, N. Garner, G. Ho, and P. Mucci, “A報センターのTSUBAME 2.0 はその先駆けであり、日本初のペタフロッ

portable programming interface for performance evaluation

プスマシンである。そのような時代において、本稿で示したような大規

on modern processors,” Int. J. High Perform. Comput. Appl.,

模なGPU 計算のアプリケーションがさらに開発されて行くことを期待

vol. 14, no. 3, pp. 189–204, (2000)

する。
謝辞[10] T. Shimokawabe, T. Aoki, C. Muroi, J. Ishida, K. Kawano, T. Endo, A.
Nukada, N. Maruyama, and S. Matsuoka, "An 80-Fold Speedup,
15.0 TFlops Full GPU Acceleration of Non-Hydrostatic Weather

ASUCAのオリジナルコードを提 供していただきGPU 版の開発に協力

Model ASUCA Production Code", in SC ’10: Proceedings of the

していただいた気象 庁 室井ちあし氏、石田純一氏、河野 耕 平氏とConference on High Performance Computing Networking,

TSUBAME 2.0 でASUCAを実行するにあたり協力していただいた東京

Storage and Analysis. New York, NY, USA: ACM (2010) in press

工業大学 松岡聡教授、遠藤敏夫准教授、額田彰氏、丸山直也氏に深く感謝する。
本 研 究の 一 部 は 科 学 研 究 費 補 助 金・基 盤 研 究（B）課 題 番 号
19360043「多モーメント手法による多目的 CFDコアの開発」、科学技
術振興機構 CREST「次世代テクノロジーのモデル化・最適化による低消費電力ハイパフォーマンス」および日本学術振興会（JSPS ）グロー
バルCOE プログラム「計算世界観の深化と展開」（CompView）から支援を頂いた。記して謝意を表す。
参考文献[1] W. C. Skamarock, J. B. Klemp, J. Dudhia, D. O. Gill, D. M. Barker, M.
G. Duda, X. Y. Huang, W. Wang, and J. G. Powers, “A Descriptionof the Advanced Research WRF Version 3,” National Center for
Atmospheric Research, (2008)[2] A. S. Bland, R. A. Kendall, D. B. Kothe, J. H. Rogers, and G. M.
Shipman, “Jaguar: The world’s most powerful computer,” in2009 CUG Meeting, pp. 1–7. (2009)[3] “CUDA Programming Guide 3.2,” http://developer.download.
nvidia.com/compute/cuda/ 3 _ 2 /toolkit /docs/CUDA _C _Programming_Guide.pdf, NVIDIA, (2010)[4] J. Michalakes and M. Vachharajani, “GPU acceleration ofnumerical weather prediction.” in IPDPS. IEEE, pp. 1–7, (2008)[5] J. C. Linford, J. Michalakes, M. Vachharajani, and A. Sandu, “Multicore acceleration of chemical kinetics for simulation andprediction,” in SC ’09: Proceedings of the Conference on High13

MEGADOCKによるタンパク質間相互作用予測～システム生物学への応用～
松崎 由理 *
* 東京工業大学

大上 雅史 *

大学院情報理工学研究科

内古閑 伸之 *石田 貴士 *

秋山 泰 *

計算工学専攻TSUBAME を用いて、タンパク質立体構造データに基づく剛体モデルのドッキング計算を高速化し、タンパク質間相互作用予測システム「MEGADOCK」を構築した。
これまでシステム生物学におけるネットワークレベルの大規模問題には十分活用されてこなかった
タンパク質立体構造情報を、バイオインフォマティクスの手法によって活用する道を拓いた。
現在は百万ペア規模の予測問題への応用を目指して開発を進めている。

はじめに

1

MEGADOCK の中核をなす「ドッキング計算システム部」の処理
は、形 状の相 補 性に関する項 Gと静 電 的 相 互 作 用の項 E の計 算からなる。ここで、対象とするタンパク質ペアについて片方をレセプ
ター R 、もう片方をリガンドL と呼ぶことにする。それぞれのタン
パク質を 1 辺が 1.2Å のボクセル空間上に表し、タンパク質の内部

生命は様々な分子の相互作用によって維持、発展している。我々はか表面かなどの種別によって、各ボクセル上に異なる数値を代入す

バイオインフォマティクスの手 法によるシステム生 物 学の研究とる。形状の相補性の項 G には、我々が提案したreal Pairwise Shape

して、タンパク質間相互作用（Protein-Protein Interaction, PPI）の予

Complementarity（rPSC ）スコアを用いる。 rPSC スコアは以下のよ

測問題に取り組んでいる（図 1）。例えばヒト細胞内では数万種類存

うに表される[1]。

在するといわれるタンパク質が相互にどのような制御関係にあるかを理解することは、病因の解明や薬剤の設計における重要な課題となっている。
従来は 1 対 1 のタンパク質間相互作用予測において、既に知られている相互作用の詳細な確認を行うのが計算機の役割と考えられていたが、本研究では数十から数百個のタンパク質群における相互作用の可能性を網羅的に高速に予測することを初めて可能とした。
我々はタンパク質の形状相補性と静電相互作用のみに基づく単純化された評価モデルを提案し、フーリエ空間上での演算により計算量を大きく減じた上で、さらに大規模並列計算機上での効率的な

rPSCスコアは実数のみの表現で表面形状の相補性を的確に表現し並列計算が可能となるようにPPI 予測システム「MEGADOCK」のたものである（図 2）。他の物理化学的相互作用を虚数部分に導入する

TSUBAME への実装を行った。

ことにより、二つの異なる作用を一つの複素数で計算することができる。

我々が提案する計算に基づく相互作用予測の手法は、数千から数MEGADOCKではリガンドを回転・平行移動させながら全空間に

万 CPU コアが比較的自由に使える近年の計算機システムを前提とおけるスコアの値を畳み込み和として計算する。リガンド回転角のすれば、バイオインフォマティクスの基本的なスクリーニング手法

刻み幅は通常 15°とし、3,600 通りの回転パターンで計算を行う。

になると期待される。

静電的相互作用による項 Eについてはボクセル （i l, m, n）に対する電界Φ i を定義し計算する。アミノ酸残基ごとにCHARMM19[2] にMEGADOCK のドッキング計算

2

MEGADOCK は、タンパク質のペアに対してそれぞれの立体構造情報を利用して剛体モデルによるタンパク質ドッキング計算を行い、その結果として得られる評価値に基づいて相互作用の有無を予測するシステムである。剛体モデルによるドッキングは、タンパク質の構造変化を考慮せず、主として表面形状の相補性に基づいた手法である。

14

基づいて原子に電荷を与え、
ボクセルごとに電荷 q（ l, m, n ）を決定し、静電的相互作用の項 E（, E（l,
m, n ）を決める。以上を用い
R l, m, n ）Lて、ドッキングスコアSを以下のように定義する。

Structure

Docking

PPI prediction

PPI network

Receptor

LigandPost-docking analysis

図 1 PPI 予測によるネットワーク推定

Receptor rPSC

Ligand rPSC
図 2 rPSC とドッキングスコア

タンパク質間相互作用予測における形状相補性と物理化学的相互作用を考慮したスコアの計算量は、畳み込み和の直接計算ではO(N 6 )だが、離散フーリエ変換（ DFT ）と逆離散フーリエ変換（ IFT ）を用いて表現し、高速フーリエ変換（FFT ）を行うことでO (N 3 log N )大規模並列化3に削減することが可能となる [ 3] 。FFT でのスコアS は以下のように表される。

MEGADOCK はMPI ライブラリにより並列化されている。多数のレセ
プタータンパク質とリガンドタンパク質の間での網 羅的 PPI 予測を行う場 合、それぞれのペア毎の計算はほぼ独 立であるため、様々なレベ

rPSC の導入によるスコア関数の一本化によって、FFT の計算回

ルでの並列化が可能である。レセプターとリガンドが入力されたとき、数を減らし、計算の高速化を図っている。従来のドッキングツール

メモリ容量等を考慮してユーザが指定した方式により、複数のプロセッ（ ZDOCK[4,5]）では図のような三つの要 素を三つの複 素 数で計 算

サ間でレセプターとリガンドを分配した並列計算を行うことができる。

しているのに対して、rPSC を用いたMEGADOCK では、ZDOCK の約m 個のレセプターとn 個のリガンドを受け取ったプロセッサは、n 個の4 倍の計算速度向上を実現した。

リガンドの一つずつを順に取り出し、指定された角度刻みごとにFFT 化を行い、そのたびに最内ループとしてm 個のレセプターとの比較を行う。
これは回転角ごとのFFT を無駄に繰り返さないためである。
I/O 能力が高いTSUBAME のようなシステムにおいて有効な手法として、網羅的計算においてレセプターまたはリガンドのFFTを予め全シス
テム内で一度だけ計算し、様々な相手のタンパク質に対してディスクか
らの読み出しで畳み込み計算を直接始める機能をMEGADOCKには実
装した
（図 3）
。このFFTライブラリ化を用いることにより、TSUBAME 1.2

15

MEGADOCKによるタンパク質 間相互作用予測～システム 生物学への応 用～

図 3 FFTライブラリによる高速化

合せに対してMEGADOCKによるドッキング計算を行い、得られた結果システムでは最大 3 倍程度の高速化を達成した。
MEGADOCK では、タンパク質を囲む立方体のサイズを必要最小限に対しクラスタリングなどのポストドッキング解析を行ってPPIを予測しに抑えるため、2 のべき乗だけではなく、2 、3 、5 の三種類の素数の組た。まず、ドッキング計算の結果得られた予測複合体構造の精度につみ合わせを底としてFFT 計算を行い、全体性能の向上を実現している。

いて確認を行った。その結果を図 4（上）に示す。緑が天然構造であり、この時、FFT の底をどのように選ぶかにはトレードオフが存在し、様々な赤が予測構造を示すが、それらがほぼ一致しており、良い予測が行わ

底を準備すれば立方体を最小限にできるが、その一方でライブラリ構

れていることが分かる。また、そのドッキング計算に基づいて行われた成が複雑化する。

PPI 予測の結果について、図 4（下）に結果を示す。ここで対角線 上の一方、GPU を用いてFFT 計算の加速をする場合は、FFT ライブラリの

暖 色は正しく予測できた複合体ペアを示している。このPPI 予測の精読み込み機能はむしろ用いずに、FFT の底を自由に最適に選んでその度は、感 度と特異 度の調和平均であるF 値によって評 価した際、0.415

場で毎回計算するほうが全体性能が高くなる。TSUBAME 2.0 での実という高い値が得られており、類似の研究と比 較しても同等以 上のも装においては、このような点も考慮していく必要がある。

のとなっている[1]。
このベンチマークの結果をふまえて、MEGADOCKの実 用的な性能

システム生物学への応用

4を示す例として、システム生物学における典型的な問題である細菌走化性 系のシグナル伝 達パスウェイの予測を試みた[3]。生物が外 界からの刺激に応答して運 動する性 質を走 性とよび、例えば大 腸菌は栄養 物質に対する化学走性（走化性）を示す。この系の分子間相互作
用のほとんどは既 知であるため、これらのPPI を「正 解」と定義して

16

まず、MEGADOCKの性能評価実験として、当分野で一般的に用いら

MEGADOCK の評 価を行った。公開データベースから収 集した構 造

れるベンチマークデータにある 44 組の複合体を対 象として全対全の情報（タンパク質 13 種 : 構造 89 個）を用いて、MEGADOCK 2.1による網羅的なPPI 予測を行い、精度を検証した。44×44 =1, 936 通りの組

89×89=7, 921通りのドッキングと相互作用予測を行った。結果を図 5

に示す。この走化性系におけるPPI 予測の精度はF 値で 0.436 に達しており、ベンチマークデータを用いて行った性能評 価の際に示された予測精度と同等のものとなっている。また、この過程で、CheYタンパク質とCheDタンパク質との間で図 6 に示すような、これまで知られていない
相互作用の候補が発見されており、それらについても検討を行った[6]。
最 終的に相互作用の有無を確認するには実験による解 析が必要となるが、CheY–CheD–CheC の三者の複合体形成過程を実験で解析し、予測された複合体 構造と比 較することができれば興味深い結果が得られると考えられる。

All-to-all calculation of 44 protein pairs(PPD Benchmark2.0)

Trypsinogen protein andtrypsin inhibitor(PDB id : 1CGI)

Application to bacterial chemotaxis pathway

β- actin and profilin(PDB id : 2BTF)

Green: MEGADOCK2.1 predicted , Red: X-ray crystalline structure

Red bold line : True Positive
Blue dashed line : False Negative
Black line : False Positive

図 5 システム生物学への応用 :細菌走化性系

図 4 PPI 予測結果 : ベンチマークデータ

図 6 予測された新たな複合体構造（ CheY-CheD-CheC ）17

MEGADOCKによるタンパク質 間相互作用予測～システム 生物学への応 用～

おわりに

5

MEGADOCK は、TSUBAME を利用した実験により、大規模並列計算機との相性が良く、システム生物学における重要な系の解析を従来よりも高速に実施可能であることが確認された。今後は、1, 000 ×
1, 000（百万ペア）級の大規模計算を目標として、ガン細胞や微生物の細胞などを対象としたシステム生物学の研究に適用する予定である。現在は肺ガンと関連するヒトEGFR シグナル伝達系 を対象とした、500 × 500 規模のPPI 予測に取り組んでいる。
謝辞
本研究は、文部科学省 最先端・高性能汎用スーパーコンピュータの開発利用「次世代生命体統合シミュレーションソフトウェアの研究開発」、および科学研究費補助金（基盤研究（B）
19300102）の支援を受けて行われたものである。
参考文献[1] 大上雅史 , 松崎由理 , 松崎裕介 , 佐藤智之 , 秋山 泰 ,“MEGADOCK：
立体構造情報からの網羅的タンパク質間相互作用予測とそのシステム生物学への応用 ”, 情報処理学会論文誌 数理モデル化と応用（TOM ）,3: 91-106, 2010.
[2] Katchalski-Katzir E, Shariv I, Eisenstein M, et al., Molecular surface
recognition: determination of geometric fit between proteins
and their ligands by correlation techniques., Proc Natl Acad Sci U
S A, 89:2195-9, 1992.
[3] Chen R., and Weng Z., Docking unbound proteins using shapecomplementarity, desolvation, and electrostatics., PROTEINS,
47: 281-294, 2002.
[ 4 ] Chen R., Li L., and Weng Z., ZDOCK: an initial-stage proteindocking algorithm., PROTEINS, 52 : 80-87, 2003.
[5] Brooks BR, Bruccoleri RE, Olafson BD, et al., CHARMM: A programfor macromolecular energy, minimization, and dynamics
calculations., J Comput Chem, 4:187-217, 1983.
[ 6 ] Matsuzaki Y., Matsuzaki Y., Sato T and Akiyama Y., In silico
screening of protein-protein interactions with all-to-all rigid
docking and clustering: an application to pathway analysis., J
Bioinform Comput Biol, 7:991-1012, 2009.

18

● TSUBAME e-Science Journal No. 2
2010 年 11 月 10 日 東京工業大学 学術国際情報センター発行 © ISSN 2185- 6028
デザイン・レイアウト：海馬 & キックアンドパンチ
編集： TSUBAME e-Science Journal 編集室
青木尊之 渡邊寿雄 関嶋政和 ピパットポンサー・ティラポン 深山史子
住所： 〒 152-8550 東京都目黒区大岡山 2-12-1-E2-1
電話： 03-5734-2087 FAX：03-5734-3198
E-mail： tsubame_j@sim.gsic.titech.ac.jp
URL：
http://www.gsic.titech.ac.jp/

TSUBAME 共同利用サービ ス『みんなのスパコン』TSUBAMEは、
当初は主に東工大学内の研究・教育のために利用されておりましたが、
平成 21 年 7 月よりTSUBAME 共同利用サービスを開始し、学術・産業・社会へと広く貢献しております。

課題公募する利用区分とカテゴリー
共同利用サービスには、「学術利用」、「産業利用」、「社会貢献利用」の3つの利用区分があり、さらに「成果公開」と「成果非公開」のカテゴリーがあります。現在は 随時申請を受け付けており、申請課題は厳正な審査の下、採択の可否を決定します。採択課題の利用期間は当該年度末までです。
東工大学内のみならず、より多くの方にTSUBAMEサービ スを提供
他大学や公的研究機関の研究者の 学術利用［有償利用］

TSUBAME

共同利用とは…

民間企業の方の 産業利用［有償・無償利用］［有償利用］
その他の組織による社会的貢献のための 社会貢献利用

共同利用にて提供する計算資源
共同利用サービスの利用区分・カテゴリー別の利用課金表を下に示しました。
TSUBAME 2.0
における計 算 機 資 源の割 振りは口 数を単 位としており、1口は標 準 1ノード
（12 CPUコア,
3GPU, 55.82GBメモリ搭載 ）の 3000 時 間 分（≒約 4ヵ月）
相当の計算 機 資 源です。
この計算機 資 源は、1000 CPUコアを1日半とか、100 GPUを3.75日といった利用も可能です。
利用区分

利用者

制度や利用規定等

カテゴリー

利用課金

学術利用

他大学または研究機関等共同利用の利用規定に基づく

成果公開

1口：100,000 円

産業利用

民間企業を中心としたグループ「先端研究施設共用促進事業」に基づく非営利団体、公共団体等共同利用の利用規定に基づく

社会貢献利用

成果公開
成果非公開

トライアルユース（無償利用）
1口：100,000 円
1口：400,000 円

成果公開

1口：100,000 円

成果非公開

1口：400,000 円

産業利用トライアルユース制度（先端研究施設共用促進事業）
共同利用サービスの「産業利用」は、東京工業大学学術国際情報センターが実施する文部科学省先端研究施設共用促進補助事業を兼ねております。その中のトライアルユース制度
では、初めてTSUBAMEを利用する民間企業の方に限り、無 償での利 用（1利用期間は最長
1 年間、2 回まで）が可能です。この制度でスパコンTSUBAMEの敷居を下げることで、より多くの方にスパコンの魅力を体験していただいております。

お問い合わせ●東京工業大学 学術国際情報センター 共同利用推進室 Tel. & Fax. 03-5734-2085●e-mail ／ tsubame@gsic.titech.ac.jp
詳しくは／ http://www.gsic.titech.ac.jp/tsubame/をご覧ください。