東京大学情報基盤センター
お試しアカウント付き並列プログラミング講習会
2018年8月28日@東京大学情報基盤センター遠隔会議室

OpenFOAM初級「Oakforest-PACS概要・OpenFOAM概要」
今野 雅(東京大学客員研究員・株式会社OCAEL)

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

1

講習会プログラム(予定)• 10:00-10:40 Oakforest-PACSへのログイン• 10:40-11:00 Oakforest-PACS概要• 11:00-11:30 OpenFOAM概要• 12:30-14:00 自動車空力解析演習I✓ blockMeshによる格子生成✓ snappyHexMeshによる並列格子生成✓ ParaViewによる格子可視化• 14:15-15:45 自動車空力解析演習II✓ simpleFoamによる並列定常乱流解析✓ 線型ソルバ残差および空力係数の出力とプロット✓ ParaViewによる解析結果可視化✓ 解析結果のサンプリングとプロット• 16:00-18:00 自動車空力解析演習III✓ 並プロファイラーの基礎的使い方✓ 並列計算ベンチマークテスト✓ 格子生成・空力解析演習課題✓ 質疑応答東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

2

東京大学情報基盤センターの運用システム
FY
08 09 10 11 12 13 14 15 16 17 18 19 20 21 22
Hitachi SR11K/J2
IBM Power-5+

18.8TFLOPS, 16.4TB

Yayoi: Hitachi SR16000/M1
IBM Power-7
54.9 TFLOPS, 11.2 TB

Hitachi HA8000 (T2K)
AMD Opteron

Oakforest-PACS
Fujitsu, Intel KNL

25PFLOPS, 919.3TB

140TFLOPS, 31.3TB

Oakleaf-FX: Fujitsu PRIMEHPC
FX10, SPARC64 IXfx
1.13 PFLOPS, 150 TB

Post FX10

50+ PFLOPS (?)Oakbridge-FX

136.2 TFLOPS, 18.4 TB

Reedbush, SGI
Broadwell + Pascal
1.80-1.93 PFLOPS

Peta

K

K computer

Post-K

これまでは概ね2基の大型システム，約6年サイクルで更新
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

3

Oakforest-PACS(OFP)のシステム構成

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

4

OFPのハードウェア全体構成
項目

仕様

総理論演算性能

25.004 PFlops

総ノード数

8208

総主記憶容量897 TByte

ネットワークトポロジー

Full-bisection Fat Tree

並列ファイルシステム

システム名

Lustreファイルシステム

サーバ(OSS)DDN SFA14KE

サーバ(OSS)数10

ストレージ容量

26 PB

ストレージデータ転送速度

500 GB/sec

サーバ

DDN IME14K

高速ファイルキャッシュ サーバ数
システム
容量
ストレージデータ転送速度

25940 TB
1,560 GB/sec

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

5

OFPのノード構成
項目

仕様

マシン名

Fujitsu PRIMERGY CX1640 M1

C
P
U

プロセッサ名Intel® Xeon Phi ™ 7250（開発コード名：Knights Landing）

プロセッサ数(コア数)

1 (68)

周波数

1.4 GHz

理論演算性能3.0464 TFlops

Memory96 GB(DDR4)＋ 16 GB(MCDRAM)

インターコネクト

Intel ® Omni-Path ネットワーク(100 Gbps)

Xeon Phi 7250(Knights Landing, KNL)プロセッサタイル• プロセッサ：34タイル• タイル：コア 2 + 共有L2キャッシュ• コア：Atom(1.4GHz)• メモリ✓MCDRAM：16GB，490〜GB/s(注，高バンド幅)✓DDR4：96GB，115.2GB/s(大容量)
図出典：Hotchips 27 (注) Stream Triadベンチマーク
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

6

OFPの利用料金• パーソナルコース：年間10万円(1口あたり)．最大3口まで✓トークン：17,280ノード時間(2ノード 24時間 360日分)✓消費係数：1(8ノード以下)，2(8ノード超)✓ディスク：並列ファイルシステム1TB✓企業利用無し• グループコース：申込8ノードあたり年間40万円(企業48万円)✓トークン：Nノード 24時間 360日分 (N：申込ノード数)✓消費係数：1(Nノード以下)，2(N超)✓ディスク(グループ当り)：並列ファイルシステム8TB• 1年未満で月数別利用負担制度もあり• 企業利用(グループのみ)は利用審査があり，簡単な成果公開が必要• Reedbushとのトークン相互交換可能(一般利用のみ．企業，HPCI等では不可)• 1週間お試しアカウント付き講習会(年10回程度)，トライアルユース(無償・有償)有り
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

