科学技術計算専用ロジック組込み型プラットフォーム・アーキテクチャ技術をもちいた化学計算専用計算機の開発
― 概要と成果 ―

長嶋 雲兵, 佐々木 徹, 大谷 泰昭, 上原 正光, 塚田 捷, 村上 和彰


Return

1 はじめに ―研究趣旨―

計算化学,計算物理学に代表される「科学技術計算」,「数値シミュレーション」は今日,研究室や実験室のレベルを超え,産業界の多くの現場での需要が大きい材料科学・生命科学の基盤技術となっている.科学技術会議 情報科学技術委員会の「情報科学技術先導プログラムの重点領域の設定について」(平成11年7月)[1]の中でも次のように指摘されている.すなわち,「国民生活に役立ち,また産業界にとって有益な実用的な問題について,信頼性の高いシミュレーションを行うためには,単に大規模であるだけでなく,ミクロとメゾとマクロ,気体と液体,流体と構造,流体と熱・化学反応など,異なる物理法則を連成させ,複雑な系の統合的なシミュレーションを行うことが必要になる.また多くの問題では,異なる時間スケール・空間スケールの現象が共存し,シミュレーションが困難になるが,こうした困難を解決し,統合的な解析を行うためには,膨大な計算速度,記憶容量を実現することが重要であると同時に,モデル化手法・アルゴリズム・計算手法・並列化手法などの開発が重要である.このような技術は,物質科学,生命科学,医療,環境,安全,製造業など多くの分野で必要とされ,社会的な重要性は極めて高いものである.」
このように,統合的な数値シミュレーションの技術開発に対する重要性の認識,ならびに,当技術に対する産業界からの潜在的な要望が現として存在するにも関わらず,それを実現するソフトウェア,ハードウェアに関わるシステムの現状は必ずしも産業界の要望に応えきれていない.たとえば,これまでの数値シミュレーションのプラットフォームはもっぱらベクトル計算機に代表されるスーパーコンピュータであったが,これではせいぜい1機関に1システム程度の導入に留まり,設計開発現場で技術者がパーソナル・ユースに利用するのは実質的に不可能であった.結局のところ技術者が日々の設計開発業務で数値シミュレーションを実行できるプラットフォームはパーソナル・コンピュータというのが実状であり,大規模数値シミュレーションの応用がごく一部にのみ限定されるという問題を抱えている.
そのため,本研究では研究現場,設計開発現場におけるパーソナル・ユースに供することが可能な程度にコスト(導入コスト,運用コスト)対性能比に優れた「科学技術計算専用ロジック組込み型シミュレータ」を開発することを目的とした.
これを実現するために,計算物理,計算化学,等の各計算科学分野が有する計算上の独自性を反映した専用/準専用システムというコンセプトに立脚し,価格対性能比に優れたコモディティ・ハードウェアとシステムLSI(大規模集積回路)技術を駆使した高性能専用ハードウェアを組み合わせることを考えた.
本稿では,「科学技術計算専用ロジック組込み型プラットフォーム・アーキテクチャ技術をもちいた化学計算専用計算機」の開発と得られた成果の概要について報告する.研究開発期間は平成12年度〜16年度の5年の間であった.本研究の成果は多く,それらの詳細は本号に掲載された他の論文[2 - 4, 7, 9, 11, 13 - 15]を参照されたい.

2 研究の概要

上記の趣旨を実現するためには,システムとアプリケーションを同時に開発する必要がある.そのためシステム開発テーマとして「プラットフォームおよび専用ロジックのアーキテクチャ開発」を行い,同時にアプリケーション開発テーマとして「科学技術計算プログラムのプラットフォーム向き並列分散化および組込みソフトウェア化に関する研究」を行った.これらの研究は,常時密接に連携をとりながら遂行した.

2. 1 プラットフォームおよび専用ロジックのアーキテクチャ開発

本研究では,システム・サイドから研究趣旨に沿った研究開発を進めた.具体的には,「科学技術計算プログラムのプラットフォーム向き並列分散化および組込みソフトウェア化に関する研究」における各種計算科学アプリケーション・プログラムの実装,評価に供するプラットフォーム・システムの開発,および,「科学技術計算プログラムのプラットフォーム向き並列分散化および組込みソフトウェア化に関する研究」の研究成果を反映してプラットフォームと適合性の良い計算科学アプリケーション・プログラムにおける核となる計算部分のハードウェア・ロジック化,専用LSI化を実施した.

2. 1. 1 プラットフォーム・システムの開発[2]

