高性能計算 、ハイ・パフォーマンス・コンピューティング (high-performance computing、HPC )は、計算科学 のために必要な数理 からコンピュータシステム 技術までに及ぶ総合的な学問分野である[ 1] [ 2] [ 3] [ 4] [ 5] [ 6] 。
概要
1980年代以前はベクトル計算機 が主流であったが、1990年代以降ではスカラー計算機 を超並列 [ 6] にするのが主流になっている。HPC用クラスタ をHigh-Performance Computing Cluster、HPCC(en:HPCC )という。システムの構築や利用には高いレベルの技術的スキルが不可欠であるが、汎用の部品で構成することができる。柔軟性、演算性能の面で優れ、比較的低コストであるため、並列コンピューティングによるHPCはスーパーコンピュータ 業界に普及しつつある[ 2] [ 3] [ 5] [ 6] [ 7] 。
科学研究に使われる数値計算 に対して用いられることが多く、関連する用語に高性能技術計算 (high performance technical computing 、HPTC )がある。工学的利用(例えば計算流体力学 (computational fluid dynamics )[ 8] や、仮想的なプロトタイプ の構築・試験など)を指す。最近 [いつ? ] では、クラスタベースの高性能計算機はビジネス にも利用されるようになってきた。例えばデータウェアハウス 、LOB アプリケーション(line-of-business application )、トランザクション 処理などである。
最も高性能なスーパーコンピュータはTOP500 リストで見ることができる。TOP500は世界中の最も高性能なコンピュータシステムで構成された上位500機のリストである。リストは年に2度6月と11月に改訂され、それぞれISC(International Supercomputing Conference )とSC(Supercomputing Conference )で発表される。
なお、Highly Parallel Computing(高並列計算)[ 9] の頭文字もHPCとなるが、一般にこの分野でHPCはhigh-performance computingの略であり[ 2] [ 3] [ 5] [ 6] [ 10] 、特に説明などなしにHPCがHighly Parallel Computingの略であることはまずない。
GPGPU
GPGPU (General-Purpose computing on Graphics Processing Units ) は、「GPU (Graphics Processing Unit ) による汎用計算」という意味の頭字語 (イニシャリズム)で[ 5] 、GPU Computing とも呼ばれることがある。この文脈におけるComputing はグラフィックス処理に限らない計算処理全般を意味している[ 11] 。
GPUはその本来の用途であるグラフィックスパイプライン の要求に由来する高い計算能力とスループットを持つ、SIMD タイプの高性能高並列プロセッサである。GPUにおける演算ユニットの最小単位は「ストリームプロセッサ」[ 12] あるいは「ストリーミングプロセッサ」[ 13] と呼ばれることがあるが、このストリームプロセッサ1つ1つは単純な構造であり、オペレーティングシステム (OS)・アプリケーションソフトウェア の実行や周辺機器制御などの汎用処理全般をつかさどるマイクロプロセッサ すなわちCPU のように複雑かつ広範な処理をこなすことはできない。しかし、単純な構造であるがゆえに集積度を高くすることができるため、理論演算性能(FLOPS 値)に関していえば、GPUは同世代の製造プロセスにおけるCPUと比べて遥かに高い性能を持っている。また、CPUと比較して電力あたりの理論演算性能(ワットパフォーマンス、Performance per Watt )すなわち電力効率が高いのもGPUの特徴である。そのため、HPC分野においても、x86 /x64 ベースのCPUを多数用いるより、GPUを多数用いたほうが安価かつ効率的なシステムとなることが期待できる。
GPGPUのきっかけとなったプログラマブルシェーダー が登場した当初は、GPUはコンピュータグラフィックス に特化した設計であり、GPGPUプログラムの開発も難しかった。しかし、統合型シェーダーアーキテクチャ の登場以降、CUDA やOpenCL のように、GPUを汎用の並列プロセッサとしてアクセス可能なプログラミングインターフェイス (API ) およびプログラミング言語 拡張の標準化とサポート・普及が始まっており、C言語 のようなよく使われている言語も使用可能である。ただしCUDAやOpenCLなど、GPGPUをサポートするAPIにおいてデバイス側のカーネル記述に使われるC/C++ は独自拡張が施されており、CPU向けのプログラム記述に使用される汎用C/C++ とは異なる。また、CUDAはホスト側のC/C++ にも拡張が入っており、専用のコンパイラを使用する必要があるなど、GPGPU対応アプリケーションソフトウェアを開発するためには従来のCPU向けプログラミングとは異なる技術や知識が必要となる。
HPC向けGPU製品
NVIDIA Tesla やAMD FirePro Sシリーズといった、HPC分野での汎用計算を主眼において設計されたプロセッサやグラフィックスボード も製造・販売されている。これらはNVIDIA GeForce やAMD Radeon といったコンシューマー向け製品で使われるチップをベースにしてはいるが、グラフィックス出力の機能を持たず、「GPUアクセラレータ」や「コンピューティングプロセッサボード」と呼ばれることもある[ 14] [ 15] 。また、PCやエントリーモデルワークステーション向けのグラフィックスカード と異なり、HPC向けにECC メモリのサポートも備えている。
採用実績
東京工業大学 のスーパーコンピュータ「TSUBAME 」などが、GPGPU ベースの代表的なHPCシステムとして挙げられる。
TOP500 の上位には、インテル やAMD の汎用CPUに加えてNVIDIA Tesla GPUを多数搭載したスーパーコンピュータが名を連ねている[ 16] [ 17] 。
2014年11月度のGreen500 においては、AMD FirePro S9150 GPUを搭載したドイツGSI研究所 のL-CSCクラスターが首位を獲得した[ 18] [ 19] 。
メニーコアシステム
x86 アーキテクチャベースのメニーコア システムとして、インテルはコードネーム Larrabee と呼ばれる製品を開発していたが頓挫している。Larrabeeの思想自体はXeon Phi に受け継がれ、PCI Express 接続による独立したアクセラレータ・デバイスとして開発・販売が続けられている。
2015年6月度のGreen500 では、PEZY Computing のメニーコアプロセッサ「PEZY-SC 」[ 20] を搭載したスーパーコンピュータが1位から3位までを独占した[ 21] 。PEZY-SCはPCI Express接続によるコプロセッサであり、GPU (GPGPU) と似た点もある。しかし、GPUがSIMD型 (SIMT (英語版 ) 型) であるのに対し、PEZY-SCはMIMD 型を採用しており、より柔軟性すなわち使いやすさやソフトウェアの開発しやすさを狙った設計となっている[ 22] 。
脚注
^ 岩波講座計算科学別巻『スーパーコンピュータ』「はじめに」より
^ a b c 数値線形代数 の数理とHPC, 櫻井鉄也, 松尾宇泰, 片桐孝洋編(シリーズ応用数理 / 日本応用数理学会 監修, 第6巻)共立出版 , 2018.8
^ a b c The Art of High Performance Computing for Computational Science, Vol. 1, Techniques of Speedup and Parallelization for General Purposes, Edited by Masaaki Geshi (2019), Springer, ISBN 978-981-13-6194-4 .
^ The Art of High Performance Computing for Computational Science, Vol. 2, Advanced Techniques and Examples for Materials Science, Edited by Masaaki Geshi (2019), Springer, ISBN 978-981-13-9802-5 .
^ a b c d 計算科学のためのHPC技術1, 下司雅章 編/片桐孝洋,中田真秀,渡辺宙志,山本有作,吉井範行,Jaewoon Jung,杉田有治,石村和也,大石進一 ,関根晃太,森倉悠介,黒田久泰 著, ISBN 978-4-87259-586-4 , 2017年03月, 大阪大学出版会 .
^ a b c d 計算科学のためのHPC技術2, 下司雅章 編/南一生,高橋大介,尾崎泰助,安藤嘉倫,小林正人,成瀬彰,黒澤一平 著, ISBN 978-4-87259-587-1 , 2017年03月, 大阪大学出版会 .
^ 片桐孝洋. (2015). 並列プログラミング入門: サンプルプログラムで学ぶ OpenMP と OpenACC . 東京大学出版会 .
^ Computational Fluid Dynamics -Incompressible Turbulent Flows-, Takeo Kajishima & Kunihiko Taira (2017), Springer.
^ Gottlieb, A., & Almasi, G. (1989). Highly parallel computing. Redwood City, CA: Benjamin/Cummings.
^ 例えばインテル 社のXeon Phi のキャッチコピーは「Highly Parallel Computing Engine for HPC」である。
^ About GPGPU.org - ウェイバックマシン (2018年10月27日アーカイブ分)2023年9月6日 閲覧。
^ エルミタージュ秋葉原 – AMD、ストリームプロセッサ数896基の新ミドルレンジ「Radeon HD 7790」発表 2023年9月6日 閲覧。
^ ホワイトペーパー; NVIDIA の次世代 CUDA™コンピュートアーキテクチャ:Fermi™ (PDF ) 2023年9月6日 閲覧。
^ 世界をリードするスーパーコンピュータで アクセラレータの採用が広がる 2023年9月6日 閲覧。
^ NVIDIA Tesla C1060 | 株式会社 エルザ ジャパン 2023年9月6日 閲覧。
^ 【PC Watch】 中国のNVIDIA Tesla搭載スパコンがTOP500の2位に 2023年9月6日 閲覧。
^ 【PC Watch】 TOP500でOpteron 6274/Tesla K20X搭載システムが1位 2023年9月6日 閲覧。
^ AMD FirePro S9150搭載マシンが、Green500でNo.1を獲得 - 最新情報 - ニュース - 株式会社エーキューブ 2023年9月6日 閲覧。
^ 「AMD FirePro」搭載スーパーコンピューターが Green500 Listで首位を獲得-Sapphire PGS-プロフェッショナル・グラフィックスソリューション - ウェイバックマシン (2015年3月20日アーカイブ分)2023年9月6日 閲覧。
^ PEZY-SCプロセッサ - PEZY Computing - ウェイバックマシン (2015年3月2日アーカイブ分)2023年9月6日 閲覧。
^ 国産スパコン“PEZYシステム”がGreen500の1~3位を独占 ~省エネ高性能を競う世界ランキングで - PC Watch 2023年9月6日 閲覧。
^ 100倍高速なメモリーを独自開発、異色ベンチャーの野望 | SAFETY JAPAN [セーフティー・ジャパン] | 日経BP社 2023年9月6日 閲覧。
関連項目
外部リンク
Clustering Portal