7

トライアルユース
有償トライアルコース(安価)
2基の大型システム，6年サイクル．現在，5システム運用中
無償トライアルコース(企業のみ)• アカデミック利用：最大３ヶ月✓パーソナルコース✓グループコース• 企業利用✓パーソナルコース：最大３ヶ月- 本講習会の受講が必須、審査無✓グループコース- 無償トライアルユース：最大3ヶ月- 有償トライアルユース：最大9ヶ月- スーパーコンピュータ利用資格者審査委員会の審査が必要（年２回実施）✓双方のコースともに、簡易な利用報告書の提出が必要
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

8

OpenFOAM概要@T+ r · (U T ) + r · (↵rT ) = ST@tsolve(fvm::ddt(T)+ fvm::div(phi,T)- fvm::laplacian(DT,T)== fvOptions(T));

有限体積法
ポリヘドラル境界適合Hex
メッシャー

C++

マルチフィジックス
乱流モデル:
RAS, LES, DES, …
線型ソルバー :AMG, PCG, PBiCG, …
離散化スキーム: …

多数のモデル実装済

GPL
Open Source
カスタマイズ可能
低コストな超並列計算

図出典： [OFF] The OpenFOAM Foundation ( http://www.openfoam.org/ )東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

9

OpenFOAMの歴史• 1989年ー2000年：研究室のFORTRANコード時代、開発元：英Imperial
CollegeのGosman研(Star-CDの開発元)の Henry Weller, Charlie Hill

• 1993年夏：事故により全コード消失。C++で書き直し(FOAM)• 1999年ー2004年：商用コード期 (FOAM) Field Operation And

Manipulationの略、開発元： Nabla(Henry, Hrvoje Jasak, Mattijs
Janssensら)、代理店：CAEソリューションズ(元フルイドテクノロジー)• 2004年12月：オープンソース化 (現在のOpenFOAMに名称変更)、開発
元：OpenCFD(Henry, Mattijs, Chris Greenshields)• 2011年8月15日：SGIによる買収、GPL下のソースの管理や配布は、同時に設立されたThe OpenFOAM® Foundationが運用• 2012年9月12日：ESIによる買収、Foundationによる運用は継続• 2014年：Henryらが独立(CFD Direct社)．ソースはFoundationが管理
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

10

標準ソルバー・チュートリアルのカテゴリ
カテゴリ名
カテゴリ内容
カテゴリ名
DNS
直接数値解析
ﬁniteArea
basic
基礎的なCFDコード heatTransfer
combustion
燃焼
stressAnalysis
compressible
圧縮性流れ
incompressible
discreteMethods 離散要素法
lagrangian
electromagnetics 電磁流体
multiphaseﬁnancial
金融工学
リリース月

Jun

2016
Oct
Jul

バージョン

4.0

4.1

v1606 v1612 v1706

5.0v1712 v1806

カテゴリ数

12
82
207

12
82
207

12
86
226

12
86
229

13
101
298

リリース年

ソルバ数
チュートリアル数

Dec
12
86
253

Jun
12
95
284

2017
Jul

カテゴリ名
有限面積法
熱輸送
固体応力解析
非圧縮性流れラグランジアン粒子追跡
多層流

Dec

2018
Jun
Jul
13
98
322

6

12
80
240

注) 青色バージョン：OpenFOAM Foundation系，赤色バージョン：Plus(ESI)系
Foundation系はv1606+以降に採用されたMPIのメモリ使用量最適化がなされておらず，概ね2,000並列以上で使用量が莫大に増加するので，大規模並列ではPlus系を使用する必要がある
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

11

チュートリアルとは‣ チュートリアルとは✓OpenFOAM標準ソルバーの実行例✓foamRunTutorials コマンドにより自動的に解析が実行できる‣ ユーザガイド第2章で扱っているチュートリアル✓cavity：天井駆動のキャビティ流れ✓plateHole：穴あき板の応力解析✓damBreak：ダムの決壊

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

12

単相等温流れのチュートリアル例

バックステップ流れ(LES)
pitzDaily
バイク周りの流れ
moterBike[OFT] オープンCAE勉強会@関西OpenFOAMチュートリ