早期に「科学技術計算プログラムのプラットフォーム向き並列分散化および組込みソフトウェア化に関する研究」に供するために,Compact PCI規格準拠の計算ボード(EHPCボード:以下EHPCは,Embedded High Performance Computingの略である.)を開発した.プラットフォームのEHPCボードには,汎用組込みプロセッサSH4を4個搭載する.また,これを複数枚装填するCompact PCI規格の筐体を製作した.
Figure 1 に作成したプラットフォームシステムのブロックダイアグラムを示した.プラットフォームシステムの内部構成は階層構造となっている.第一層はフロントエンドPCとEHPCユニット上の汎用PCから構成されるPCクラスタで,これは既存のソフトウェアがMPIなどを用いて既に並列化されている場合が多く,その場合には粒度の大きい並列化が為されている部分をそのまま活用できるという長所がある.
第二層は,PCクラスタを構成するEHPCユニット上の汎用PCをホストとし,CompactPCIバスで接続されたEHPCボード上のコントローラCPU群である.


Figure 1. Block Diagram of Platform system

第三層はEHPCシステムでは専用LSIを用いたリーフの演算ノードでとなる.階層化された,ヘテロジニアスなマルチプロセッサシステムである.ただしプラットフォームシステムでは,コントローラCPUとCPUを搭載した.
プラットフォームでは,ボード間に跨るアプリケーションの並列性能を検証するため,1ユニット当りのボード枚数を7枚とした.また,ユニット間に跨るアプリケーションの並列性能を検証するため,ユニットを4つ製作した.これをハードウェア面でのプラットフォームとした.また,当該プラットフォーム・システム上に各種計算科学アプリケーション・プログラムを実装するための共通通信ライブラリ(Tree-Comm)を独自に開発し,これをソフトウェア面でのプラットフォームとした.
「科学技術計算プログラムのプラットフォーム向き並列分散化および組込みソフトウェア化に関する研究」と連携して,当該プラットフォーム・システム上に各種計算科学アプリケーション・プログラムを移植,実装して性能評価,および,核となる計算部分の抽出を行った.
計算ボードとして,科学技術計算用途向け専用ロジック・アーキテクチャの開発研究によって開発した科学技術計算専用ハードウェア・ロジックを実装可能なCompact PCIボードを開発した.


Figure 2. Block Diagram of EHPC Board

EHPCボードの構成をFigure 2に示した.斜線部に専用演算ノードを置くことにより,専用計算機が実現されるアーキテクチャとなっている.左下のCPUは汎用で,EHPCボード上ではEHPCボード全体のコントローラとして,ホストPCとの通信,個々の演算ノードの制御,さらにはDMAコントローラ,デバグ用のシリアル通信,タイマと言った多くの汎用な作業を担う.
Figure 3 に作成した3種類のボード[2]を示した.開発したボードは,A)汎用組込みプロセッサを4個搭載した半汎用計算ボード,B)計算化学用の二電子積分計算専用LSI(大規模集積回路)[3]を2個搭載するボード,および,C)計算物理学用の3次元FFT(高速フーリエ変換)ハードウェアを実装するためのFPGA(Field Programmable Gate Array)を4個搭載したボード[4]の3種類を開発した.


Figure A. A) Semi general computation board: Four general CPUs and a general purpose CPU are equipped as computation nodes.


Figure B. B) Electron repulsion integral calculation board: Two LSIs for two electron repulsion integral evaluation and a general purpose CPU are equipped as computation nodes.


Figure C. C) 3D FFT calculation board: Four FPGAs for three dimensional FFT and a general purpose CPU are equipped as computation nodes.


Figure 3. Compact PCI Boards for special purpose computation.

2. 1. 2 科学技術計算用途向け専用ロジック・アーキテクチャの開発

プラットフォーム・システム上に材料科学,生命科学分野における重要なアプリケーションを移植,実装して性能評価,および,核となる計算部分の抽出,そのハードウェア・ロジック化を行った.材料科学,生命科学分野における重要なアプリケーションは分子軌道法および密度汎関数法であり,核となる計算部分は,それぞれ二電子積分計算と3次元FFT計算であった.
本解析の結果を踏まえ二電子積分計算専用LSIの開発,および3次元FFTハードウェアの開発とそのFPGAへの実装を行った.

2. 2 材料科学,生命科学分野における重要なアプリケーションのプラットフォーム向き並列分散化および組込みソフトウェア化に関する研究

本研究では,以下の2つを検討した.
  1. 分子軌道法
    (a) 非経験的分子軌道法:GAMESS[5]
    (b) 大規模分子軌道法(フラグメントMO [6]):ABINIT-MP
    (c) 分子軌道法を用いた分子力場法:Xsi[7]
  2. 密度汎関数法
    (a) Discrete VariationaXa法:DVXa[8, 9]
    (b) Car-Parrinello法[10]:KAPPA[4]
