以下は、弊社のプログラムの高速化・並列化サービスの主な事例の一覧です。
その対象分野は,物質・物性,化学・量子化学,海洋・気象学,航空宇宙・ターボ機械・流体解析,医学・生体工学,地球物理・プラズマ物理, その他多岐にわたります。
ここでは、英国国立スーパーコンピューティングリソースプロジェクト:HECToR、
EUのHPCプロジェクトPerformance Optimisation and Productivity (POP)、
EUのエクサスケールプロジェクト EXascale Algorithms and Advanced Computational Techniques (EXA2CT)、
および日本国内のお客様の事例を掲載しています。
HECToRプロジェクトにおける実際の簡単な最適化事例を、ケーススタディーとして、また詳細なチューニングの実際を、チューニングレポートとして掲載しました。
物質・物性分野
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
CASTEP |
チューニング方法 |
バンド並列化 |
成果 |
速度が4倍化しスケーラビリティが改善 推定削減コスト(円換算):3億2千万円
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
CASTEP |
チューニング方法 |
時間依存DFT機能の追加 |
成果 |
時間依存DFT機能を追加し、256コアまで良好なスケール性を示した。
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
CASTEP/ONETEP |
チューニング方法 |
limited-memory版BFGSアルゴリズム(L-BFGS)への切り替え |
成果 |
パフォーマンス改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
CONQUEST |
チューニング方法 |
Kerker前処理,K点並列,Methfessel-Paxton
smearingの導入 |
成果 |
パフォーマンスの改善と機能追加 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
CONQUEST |
チューニング方法 |
効率的な動的負荷バランスの実装による線形スケール性改善 |
成果 |
MDシミュレーション計算時間が40%-90%削減された。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
CONQUEST |
チューニング方法 |
スピン分極、van der Waals相互作用計算追加。マルチコアCPU対応ハイブリッド並列化 |
成果 |
1000コアまで弱スケールした。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
VASP |
チューニング方法 |
OpenMP+MPI版VASPの開発,密度汎関数理論/ハートリー・フォック(Hartree-Fock)コードの再構築 |
成果 |
パフォーマンス改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
VASP |
チューニング方法 |
並列処理の最適化,K点並列化の導入 |
成果 |
3倍から12倍の加速化とスケーラビリティの改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子-分子散乱シミュレーション |
アプリケーション名 |
UKRMol |
チューニング方法 |
ハミルトニアン行列の構築と対角化計算の並列化 |
成果 |
負荷バランスとスケーラビリティが向上、CCPForgeへ公開 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
パルスレーザによる多原子分子の電子散乱シミュレーション |
アプリケーション名 |
RMT |
チューニング方法 |
負荷バランスとMPI通信の最適化、伝搬関数コードの改良 |
成果 |
8192コアの場合に30%高速化、伝搬関数コードの改良で80%高速化 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
パルスレーザによるヘリウム原子散乱シミュレーション |
アプリケーション名 |
HELIUM |
チューニング方法 |
OpenMP/MPIハイブリッド並列、配位空間から運動量空間への変換コードの改良 |
成果 |
8千コアまでリニアにスケールした。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
量子モンテカルロアプリケーション |
アプリケーション名 |
CASINO |
チューニング方法 |
OpenMP,階層型並列処理 |
成果 |
パフォーマンスが4倍に改善 推定削減コスト(円換算):1億3千万円
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
量子モンテカルロアプリケーション |
アプリケーション名 |
CASINO |
チューニング方法 |
MDとの連成実装 |
成果 |
82,944コアで線形な弱スケーリング性を示した。
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
磁気モデリングコード |
アプリケーション名 |
MicroMag |
チューニング方法 |
PETScライブラリとParMetisの適用による並列化 |
成果 |
100245要素ケースで初期化を省いた実行時間が16コア上で5倍高速化
詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
密度汎関数タイトバインディング法コード |
アプリケーション名 |
DFTB |
チューニング方法 |
計算スケール性、負荷バランス、通信負荷の分析と概念実証の作成評価 |
成果 |
MPI通信と計算の同時実行による性能改善の可能性を提案。
詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
一般個体輸送モデルによる粒子トラッキングコード |
アプリケーション名 |
GITM |
チューニング方法 |
OpenMP性能改善とMPI並列による並列性能改善の予測分析 |
成果 |
ベクトル化の促進とNetCDFによる並列I/Oの導入によるスケーラビリティ改善の提案。
詳しくはこちら
|
化学・量子化学分野
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
物性学シミュレーション |
アプリケーション名 |
CP2K |
チューニング方法 |
変換ルーチンの最適化,OpenMPの実装 |
成果 |
速度改善とスケーラビリティの改善 推定削減コスト(円換算):6億3千万円
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
材料モデリング |
アプリケーション名 |
CRYSTAL |
チューニング方法 |
分割統治法の実装 |
成果 |
パフォーマンスの改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
触媒化学シミュレーション |
アプリケーション名 |
ChemShell |
チューニング方法 |
タスクファーミングの手法を用いた並列処理の実装 |
成果 |
速度が8倍に改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
分子動力学シミュレーション |
アプリケーション名 |
DL_POLY |
チューニング方法 |
I/Oの最適化 |
成果 |
DL_POLY_3のパフォーマンスが20倍に加速 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
分子動力学シミュレーション |
アプリケーション名 |
DL_POLY |
チューニング方法 |
ロードバランシング,剛体力学の実装 |
成果 |
速度改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
粗視化分子動力学シミュレーション |
アプリケーション名 |
LAMMPS |
チューニング方法 |
離散要素法(DEM)機能の追加 |
成果 |
ボロノイ図形による、移動境界および固定応力制御境界条件機能の実装 詳しくはこちら
|
海洋・気象分野
お客様名/プロジェクト名 |
統計数理研究所(東京大学地震研究所 長尾大道様) |
対象プログラム |
粒子フィルタ法による長期潮位変動解析プログラム |
アプリケーション名 |
SLDECOMP |
チューニング方法 |
足し合わせ処理で非ゼロ成分のみを加算するように変更、内部ループにおける配列要素アクセス順序を連続的になるよう変更、可能な部分においてメモリの領域コピーを参照コピーに変更。
|
成果 |
計算速度が5.3倍になった。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
混相流シミュレーション |
アプリケーション名 |
Fluidity |
チューニング方法 |
有限要素メッシュの領域分割法の改善 |
成果 |
ヒルベルト空間充填曲線法(HSFC)を実装 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
海洋学モデリングアプリケーションプログラム |
アプリケーション名 |
Fluidity-ICOM |
チューニング方法 |
行列のアセンブリコードの最適化,インターリーブI/Oの実装,コードリファクタリング |
成果 |
スケーラビリティが劇的に改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
海洋学アプリケーション |
アプリケーション名 |
NEMO |
チューニング方法 |
I/Oデータサイズの縮小によるI/Oボトルネックの削減 |
成果 |
速度と入出力パフォーマンスが改善 推定削減コスト(円換算):3億9千万円
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
海洋学アプリケーション |
アプリケーション名 |
NEMO |
チューニング方法 |
3次元配列インデックスとネストしたループの入れ替え、スカラープロセッサ上のキャッシュ再利用効率向上、マルチコアに適した領域分割および地表の不必要な計算の削除 |
成果 |
実行時間が10%削減されました。
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
海洋流体および空力音響アプリケーション |
アプリケーション名 |
PEQUOD/Cfoam-CABARET |
チューニング方法 |
MPI_ALLTOALL集団通信の改善。MPI-IOによるI/O効率化 |
成果 |
PEQUODは実行時間が2倍に高速化し、512コアで1638グリッド点までスケールした。Cfoam-CABARETでは膨大な数のファイルIOを削減した。
詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
大気化学シミュレーション |
アプリケーション名 |
GLOMAP/TOMCAT |
チューニング方法 |
ハイブリッド並列化(OpenMP/MPI) |
成果 |
速度が4倍に改善 詳しくはこちら
|
航空宇宙・ターボ機械分野・流体解析
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
航空機騒音シミュレーション |
アプリケーション名 |
CABARET |
チューニング方法 |
ハイブリッド(OpenMP/MPI)並列化 |
成果 |
速度改善、より大きなモデルの取り扱いが可能に 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
物体乱流シミュレーション |
アプリケーション名 |
EBL |
チューニング方法 |
2次元領域分割 |
成果 |
スケーラビリティを40倍に改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
乱流シミュレーション |
アプリケーション名 |
Incompact3D |
チューニング方法 |
領域分割法の更新,OpenMP |
成果 |
パフォーマンスが6倍に改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
乱流シミュレーション |
アプリケーション名 |
Incompact3D |
チューニング方法 |
2DECOMP&FFTライブラリへの1対1通信を実装し、通信/計算オーバーラップによるMPI並列効率の改善 |
成果 |
15%性能向上した。複数の独立FFTライブラリ呼出しを1つにまとめた。 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
乱流シミュレーション |
アプリケーション名 |
Compact3D |
チューニング方法 |
2DECOMP&FFTフレームワークで並列化し, ハロ(halo)セル構築と1対1通信による隣接ペンシル間データ交換通信を実装 |
成果 |
並列効率80%を達成した 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
乱流シミュレーション |
アプリケーション名 |
SWT/SS3F |
チューニング方法 |
2D領域分割の適用、FFT3W、2DECOMP&FFTライブラリの適用 |
成果 |
スケーラビリティが10倍以上改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
圧縮性流体シミュレーション |
アプリケーション名 |
COSA |
チューニング方法 |
ハイブリッドOpenMP/MPI並列効率の改善、MPI I/Oの改善 |
成果 |
大規模ケースで30%性能改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
多相反応流/乱流燃焼シミュレーション |
アプリケーション名 |
DSTAR |
チューニング方法 |
2D領域分割の適用、I/O最適化、コードのリファクタリング |
成果 |
並列効率50%に改善、リファクタリングにより20%高速化 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
高解像度LESシミュレーション |
アプリケーション名 |
BOFFS |
チューニング方法 |
MPIによるブロックデータ間通信の実装、メモリー利用の効率化、OpenMPによるブロック内通信の実装 |
成果 |
千2百万グリッドで1.5倍の速度向上、並列効率の改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
流体/MD連成シミュレーション |
アプリケーション名 |
Transflow/StreamMD |
チューニング方法 |
アプリケーション連成モジュールの開発 |
成果 |
90%以上の並列効率を達成詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
流体解析シミュレーション |
アプリケーション名 |
Code_Saturne |
チューニング方法 |
領域分割パッケージの評価 |
成果 |
Metis,ParMetis,Scotch,PT-Scotch,Zoltanによる領域分割についてシミュレーション評価を行った詳しくはこちら
|
医学・生体工学分野
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
心臓モデリング |
アプリケーション名 |
CARP |
チューニング方法 |
非同期の並列処理機能,改善された並列メッシュ分割スキーマの実装 |
成果 |
パフォーマンスが20倍に改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
骨格モデリング |
アプリケーション名 |
VOX-FE |
チューニング方法 |
HDF5フォーマットへ変換、netCFD並列I/Oルーチンの実装 |
成果 |
ファイルサイズ190倍縮小、I/O時間は7倍高速化 詳しくはこちら
|
地球物理、プラズマ物理分野
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
地球力学熱対流シミュレーション |
アプリケーション名 |
CITCOM |
チューニング方法 |
マルチグリッド法の改善,マルチグリッドサイクルの実装,局所的メッシュの改良 |
成果 |
30%以上の加速化 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
磁気プラズマ乱流シミュレーション |
アプリケーション名 |
GS2 |
チューニング方法 |
FFTW2からFFTW3へのライブラリ入替 |
成果 |
FFTW3によるSSE命令の効果はほとんどなかった。新たに間接指標アクセスが性能を抑制していることが分析により判明した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
磁気プラズマ乱流シミュレーション |
アプリケーション名 |
GS2 |
チューニング方法 |
間接アドレッシングコードの改良、アンバランス・データ分割法の適用 |
成果 |
計算時間が2048コアで20%削減詳しくはこちら
|
その他
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
並列可視化コード |
アプリケーション名 |
AVS/Express DDR |
チューニング方法 |
AVS/Express分散データレンダラーの移植 |
成果 |
7000x7000x7000データの並列レンダリングとイメージ合成が可能となった。
詳しくはこちら
|
お客様名/プロジェクト名 |
EXA2CTプロジェクト |
対象プログラム |
Yales2,OASIS3-MCT,MDコード |
アプリケーション名 |
exaFarm,exaIO,exaMD |
チューニング方法 |
計算コード部分を模擬するプロトタイプ・アプリケーション開発による性能改善 |
成果 |
二相流燃焼解析コード、気候モデリング結合コード、分子動力学コードに対して、新たな改善策を実装・評価できた。
詳しくはこちら
|
ケーススタディー
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
燃焼コード |
アプリケーション名 |
SoFTaR |
チューニング方法 |
通信コードの最適化 |
成果 |
速度が5倍化しパフォーマンスが改善 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
直接数値流体シミュレーション(DNS) |
アプリケーション名 |
DG-DES |
チューニング方法 |
コンパイラの変更、最適化オプションおよび冗長なコードの削除等の最適化 |
成果 |
実行時間が70%削減詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子構造計算 |
アプリケーション名 |
CASTEP |
チューニング方法 |
コンパイラ最適化オプション、MPI環境変数およびMPI_Alltoall通信のシェアードメモリーバッファ利用による最適化 |
成果 |
最大1.78倍の性能向上詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
非構造格子の領域分割 |
アプリケーション名 |
METIS,Scotch,CABARET |
チューニング方法 |
METIS,Scotchの領域分割による並列性能を比較した。 |
成果 |
流体シミュレーションCABARETへ適用し、Scotchが僅かに良好な性能を示した。 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
数値計算/乱数発生器/電子状態計算のAMD Interlagosプロセッサー性能 |
アプリケーション名 |
DGEMM/BLAS,メルセンヌ・ツイスター,CASTEP |
チューニング方法 |
AMD Interlagosプロセッサーでのコンパイラとコード最適化によるスケーリング・チューニング |
成果 |
プロセッサー内の物理コアへのプロセス/スレッド配置ポリシーが性能に大きく影響を与えていることが判明した。 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
電子状態計算/ベクトル演算性能 |
アプリケーション名 |
CASTEP |
チューニング方法 |
Cray X2でのトレース情報に基づくコード最適化によるチューニング |
成果 |
ベンチマークal3x3ケースにおいて16プロセッサーを用いた場合に9.5GFLOPSの性能を得た。 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
流体解析/ベクトル演算性能 |
アプリケーション名 |
HYPO4D |
チューニング方法 |
Cray X2でのトレース情報に基づくコード最適化によるチューニング |
成果 |
128*128*256メッシュにおいて483%性能向上した。 詳しくはこちら
|
チューニングレポート
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
2DECOMP&FFT、流体乱流シミュレーション |
アプリケーション名 |
2DECOMP&FFT、Incompact3D |
チューニング方法 |
通信と計算のオーバーラップ |
成果 |
2DECOMP&FFTの低レベルAPIを開発し、多重独立FFTを1つのサブルーチン呼出しで可能にした。また、2DECOMP&FFTライブラリーにより柔軟なデータレイアウトを導入した。 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
量子モンテカルロシミュレーション |
アプリケーション名 |
CASINO |
チューニング方法 |
System V共有メモリー利用、OpenMP/MPIハイブリッド並列化 |
成果 |
System V共有メモリーを用いる事により4GB軌道データに対して4倍に高速化。ハイブリッド並列化により1000電子系で1.8倍に高速化 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
分子動力学シミュレーション |
アプリケーション名 |
DL_POLY_3 |
チューニング方法 |
MPI-I/Oによる入出力処理の並列化 |
成果 |
1,728,000イオン系に対して4000コアを用いたケースにおいて良好なスケール性能を示した。 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
分子動力学シミュレーション |
アプリケーション名 |
DL_POLY_4 |
チューニング方法 |
混合基数の並列FFTの実装 |
成果 |
コア数の2のべき乗個の利用という制約を受けず、素数3,5を含む混合基数により、リソースの効率的な利用と良好なスケール性能を示した。 詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
分子動力学シミュレーション |
アプリケーション名 |
DL_POLY_4 |
チューニング方法 |
OpenMPによる第2レベル並列化、64ビット整数化 |
成果 |
OpenMP/MPI化によるリンクセルの制約を解除してスケーラビリティーを確保しつつ利用可能コア数を5-10倍へ拡大した。コードの64ビット整数化により、より大きなシミュレーション規模を可能にした。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
分子動力学シミュレーション |
アプリケーション名 |
DL_POLY_4 |
チューニング方法 |
リンクセル・アルゴリズムの改善、RESPA法の実装 |
成果 |
時間ステップ毎のVerlet近傍リスト再計算を回避するようにリンクセルアルゴリズムを修正し、RESPA時間積分手法を実装したことにより、コード性能を20-30%改善した。理想的なケースにおいては2倍以上改善した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
数値流体シミュレーション |
アプリケーション名 |
Fluidity |
チューニング方法 |
並列領域分割ライブラリーZoltanの組込み |
成果 |
任意のアダプティブメッシュを可能にした。周期境界条件への拡張。ディテクターの実装。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
有限要素法による地震波シミュレーション |
アプリケーション名 |
SPECFEM3D_GLOBE |
チューニング方法 |
コードの融合によるI/O削減 |
成果 |
プリプロセッサー/ソルバー間のI/Oを削除し、実行時間を8%削減した。シミュレーションに用いる地震最大周波数を0.2Hzまで引き上げた。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
密度汎関数法による電子構造解析 |
アプリケーション名 |
CASTEP |
チューニング方法 |
座標最適化機能に対する記憶制限BFGS法の組込み |
成果 |
従来の系のサイズの2乗に比例したメモリーが必要なBFGS法に対して、記憶制限BFGS法を導入することによりメモリー依存性が系のサイズに対してリニアになった。ノードメモリーとコアを飽和しての実行が可能となった。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
密度汎関数法による電子構造解析 |
アプリケーション名 |
CRYSTAL |
チューニング方法 |
分割統治(divide and conquer)法の実装 |
成果 |
弱く相互作用をする系に対する分割統治法を実装した。そのSCF収束に掛かるCPU時間はほぼ完全な線形スケール性を示した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
密度汎関数法による電子構造解析 |
アプリケーション名 |
VASP |
チューニング方法 |
k点並列計算手法の実装 |
成果 |
最大3888コアまで線形スケール性を示し、1738コアにおいて元のコードよりも7倍高速化した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
並列有限要素法による地殻工学シミュレーション |
アプリケーション名 |
CITCOM |
チューニング方法 |
マルチグリッド法の改善:既存のVサイクルを改善し、WサイクルとFサイクルを実装する |
成果 |
単純2次元問題に対してはVサイクル法が最も高速で、FMG(V),FMG(W)法と比較して、それぞれVサイクル法は31%以上、Wサイクル法は38%以上高速だった。複雑3次元問題に対してはFMG(V)法が最も高速で、FMG(W)法と比較してWサイクル法が12%以上高速となった。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
HECToRへの統合気象予報システムOpenIFSの移植 |
アプリケーション名 |
OpenIFS |
チューニング方法 |
USTREファイルシステムにおけるファイルストライピング、OSページサイズ、出力に用いるMPIタスク数、およびFDBライブラリーのコンフィグパラメーターのチューニング |
成果 |
並列I/OサポートライブラリーGRIB_APIおよびFDBのCrayシステムへの移植を完了した。性能に影響を与える環境およびFDBパラメーターの推奨値を決定した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
非圧縮性流体/乱流の直接数値シミュレーション(DNS)コードの性能改善 |
アプリケーション名 |
2DECOMP&FFT、Incompact3D |
チューニング方法 |
通信ルーチンを、1Dスラブ分割から2Dペンシル分割へ拡張して並列効率を向上させる |
成果 |
2D領域分割ライブラリー2DECOMP&FFTを開発し、16384コアまでスケールした。2DECOMP&FFTはオープンソースとして公開した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
圧縮性流体/乱流の直接数値シミュレーション(DNS)コードの性能改善 |
アプリケーション名 |
2DECOMP&FFT、Compact3D |
チューニング方法 |
2DECOMP&FFTライブラリーにより並列化する。haloセルをサポートする通信ルーチンを開発し、陽的スキームを可能にする |
成果 |
並列効率80%を達成した。2DECOMP&FFTへhaloセルサポートを機能追加しオープンソースとして公開した。陽的スキームを実装した詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
高次CFDソルバーのメニーコア・アーキテクチャー対応による性能強化 |
アプリケーション名 |
BOFFS |
チューニング方法 |
ブロック間データ転送に用いるMPIを最適化し、メモリー利用効率およびブロック内計算で用いられるOpenMP処理を改善する |
成果 |
20%以上高速化し、少なくとも100ブロックまでスケーラビリティーを引き上げた。100百万グリッド以上および100ブロック以上まで良好な弱スケーリング性能を示した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
高次CFDソルバーのメニーコア・アーキテクチャー対応による性能強化(2) |
アプリケーション名 |
BOFFS/NEAT |
チューニング方法 |
①MPIタスクへ複数ブロック割当てを可能にする。②TDMAとGSソルバーへのred-black法とOpenMP実装による並列化。 |
成果 |
①50百万セル、108グリッドブロックを用いた亜音速ジェットのLESに対して20%以上高速化した。②12,642,048グリッド点、128ブロックの構造グリッド上の非定常流体に対して実行時間で24%削減された。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
圧縮性ナビエストークスソルバーの並列化 |
アプリケーション名 |
CABARET |
チューニング方法 |
並列処理のための自動領域分割の実装。MPI/OpenMPハイブリッド並列化 |
成果 |
2.05×100百万グリッドの処理が可能になった。ノンブロッキングMPIを実装し、250コアを用いて並列効率72%を示した。5.12×10百万グリッドの3D後方ステップケースでは、フェーズ2b上の1000コアを用いて並列効率80%を示した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
ジェット/フラップ騒音と準地衡的海洋循環へのCABARET手法の適用と性能改善 |
アプリケーション名 |
CABARET/PEQUOD |
チューニング方法 |
Cfoam-CABARETのI/O性能改善のためにMPI-IOを実装する。PEQUOD準地衡方程式の並列ヘルムホルツ問題における渦位逆変換に対してMPI_ALLTOALLを用いた最適化を行う。 |
成果 |
Cfoam-CABARETは、MPI-IOを用いてスケーラビリティを確保しつつ、膨大なファイルを1つに集約した。PEQUODでは、グリッドサイズ1025点では2倍高速化し、MPIタスク当たりのグリッド数を固定した場合には良好な弱スケール性能を示した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
エアロゾル化学シミュレーションTOMCAT/GLOMAP Mode MPIコードの改善 |
アプリケーション名 |
TOMCAT/GLOMAP |
チューニング方法 |
コンパイラ最適化フラグ、ループ構造の改良、MPI通信パターンの改善 |
成果 |
ステップ当りの時間は合計で12.4%削減された。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
エアロゾル化学シミュレーションMPI-TOMCAT/GLOMAPmodeコードのOpenMP並列性能改善 |
アプリケーション名 |
TOMCAT/GLOMAP |
チューニング方法 |
OpenMPスレッドのスケジューリングとMPIタスクを含めたスレッド配分の最適化 |
成果 |
128コアまでスケーラビリティを改善し、4スレッド/タスクで2倍に高速化した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
エアロゾル化学シミュレーションTOMCAT/GLOMAP Mode MPIコードの改善 |
アプリケーション名 |
TOMCAT/GLOMAP |
チューニング方法 |
並列IOの実装による性能改善 |
成果 |
ファイルアクセスパターン計算部の高速化。MPIタスク数増加に伴うメモリー、通信量が削減された。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
大規模並列アーキテクチャにおける雲/エアロゾル・シミュレーションの並列化 |
アプリケーション名 |
LEM/ACPIM |
チューニング方法 |
繰返し法ソルバーの追加。並列性能の改善 |
成果 |
並列BiCGStabの実装、並列コード最適化により線形スケール性を実現した。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
乱流多相燃焼シミュレーションの性能改善 |
アプリケーション名 |
DSTAR |
チューニング方法 |
SLEPc/PETScライブラリによる高速化 |
成果 |
以前に比べて50倍のMPIタスクとグリッドサイズが可能になった。シリアル実行性能は約20%向上し、2D領域分割の並列効率は約50%に改善された。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
内殻電子-分子散乱R行列法コード:UKRMol-inの並列化と移植 |
アプリケーション名 |
UKRMol |
チューニング方法 |
2D領域分割アルゴリズムの実装、IOの改善、コード・リファクタリング |
成果 |
ハミルトニアン行列の構築と対角化にライブラリを移植し、並列化チューニングを行った結果、プロセッサ数に対してスケールした。詳しくはこちら
|
お客様名/プロジェクト名 |
HECToRプロジェクト |
対象プログラム |
マルチスケール流体の分子動力学(MD)と直接数値シミュレーション(DNS)のスケーラブルな連成 |
アプリケーション名 |
TransFlow/StreamMD |
チューニング方法 |
CFD/MDソルバーに対する連成ソフトウェアの開発 |
成果 |
アプリケーション間の通信インターフェイスおよび同期とデータ交換のためのモジュールを開発し、元のソルバーのスケール性能を維持して連成させることが可能になった。詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
タイトバインディング密度汎関数コード |
アプリケーション名 |
DFTB |
チューニング方法 |
計算スケール性、負荷バランス、通信負荷等、並列性能の分析 |
成果 |
プロセス数の増加う緩やかな性能劣化がある。これはMPI集団通信の広範な使用によるものである。さらに、最大コア数においてIPCの劣化も認められた。詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
密度汎関数コード |
アプリケーション名 |
ADF |
チューニング方法 |
計算スケール性、負荷バランス、通信負荷等、並列性能の分析 |
成果 |
負荷分散が発生しているが、Computational ScalabilityとCommunication Efficiencyは共に良好である。詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
一般個体輸送モデルによる粒子トラッキングコード |
アプリケーション名 |
GITM |
チューニング方法 |
計算スケール性、負荷バランス、通信負荷等、並列性能の分析 |
成果 |
負荷分散が発生している。これは、現状のFortran配列演算をOpenMPスケジューリングで調整可能な形式へ変更することで改善が可能である。詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
微視的磁気解析ソルバー |
アプリケーション名 |
FIDIMAG |
チューニング方法 |
計算スケール性、負荷バランス、通信負荷等、並列性能の分析 |
成果 |
OpenMPスレッド数の増加に伴い負荷バランスは急速に悪化する。既存ループ長を大きくしてOpenMPの仕事量を増加させ、他のコード部分のOpenMP化を促進し、SundialsライブラリとFFTWを最適な並列版へ変更することが推奨された。詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
密度汎関数法コード |
アプリケーション名 |
BAND |
チューニング方法 |
計算スケール性、負荷バランス、通信負荷等、並列性能の分析 |
成果 |
負荷分散とスケーラビリティがノードの増加に伴い劣化する。IPC劣化やNUMAの影響の調査、命令数の増加原因等の調査が推奨された。詳しくはこちら
|
お客様名/プロジェクト名 |
POPプロジェクト |
対象プログラム |
粗視化分子動力学コード |
アプリケーション名 |
GBmolDD |
チューニング方法 |
計算スケール性、負荷バランス、通信負荷等、並列性能の分析 |
成果 |
計算とI/Oスケーラビリティがノードの増加に伴い劣化する。計算と通信のトレードオフによるハロ領域利用の最適化、並列I/Oファイルフォーマットの利用が推奨された。詳しくはこちら
|
上記の他、nAGがサポートしたHECToRのdCSEプロジェクトレポートの要約(邦訳)を以下に掲載します。
·
ジャイロ運動論的プラズマシミュレーションコードGS2におけるデータ分散ルーチンの改善
·
風力タービン、ターボ機械、航空機翼周期流の超高速解析のための、ハーモニックバランスNavier-StokesソルバーCOSAの並列性能最適化
·
乱流アプリケーションEBLの数千コアへのスケール性能改善
·
個別要素法(Discrete Element Method)のLAMMPSへの組込みとハイパフォーマンスコンピューティング
·
心臓バイドメインモデルによる不整脈研究パッケージCARPの性能最適化
·
MPI並列有限要素法ソルバVOX-FE/PARA-BMUへの並列I/O実装
·
乱流の直接数値シミュレーション(SWT/SS3F)のスケール性能改善
·
マルチスケール流体の分子動力学(StreamMD)と直接数値シミュレーション(Transflow)のスケーラブルな連成:その2
·
MPI並列RMT(時間依存R行列)コードの最適化
·
時間依存R行列法コードRMTによる高調波生成計算
·
非相対論的時間依存シュレディンガー方程式コードHELIUMの機能拡張と実装
·
時間依存シュレディンガー方程式コードHELIUMの多電子原子への拡張と並列化
·
DL_POLY_3への動的負荷バランスと剛体運動力学の実装
·
天然磁化鉱物系の微視的磁気モデリングコードMicroMagの並列化
·
天然に存在する磁気鉱物系の微小磁気モデリングコードMicroMagの並列化 その2
·
二相流ソルバーTPLSおよびDIMの性能改善
·
ISPHコードの大規模並列計算
·
OpenFOAMのHECToRへの移植と性能調査
·
R環境を用いた遺伝子統計解析コードSPRINTのHECToR上の性能
·
R環境におけるSPRINTコードのランダムフォレスト分類の並列実装
·
R環境におけるSPRINTコードのRank Product法の並列実装
·
R環境におけるSPRINTコードのブートストラップ法のHECToR上での最適化
·
SPRINTを用いたRのサポートベクターマシン関数のHECToR上での最適化
·
量子モンテカルロコードCASINOへの分子動力学機能の組込み
·
CFDコードCode_SaturneのHECToRへの移植と最適化
·
CFDコードFluidityのヒルベルト空間充填曲線法によるメッシュ再順序付け
·
HPC向け次世代全球海洋モデリングソフトウェアFluidity-ICOMの開発
·
Fluidity-ICOMのハイブリッドOpenMP/MPI並列化:次世代幾何学的流体モデリング
·
NEMO (Nucleus for European Modelling of the Ocean)のHECToR上での最適化
·
海洋モデリングコードNEMOの大規模マルチコアシステムへの対応
·
海洋モデリングコードNEMOの浅海域における性能改善
·
メソスケール気象研究のためのWRFコードの最適化
·
密度汎関数計算コードCASTEPのバンド並列化
·
時間依存密度汎関数法のCASTEPへの組込み
·
CASTEPへのハイブリッド時間依存密度汎関数理論の実装その2:励起状態フォース
·
密度汎関数法コードCASTEPのスケール性能の改善
·
ONESTEP,CASTEP,その他コードにおけるマルチグリッドソルバの改善
·
触媒化学のための大規模並列ツールChemshell
·
材料化学のためのMicroiterative法によるChemshellのQM/MM最適化
·
線形スケール密度汎関数法Conquestの金属計算に対応した最適化
·
オーダーN密度汎関数法コードConquestへのスピン分極およびファンデルワールスエネルギー補正の組込み
·
OpenMP/MPI並列化によるDFTコードConquestのスケール性の改善
·
DFTコードConquestの負荷バランスと分子動力学計算の改善
·
adaptive kinetic Monte CarloコードDL_AKMCの並列化
·
HECToRにおける密度汎関数法コードCP2Kの性能改善
·
マルチコアシステム上のDFTコードCP2Kのスケーラビリティ改善
·
数1000コアオーダーでのCP2Kのスパース線形代数
·
電子-原子散乱コードPRMATのHECToR(XT4)における並列化
·
HECToR上でのUK電子-原子散乱内殻R行列コードのマルチコア並列化
·
quasi-particle self-consistent GWコードQSGWの大規模マルチコアシステム対応
·
Quantum EspressoのFFTコンポーネントGWWの最適化
·
Quantum EspressoのFFTコンポーネントGWWの最適化(その2)
·
大規模リモートバッチ可視化:AVS/ExpressのHECToRへの移植
上記のHECTORプロジェクトの事例の詳細及びその他の事例は以下をご参照下さい。
http://www.hector.ac.uk/cse/reports/