図出典： [OFF]sites.google.com/site/freshtamanegi/ )アルドキュメント作成プロジェクト( https://

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

13

回転撹拌槽のチュートリアル例

図出典
[OFT]

回転攪拌槽の流れ(MRF)
mixerVessel2D回転攪拌撹拌槽内の流れ
mixerVesselAMI

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

図出典
[OFF]

14

移動格子のチュートリアル例

ピストン押し込み流れ
movingCone

スクリューの回転流れ場
propeller

翼型の6自由度剛体運動
wingMotion

図出典 [OFT]東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

15

相変化のチュートリアル例

速度

相率

弾丸周りのキャビテーション
cavitatingBullet

プロペラ周りのキャビテーション
propeller

図出典 [OFT]東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

16

粒子計算のチュートリアル例
図出典： [OFF]Particle Tracking

Multiphase Particle-in-Cell(MP-PIC)

Discrete Element Modeling(DEM)

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

17

連成熱伝達解析(CHT)のチュートリアル例
図出典 [OFT]

回転する熱交換機解析(MRF)
heatExchanger
OpenFOAMのCHT解析における欠点• エネルギー保存式を全領域で連成せず，連成熱伝達解析
multiRegionHeaterRadiation••

領域毎に解くので収束が遅い
形態係数を用いた放射解析の精度が悪い
熱収支計算が容易ではない(熱解析共通)

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

18

OpenFOAMでの代表的な解析手順
前処理(格子生成など)

解析

格子生成

初期設定

[blockMesh，[setFields等]

snappyHexMeshなど]

後処理(可視化など)
可視化(サードパーティ)[ParaView，Visit，
商用可視化ツール等]

領域分割(並列計算時)[decomposePar]または
格子生成(サードパーティ)[cfMesh,Salome,gmsh
商用メッシャー等]

解析ソルバ[icoFoam等]
様々な結果後処理

必要あれば格子変換

領域統合(並列計算時)[gmshToFoam等][reconstructPar]

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」[sample等]

19OpenFOAMの稼働環境
Linux, Mac, Windows機で動作

FOCUS
東工大 TSUBAME
東大 Reedbush-U, H,Ｌ
名古屋大学FX100
JCAHPC Oakforest-PACS
九州大学ITO
大阪大学 OCTOPUS，etc.

Laptop PC
クラスタ
クラウド〜100万格子〜1000万格子

スーパーコンピュータ フラッグシップ〜1000億格子〜10億格子Amazon EC2(GPU機あり)
Microsoft Azure(GPU機あり)
富士通TCクラウド
京 (SPARC64機)
Etc.
RISTがHPCI課題の
京ユーザ向けに最適化を支援
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

20

OpenFOAMの主な派生(Fork)版
図出典：ESI (https://www.esi.co.jp/
news/2014/PressRelease̲0128.html )• 商用版✓ HELYX(Engys): OF拡張版+GUI✓ iconCFD(IDAJ, ICON): OF拡張版+GUI✓ Visual-CFD(ESI): GUI• オープンソース版✓HELYX-OS(Engys): GUI
Visual-CFD(ESI)✓foam: Hrvoje Jasak(クロアチア ザグレブ大学教授，Wikki社 代表)が主導するコミュニティベース版．FSIやBlock coupledソルバ等の公式版に無い機能を実装

foamの 流体・構造連成(FSI)✓OpenFOAM+(ESI): 安定化と機能拡張

OpenFOAM+の変動風生成

図出典：www.openfoam.com
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

21

OpenFOAMの派生図
図出典：olaFoam (https://sites.google.com/site/olafoamcfd/)

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

22

OpenFOAMの課題‣ 設定用GUIが無く，全てテキストファイルで設定する必要があるが，詳細
な公式マニュアルがほとんど無い → ソースコードを読まないと詳細な設定方法がわからないので，初心者には設定が困難．解析条件に応じた推奨
設定も不明‣ GUIに関しては商用(iconCFD, Visual-CFD)，オープンソース(HelyxOS, DEXCS, TreeFoam)などが続々登場してきた
オープンソースGUI例

DEXCS (野村氏作)

TreeFoam(藤井氏作)

HelyxOS(engys社)

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

23

OpenFOAMの課題‣ メッシャー(blockMesh, snappyHexMesh)で格子を生成するのが遅く，質の良いレイヤを貼るのは困難 → 初心者は格子生成で断念‣ Pointwise，HEXPRESSなどの商用メッシャーはOpenFOAMの格子を出力できるようになっている．

‣ Helyx, iconCFDなどの商用ForkではsnappyHexMeshの機能を改善‣ オープンソースでハイブリッド並列，レイヤ付加性能に優れたOpenFOAM
用メッシャーcfMeshも登場(v1712に取り込まれた)
cfMesh
による
レイヤ付
き六面体
格子

cfMesh
による
ポリヘド
ラル格子

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

24

OpenFOAMの課題‣ ハイブリッド並列の非対応 → GPGPUやXeon Phi等のメニーコア機で非効率．ハイブリッド並列よりMPIプロセス数が多くなるので，MPIプロセス間の通信コストがかかる．
以下のような様々な研究や実装が行われている‣ Amani AlOnazi: Design and Optimization of OpenFOAM-based CFD Applications forModern Hybrid and Heterogeneous HPC Platforms, Master Thesis, King Abdullah
University of Science and Technology, 2014, URL‣ 櫻井，片桐ら: OpenFOAMへの疎行列計算ライブラリXabclibの適用と評価, オープンCAEシンポジウ
ム, 2014, URL‣ 内山，フックら: OpenFOAMによる流体コードのHybrid並列化の評価，情報処理学会, 2015, URL‣ 山岸，井上ら: OpenFOAMのメニーコア・GPUへの対応に向けた取り組みの紹介，オープンCAEシンポ
ジウム, 2017, URL‣ 富岡，吉藤ら: OpenFOAMスレッド並列化のための基礎検討, オープンCAEシンポジウム, 2017, URL‣ 今野: OpenFOAMにおけるCommunication-Avoiding CG法の実装と性能評価, オープンCAEシンポ
ジウム, 2017, URL‣ simFlow社: RapidCFD(NVIDIA CUDA用フルGPU版OpenFOAM), オープンソース, URL
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

25

並列計算による台数効果と並列化効率• 並列計算による台数効果 (スピードアップ) S

P

SP = TS / TP
ここでTS ： ベースとなるプロセス数(1プロセス，1ノード等)での実行時間
TP ： ベースとなるプロセス数 Pでの実行時間• 並列化効率 E

P

EP = SP / P ×100 [%]このケースでは12ノード以上使用しても非効率→台数効果の飽和(Saturation)をベンチマークテスト
で事前に把握し，非効率な計算を行わないことが重要

T8 < T12

実行時間

台数効果(スピードアップ)

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

並列化効率
26

並列計算のベンチマークテスト• ベンチマークテスト：プログラム実行時間やFLOPS値などの性能指標の計測• 並列計算機でのベンチマークテストは重要✓並列数を変更させて，台数効果(スピードアップ)や並列化効率を調べ，効率の良い並列数を決定できる✓時間ステップ数や反復数が小さい予備計算で検討するのが効率的• OpenFOAM等のCFDコードでは圧力線型ソルバのベンチマークテストも重要✓実行時間は圧力線型ソルバの種類や前処理方法に強く依存✓線型ソルバーの速さは並列数にも依存- 並列数小→AMG(代数マルチグリッド) > PCG(前処理付き共役勾配法)- 並列数大→PCG > AMG
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

27

OpenFOAMの並列計算手法
OpenFOAMの並列計算手法
1. 格子生成2. 領域分割 (decomposePar)
3. MPI並列でソルバを実行(MPI+OpenMPのハイブリット並列は標準では未実装．研究例有り)

4. 領域毎の解析結果を再構築 (reconstructPar)
プロセッサ
間MPI通信(フラット
MPI通信)

processor
2

processor
3

プロセッサ
間通信は，
計算効率を
低下させる

processor
0

processor
1
damBreakFineチュートリアル

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

28

領域分割の設定
system/decomposeParDict
numberOfSubdomains 4;
method//領域分割数

simple; //領域分割方法

simpleCoeffs //単純に軸方向に分割{n( 2 2 1 ); //分割数

delta

0.001;

metis
simple}hierarchicalCoeffs //分割方向の順番を指定{
hierarchicaln( 2 2 1 );orderxyz; //分割方向の順番
delta
0.001;}