いずれの場合もアプリケーション・プログラムが異なるだけで,アプローチは以下のように共通化した.
プラットフォーム・システム上にアプリケーション・プログラムを移植,実装して性能評価,および,核となる計算部分の抽出を行った.
この結果,分子力場法(Xsiプログラム)およびDV法(DVXaプログラム)は専用ハードウェア・ロジックを待たずとも,プラットフォームのEHPCボード上の汎用組込みプロセッサSH-4上での実装で十分な性能を達成したため,専用ハードウエア・ロジックの開発は行わなかった.
この結果を元に開発した専用ハードウェア・ロジック(二電子積分計算専用LSIと3次元FFTハードウェア)を使用するように対応するGAMESSおよびKAPPAを改造し,稼動,性能評価を行った.そして,本研究課題「科学技術計算専用ロジック組込み型シミュレータ」の実用性,コスト対性能比面における優位性等を検証した.

3 研究成果の概要

プラットフォーム・システム上に5種類のアプリケーション・プログラムを移植して,その核となる計算部分を抽出し,そして,その専用ロジック化,専用LSI化を図り,最終的には当該専用ロジックを利用するように対応するアプリケーション・プログラムを改造して稼動させるという,ハードウエア開発とソフトウエア開発が極めて密接,かつ,有機的に連携して当初の研究目標を達成した.
成果のまとめとして,Table 1に作成したEHPCボードシステムと移植したプログラムの関係を示した.

Table 1. Correspondence of hardwares and programs
ProgramPlatformFPGASpecial LSI
GAMESS×
ABINIT MP×
Xsi××
DVXa××
KAPPA×

3. 1 プラットフォームおよび専用ロジック・アーキテクチャ開発

個々のハードウエア開発としては以下の4つの成果を上げることができる.
(1)「組込みシステム」構築のアプローチを高性能科学技術計算分野に適用し,世界で初めてCompact PCI規格準拠システムおよび組込みプロセッサSH-4を用いたボードを作成した[4].
(2)世界で初めて二電子積分計算専用LSI(Eric)の製作,稼動に成功した. Ericの概要は,Die Size: 5mm*10mm, Logic: 2.1MGates, Memory: 704Kbytes, Clock: 200MHz, Power(Max.): 2.1W(4.2W)である.  
(3) (2)で開発したLSIをCompact PCIボードに装填したボードを作成した.二電子積分計算に関し,最適化前のEricの性能・消費電力比は,Pentium4(3.2GHz, 1MB L2, 2GB Memory)とほぼ同等であった.
(4)密度汎関数法のCP(Car-Parrinello)法の核計算部分である3次元FFTのハードウェア・アルゴリズムを開発し,それを300万ゲート相当のFPGA(Xilinx社製Viretex-II)に実装して,1個のFPGAで500MFLOPSという高性能を達成した.これは,インテル社のXeonチップ(2.4GHz)上で稼動する最速のソフトウェアを用いたFFT演算と比べて2〜4倍の性能に相当する.

3. 2 分子軌道計算プログラムのプラットフォーム向き並列分散化および組込みソフトウェア化に関する研究

GAMESSとKAPPAはそれぞれ対応する専用ロジック(二電子積分計算専用LSIおよび3次元FFTハードウェア・ロジック)を利用して二電子積分計算および3次元FFT計算を行うよう改良を加え,稼動に成功した.プラットフォーム・システム上での性能評価の結果,クラスタ構成により十分な性能上のスケーラビリティが得られること,および,専用ロジックへの核となる計算部分のオフロードによりアムダールの法則に従った性能向上が得られることをそれぞれ確認し,本研究の「専用ロジック組込み型」アプローチに有効性を実証した.
GAMESSおよびABINIT-MPプログラムの移植プロセスにおいて,新規電子積分計算法(新小原法)[11]が開発され,また従来法との融合を実現した方法(Hybrid法)を実現した[12, 13].これらの方法は従来法の他のプログラムに組込まれ,高性能を示した.特にこれらはPCクラスタなど分散メモリ型並列計算機上で高性能を示した.そのため,これらのアルゴリズムは独立に商用プログラムに組み込まれ,世界各国で高い評価を受けている.さらに大規模分散メモリ並列システム上で高い有効性を示すBuffered法の開発も行われ,メモリアクセス性能と演算性能のバランスをとった計算実行が可能となった.[14] これらによりスケーラブルなメモリ空間の増加と演算性能増加によるトータル性能の大幅な向上を実現することが可能となった.本研究成果に基づき,非経験的分子軌道法の次なる高速化のターゲットが一般化固有値問題の解法にあることを改めて明らかにした.
さらにCar-Parrinello法における3次元FFT計算を行うFPGAシステムは,従来の並列計算機上のソフトウエアでの実行性能を大幅に凌駕し,ナノテクノロジーで注目されている金属クラスタや表面における電子状態の第一原理計算の高速化を実現した.
本研究成果に基づき,Car-Parrinello法の次なる高速化のターゲットが軌道の直交化にあることを改めて明らかにした.本研究成果の波及効果はCar-Parrinello法の高速化に留まらず,これにより,Volume Renderingなど3次元画像処理を一層高速化する可能性を開いた.特に医療画像処理分野における高速3次元画像処理で注目を集めている.

3. 3 波及効果,発展方向,改善点

本研究の実施時期である平成12年度〜16年度の5年の間に,科学技術計算向け高性能計算(HPC)システムのプラットフォームは従来の並列ベクトル型スーパーコンピュータ(代表例:地球シミュレータ)からPCクラスタ,さらには,IBM BlueGene/Lに代表される低消費電力プロセッサをベースにしたMPP(Massively Parallel Processor)へと大きく変遷した.また,半導体技術のテクノロジー・ドライバもPC(パーソナル・コンピュータ)向けの高性能マイクロプロセッサ(IntelのPentiumやItanium)から,ゲーム機等の情報家電向けの(たとえば)ソニー−東芝−IBM共同開発のCellプロセッサへと様変わりした.
このような状況の中,将来のHPCプラットフォームの姿を予想するのはたとえ2〜3年先と言えども極めて難しいものの,本研究で検証した「専用ロジック組込み型」というアプローチは以下の点で1つの可能性,方向性を示唆しているものと考える.すなわち,
  1. アプリケーション・プログラムの実行においてある支配的な核となる計算部分を抽出し,それをメインの汎用プロセッサからサブの専用プロセッサあるいは専用ハードウェアにオフロードして実行するという考え方は情報家電等の組込みシステムでは常識的だが,科学技術計算分野でも有効である,
  2. プロセッサ高性能化のためにクロック周波数の向上だけに頼るアプローチは限界に近づきつつあり,かつ,消費電力面でも不利であり,今後は本研究で開発した二電子積分計算専用LSI「Eric(Electron repulsion integral calculator)」(および,奇しくもEricと類似の構成を採ったCellプロセッサ)のようなマルチコア化,カスタム化といったアプローチが有効である,
  3. 上記(1)とも関連して,プログラム実行の核となる計算部分は専用化,カスタム化の対象とするが,それ以外の汎用部分は可能な限りコモディティのハードウェア,ソフトウェアを活用するというアプローチはハードウェアの開発コスト,アプリケーション・プログラムの改造コストの面でも優位性があり,コスト対性能比的にも競争力がある,といった点である.
本研究により,高性能かつ大規模な科学技術計算分野においても「組込みシステム」および「専用ロジック組込み型」のシステム構築アプローチが有効であることを実証した.特に,今後頭打ちが予想される高性能マイクロプロセッサの動作クロック周波数,より厳しさを増す低消費電力化への要求,等を勘案すると,本研究で開発した二電子積分計算専用LSI「Eric」,および,それと類似のアーキテクチャを採用しているCellプロセッサのようなクロック周波数よりはマルチコアで性能を稼ぐと同時に低消費電力化を図り,かつ,アプリケーションにカスタム化したデータパスを有するようなLSIアーキテクチャが主流になってくると予想する.このような技術の流れに本研究は乗っており,本研究成果を以下の方策により普及,発展させて行く.
・二電子積分計算専用LSI「Eric」の改良:
Ericで採用したヘテロジニアスなマルチコア構成は有効であったものの,メモリサブシステムの性能上のボトルネックが原因で所望の性能に達していない.この問題を解決することで,本LSIの性能競争力を高め,学界,産業界への普及を図る.あるいは,Ericと類似の構成を採るCellを用いて二電子積分計算プログラムを実装する.
・開発あるいは改良した各種アプリケーション・プログラムの普及促進:
本研究において各種の科学技術計算アプリケーション・プログラムをプラットフォーム・システム上に移植する際に,単なる並列分散化,組込みソフトウェア化以外にも様々なチューニングを施した.結果として,プログラム単独で見ても,極めて高性能なアプリケーション・プログラムに仕上がっている.これらアプリケーションの学界,産業界への普及を促進する.
本研究に付随した効果と方向性に関して,3次元FFTハードウェア・ロジックの3次元画像処理の適用は,応用範囲が広く,たとえば核磁気共鳴装置MRIなどの最新観測技術にもとづく医療3次元画像処理の高速化を実現し,手術計画策定やガン治療の精密化の可能性を拡大することに寄与する.そのため,より低電力消費型を実現することをとおして医療機器などへの組込みを通して,本研究成果の普及をはかる.