sctochmetis : Metisライブラリを使用。
プロセッサ間の通信量に大きく影響する分割領域間の界面数を最小化。
ライセンスにより商用利用や再配布が自由ではない
scotch : Scotchライブラリを使用。
フリーソフトライセンスでMetisと互換APIを持つ
manual : 格子を割り充てるプロセッ
サを手動で指定

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

29

重み付き領域分割例
重み付き

重み無し

3

4

metis

2

system/decomposeParDict

4

1
1

2

3
1

3

4

4

scotch12

3

2

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

scotchCoeffs
または
metisCoeffs{
processorWeights( 1 2 3 4 );//プロセッサ毎の格子数の重み係数//省略時は重み無し}
重み付けは，ノード間で性能が異なる場合に用いる場合があるが，通常は用いない30

snappyHexMeshによる格子生成
blockMesh
構造格子メッシャー

snappyHexMesh
構造格子メッシャー

解析領域を含む構造格子のベース格子
を生成

ベース格子を細分割して，形状に適合したメッシュを自動的に生成〇 ほぼ六面体の格子が自動的に生成可能
任意間隔のベース格子が作成が難しい
生成格子がベース格子の形状に大きく依存

解析領域

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

31

snappyHexMeshの特徴• 六面体格子(hex)または”面が分割された六hex

split hex

面体的状格子”(split hex)からなる格子を自動生成する• STL形式等の三角形分割曲面形状に適合した格子が生成できる(辞書で定義される直0方体や球面等の基礎形状も利用可)• 格子の細分割は8分木(2x2x2の分割を再帰的に行う)• 曲面形状や基礎形状の表面の細分割レベル

1
細分割レベル2

三角形分割曲面形状(STL, wavefront OBJなど)を指定できる(表面ベースの細分割)• 細分割領域を曲面形状や基礎形状を用いて別途定義できる (領域ベースの再分割)
表面ベース細分割
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

領域ベース細分割
32

snappyHexMeshの特徴(続き)• STL表面や基礎形状の表面に境界適合する
境界適合(snapping

ように格子を滑らかに移動させることができる• STL表面や基礎形状の表面にレイヤを滑らかに挿入できる•

レイヤ挿入

分割領域毎の格子数をロードバランシン
グしながら，並列に格子生成ができる• 境界適合における特徴辺の再現はVer. 2ま特徴線

では実装されておらず、特徴辺は丸くなったが，Ver. 2から特徴辺再現機能が実装され，形状再現性が高まった．

• 自動格子生成が可能だが，設定が繁雑で，特にレイヤ挿入の設定・制御は困難．
Ver. 2未満
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

Ver. 2以降
33

ParaViewとは?
•オープンソース、スケーラブル、かつマルチプラットフォームな可視化ア
プリケーション

•大容量データセットを処理するための分散型計算手法のサポート•オープン、柔軟かつ直感的なユーザインターフェイス•オープンな規格に基づいた拡張性の高いモジュール化構造•柔軟な3条項BSDライセンス•有償の保守およびサポート

ル・マンのレースカー周りの気流(ブラジル リオ・デ・ジャネイロ NACAD/COPPE/UFRJ Renato N. Elias)
図出典：Kenneth Moreland et.al : Large Scale Visualization with ParaView, Supercomputing 2014 Tutorial, November 16, 2014
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

34

ParaViewの3層構造
Client•クライアント✓可視化の作成を担当(GUI)

Data
ServerRenderServerParaView Clien✓オブジェクトの作成、実行、削除を制U御するが実際のデータは全く保持しない✓常にシリアル実行•データ・サーバ•レンダー・サーバ✓データの読込み、フィルタリ✓レンダリングを担当を担当

ング、書出しを担当✓並列実行可能 (内蔵の並列レンダリン✓全てのパイプライン・オブジェ

グ機能が有効化)

OpenGL

クトはデータ・サーバが保持✓並列実行可能図出典：The ParaView Tutorial for Version 4.4
https://www.paraview.org/Wiki/The̲ParaView̲Tutorial

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

35

ParaViewの3層構造
Client

コマンド名

スタンドアローン・モード
DataServer• 全てが統合してシリアル動作

RenderServerparaview

クライアント­サーバ・モード
DataServerRenderServerClientparaview• 並列可視化可能• リモート可視化も可能

pvserver

クライアント­レンダー・サーバ­
Data
ServerRenderServerClientparaview
pvdataserver pvrenderserver

データ・サーバ・モード• サーバ間の通信量が多く，3つが独立動作する利点が少ないので，非推奨

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

36

ParaViewによるOpenFOAMデータ可視化✓OpenFOAMの格子や解析結果はParaViewで可視化やデータ解析が可能✓OpenFOAMデータ読み込み方法• OpenFOAM附属のparaFoamコマンド使用 (非推奨)- ParaViewを起動するクライアント側にOpenFOAMの環境が必要- ログインノード上で可視化する場合は通常この方法- ログインノードでの起動は負荷が掛かり，かつX転送は遅いため，非推奨• 通常のParaView(Ver.3.8以降)を使用- ParaViewを起動するクライアント側にOpenFOAMの環境は不要- OpenFOAMのデータを読むには拡張子が.foamのダミーファイルが必要‣ スタンドアローン・モード：スパコン側の格子・解析結果をクライアント側に転送して，クライアント側のParaViewで可視化 (今回はこの方法)‣ クライアント­サーバ・モード：スパコン側で起動したpvserverと，クライア
ント側で起動したParaViewが通信して可視化
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

37

オープンCAE学会の紹介✓ 設立：2009年11月✓ 会長： 中川 慎二(富山県立大学)✓ 会員数：222 (2017年3月31日現在)✓ 正：175，学生32，賛助12，公益6✓ 委員会：シンポジウム，講習会，資料翻訳，www.opencae.or.jp

会員数は順調に増加

出版・編集，コミュニティ，V&V，国際化推進，広報・賛助，Web編集，モデルベースデ
ザイン，表彰主な年間行事

時期

名称

開催地

6月頃

総会・講習(1日)東京

8月頃

サマースクール(2泊3日)

日本各地

シンポジウム(3日程度)

日本各地

見学会・講習会・講演会・ツアー等
春季講習会(1日)(隔年で東京開催)
東京以外

12月頃
3月頃

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

38

講習会委員会: オープンソースCAE講習会運営
講習会• 総会付帯講習会(2018年6月22日@市ケ谷)✓ 90分 2並列 4コマ程度• サマースクール(2018年8月30日〜9月2日@箱根)✓ 学生・若手(概ね40歳未満)対象✓ 合宿形式(2泊3日)✓ 講習会・懇親会・ディスカッション• シンポジウム(2018年12月6日〜8日@川崎)✓ 90分 3並列 4コマ程度• 春季講習会(2018年3月頃@未定)

サマースクールでのディスカッション

詳細はオープンCAE学会のWebページ参照( http://www.opencae.or.jp/ )東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

39

資料翻訳委員会: OpenFOAMユーザーガイド和訳• LaTeXソースや図など全てレポジトリで公開• OpenFOAM FoundationのWebサイトにも，学会の和訳が置かれている• 現在，3.0.1版まで公開．学会でplus版の和訳も計画中
https://github.com/opencae/OpenFOAM
OpenlFOAM
オープンソース [1( ツールボックス

ユーザガイド和訳
wP"@q b|b

一般社団法人 オープン [Tc 学会

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

40

コミュニティ委員会: OpenFOAM掲示板運営
OpenFOAM Googleグループ• 設立：2008年3月• 登録者：919名 (2018/1/14時点)• 質問，情報交換，イベント告知• 匿名で質問可能• 初心者の駆け込み寺
月次投稿数

月次投稿数

200
150
100
50
0

2008/ 4

2009/ 4

2010/ 4

2011/ 4

2012/ 42013/4

2014/4

2015/4

2016/4https://groups.google.com/forum/#!forum/openfoam
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

41

コミュニティ委員会: オープンCAE勉強会後援
1. @関東(流体など)(2010年6月〜)
Ustream配信(初期)，OpenFOAMコード検証勉強会
2. @関西(2010年12月〜)

ほぼ毎月全国6箇所で開催!

自作風洞実験，ブックレビュー
3. @岐阜(2011年1月〜)
初心者のみ質問会・夏合宿
4. @富山(2012年5月〜)

発表資料・講習会資料も掲載されているので，WEBサイト
をご参照ください

ミニ講習会・鱒寿司制覇懇親会
5. @広島(2012年7月〜)
ミニ講習会
6. @関東(構造など)(2014年10月〜)
構造解析に特化した勉強会
合同勉強会(2018年6月23日)@東洋大学
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

42

V&V委員会: ERCOFTAC SIG15ベンチマーク
学会のレポジトリで実験値との検証ケースを公開．実験値との比較プロットも自動で可能
ERCOFTAC(European Research Community on Flow, Turbulence And
Combustion)内の乱流モデリンググループのワークショップ(ʼ95-ʼ01)で実施したベンチマーク

計29ケースOpenFOAMで10ケースを実施・整備
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

43

V&V委員会: 市街地風環境べンチマーク
日本建築学会 流体数値計算による風環境評価ガイドライン作成WG が整備
書籍

WEBサイト(実験データや標準計算条件)

OpenFOAM
で6ケースを実施・整備

東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

44

V&V委員会: 工学ナビでも公開
東京大学生産技術研究所・革新的シミュレーション研究センター(センター長：
加藤千幸先生)が制作運営しているWEBサイト

例：新宿副都心高層ビル群の風環境
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

45

出版・編集委員会: OpenFOAM書籍編集• 発売日：2016年6月17日• 価格：3,456円(税込)• 編集：オープンCAE学会• 出版社：森北出版• 日本初のOpenFOAM本!
• 書籍名はスハス V.パタンカー(森北出版)の「コンピュータによる熱移動と流れの数値解析」のオマージュ• Amazonの機械工学カテゴリで1位達成!
• 第4刷はOpenFOAM-2.4.0, 3.0.x, 4.x,
5.0, 6に対応した脚注あり
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

46

OpenFOAMの主な国内会議• オープンCAEシンポジウム(2010年〜，参加約80〜150名)✓ 主催: オープンCAE学会✓ 2〜3並列 3〜4コマ程度のトレーニング(構造解析・可視化・1DCAEも含む)✓ OF以外の流体解析ツールや構造解析・可視化関連の発表も有る．資料WEB公開✓ 現状OpenFOAM関連の発表件数は日本最大規模．年々増加• OpenFOAM・CAEワークショップ (2013年〜，参加約50〜100名[参加費無料])✓ 主催: 高度情報科学技術研究機構(RIST)✓ HPCI課題による「京」でのOFの事例．RISTによるOFのチューニング．富士通によるコンパイラの最適化などHPC向けの発表．資料WEB公開• ソフトウェアベンダーのユーザ会でのOpenFOAMセッション• オープンCAE学会以外の学会でのOpenFOAMに関する研究発表
学会，ユーザ会，HPC系WSなどで，年々OpenFOAMの発表が増加している
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

47

OpenFOAMの主な国際会議• OpenFOAM Workshop(2006年〜，参加約140〜400名)✓ 主催: OpenFOAM Workshop committee✓ 世界最大規模(ドイツ開催時は参加者約400人)✓ 3並列 4コマ程度のトレーニング(参加費に含まれる)✓ Hrvoje Jasakによる基調講演(開発方針など)✓ OFのカスタマイズ例・適用例など発表多数．講習会資料も公開• OpenFOAM User Conference (2013年〜，初回参加222名)✓ 主催: ESI社
✓ 基調講演: OF開発にファンドしているVolkswagen等✓ 開発メンバーによる今後の開発方針，ユーザ適用事例等
多くの発表資料や講習会資料が公開されているので，興味がある分野の資料を検索してみてください
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

48

関連Webサイト[OFF] The OpenFOAM Foundation ( http://www.openfoam.org/ )[OFC] OpenCFD Ltd (ESI Group)( http://www.openfoam.com/ )[OFT] オープンCAE勉強会@関西OpenFOAMチュートリアルドキュメント作成プロジェクト( https://sites.google.com/site/freshtamanegi/ )[OCSJ] オープンCAE学会( http://www.opencae.or.jp/ ) OpenFOAMユーザガイド和訳，プログラマズガイド和訳，The ParaView Tutorial和訳，過去のシンポジウム・ワ
ークショップ・講習会資料[PENGUINITIS] ( http://www.geocities.jp/penguinitis2002/ ) 圧倒的な情報量[FN365] ( http://caefn.com/) 多くのOpenFOAMに関するスライド(日本語・英語)も
公開
[OFW]

OpenFOAM Workshop (http://www.openfoamworkshop.org/) 世界最大規模のOpenFOAMの国際会議，カスタマイズ例・適用例など発表多数．要旨・スライド・トレー
ニング内容をWEB公開[installOpenFOAM] OpenFOAM自動ビルドスクリプト( https://gitlab.com/
OpenCAE/installOpenFOAM/blob/master/README.md ) スパコンでOpenFOAMを自動でビルドする
東京大学情報基盤センタースーパーコンピュータシステムお試しアカウント付き並列プログラミング講習会「OpenFOAM初級」

49