4 終わりに

1991年にカナダ・アルバータ大学の藤永茂教授がCBI Newsに分子計算専用機の開発について寄稿している[16].そこでは,「(1991年現在)分子計算,物性計算の全体が持つ将来性に(IBMやCrayといった)メーカーたちが強い関心を寄せ始めたことは明らかである.しかし,これらの動きはすべてソフトウェアの商品化の形を取っていて,ハードウェアとして分子計算専用機が出現する気配は今のところ無い.」(括弧内,長嶋)と言いつつも「コンピュータが,分子計算の論文を作るための箱として使用される時代が終わったとき,分子計算専用機が商業的に採算が取れるようになるだろう.」と予想している.そして,「(個人が持つことのできる)高性能分子計算専用機は研究者にとっての,論文作成ボックスではなく便利重宝なCAT: Computer Aided Thinking, DADをもじった新造語,の箱になる.これがあるかないかで,研究者の化学的思考の形成,展開の速度が左右される」様になるとも予想されている.
藤永先生は,このような状況の出現を2000年(10年後)に予想されていたが,15年後の2005年においてもまだ実現されていない.本研究は,まさに研究者のパーソナルユースのための高性能専用計算機開発が目的であり,計算化学におけるCAT実現のために今後もさらに開発を進めていく.

本研究の一部は文部科学省の科学技術振興調整費 総合研究「科学技術計算専用ロジック組込み型プラットフォーム・アーキテクチャに関する研究」(代表 村上和彰 九州大学教授)によるものである.

参考文献

[ 1] http://www.mext.go.jp/b_menu/shingi/kagaku/90722.htm
[ 2] T Sasaki, K. Murakami, J. Comput. Chem. Jpn, 4, 139 (2005).
[ 3] K. Nakamura, H. Honda, H. Umeda, H. Komatsu and K. Murakami, J. Comput. Chem. Jpn., 4, 155 (2005).
原田宗幸, 中村健太, 桑山庸史, 上原 正光, 佐藤比佐夫, 小原繁, 本田宏明, 長嶋雲兵, 稲富雄一, 村上和彰, 情報処理学会研究報告, 2002 -ARC-152, pp.133-138, IPSJ- ARC02152023 (2003).
[ 4] T. Sasaki , K. Betsuyaku, T. Higuchi and U. Nagashima, J. Comput. Chem. Jpn., 4, 147 (2005).
佐々木徹, 溝口大介, 長嶋雲兵, 情報処理学会論文誌, 45, 313-320 (2004).
[ 5] M. W. Schmidt, K. K. Baldridge, J. A. Boatz, S. T. Elbert, M. S. Gordon, J. J. Jensen, S. Koseki, N. Matsunaga, K. A. Nguyen, S. Su, T. L. Windus, M. Dupuis, J. A. Montgomery, J. Comput. Chem., 14, 1347 (1993).
[ 6] K. Kitaura, T. Sawai, T. Asada, T. Nakano, M. Uebayashi, Chem. Phys. Lett., 312, 319 (1999).
[ 7] Y. Inagaki, J. Comput. Chem. Jpn., 4, 197 (2005).
[ 8] T. Sasaki, U. Nagashima, M. Tsukada, J. Chem. Software, 6, 165 (2002).
[ 9] T. Sasaki, U. Nagashima, J. Comput. Chem. Jpn., 2, 111 (2003).
[10] R. Car and M. Parrinello, Phys. Rev. Lett., 55, 2471 (1985).
[11] H. Honda, T. Yamaki, S. Obara, J. Chem. Phys., 117, 1457 (2002).
H. Honda, S. Obara, J. Comput. Chem. Jpn., 4, 165 (2005).
[12] 稲冨雄一,中野達也,北浦和夫,長嶋雲兵, IPSJ Symposium Series, 2001(6), 93-94 (2001).
[13] Y. Inadomi, S. Obara, U. Nagashima, J. Comput. Chem. Jpn., 4, 175 (2005).
[14] Y. Inadomi, T. Sasaki, U. Nagashima, K. Murakami, J. Comput. Chem. Jpn., 4, 189 (2005).
[15] H. Umeda, Y. Inadomi, H. Honda and U. Nagashima , J. Comput. Chem. Jpn, 4, 179 (2005).
[16] 藤永茂, CBI News, 11(1), 11 (1991).


Return