<4D F736F F F696E74202D2097AC91CC3389F196DA816995C097F18C768E5A816A2E B8CDD8AB B83685D>

Similar documents
<4D F736F F F696E74202D2097AC91CC3389F196DA816995C097F18C768E5A816A2E B8CDD8AB B83685D>

Microsoft PowerPoint - GPUシンポジウム _d公開版.ppt [互換モード]

スライド 1

about MPI

Microsoft PowerPoint - 演習1:並列化と評価.pptx

並列計算導入.pptx

演習準備

ParallelCalculationSeminar_imano.key

openmp1_Yaguchi_version_170530

コードのチューニング

Microsoft PowerPoint - KHPCSS pptx

Microsoft Word - HOKUSAI_system_overview_ja.docx

Microsoft PowerPoint _MPI-01.pptx

演習準備 2014 年 3 月 5 日神戸大学大学院システム情報学研究科森下浩二 1 RIKEN AICS HPC Spring School /3/5

NUMAの構成

スライド 1

<4D F736F F F696E74202D2091E63489F15F436F6D C982E682E992B48D8291AC92B489B F090CD2888F38DFC E B8CDD8

PowerPoint Presentation

Slides: TimeGraph: GPU Scheduling for Real-Time Multi-Tasking Environments

<4D F736F F F696E74202D D F95C097F D834F E F93FC96E5284D F96E291E85F8DE391E52E >

Microsoft PowerPoint - 演習2:MPI初歩.pptx

課題 S1 解説 Fortran 編 中島研吾 東京大学情報基盤センター

Microsoft PowerPoint - 2_FrontISTRと利用可能なソフトウェア.pptx

並列・高速化を実現するための 高速化サービスの概要と事例紹介

NUMAの構成

スライド 0

PowerPoint プレゼンテーション

目次 LS-DYNA 利用の手引き 1 1. はじめに 利用できるバージョン 概要 1 2. TSUBAME での利用方法 使用可能な LS-DYNA の実行 4 (1) TSUBAMEにログイン 4 (2) バージョンの切り替え 4 (3) インタラ

スパコンに通じる並列プログラミングの基礎

Microsoft PowerPoint - OS07.pptx

スパコンに通じる並列プログラミングの基礎

Microsoft PowerPoint - 第10回講義(2015年12月22日)-1 .pptx

Microsoft PowerPoint _MPI-03.pptx

GeoFEM開発の経験から

スパコンに通じる並列プログラミングの基礎

GPUを用いたN体計算

パソコンシミュレータの現状

コードのチューニング

Microsoft Word ●IntelクアッドコアCPUでのベンチマーク_吉岡_ _更新__ doc

九州大学がスーパーコンピュータ「高性能アプリケーションサーバシステム」の本格稼働を開始

研究背景 大規模な演算を行うためには 分散メモリ型システムの利用が必須 Message Passing Interface MPI 並列プログラムの大半はMPIを利用 様々な実装 OpenMPI, MPICH, MVAPICH, MPI.NET プログラミングコストが高いため 生産性が悪い 新しい並

RICCについて

最新の並列計算事情とCAE

PowerPoint プレゼンテーション

Microsoft PowerPoint - 講義:片方向通信.pptx

VXPRO R1400® ご提案資料

UNIX 初級講習会 (第一日目)

演習1: 演習準備

演習1

Microsoft PowerPoint - 高速化WS富山.pptx

スライド 1

HPC143

PowerPoint Presentation

Microsoft PowerPoint - 講義:コミュニケータ.pptx

TopSE並行システム はじめに

Microsoft Word - openmp-txt.doc

スライド 1

4 月 東京都立蔵前工業高等学校平成 30 年度教科 ( 工業 ) 科目 ( プログラミング技術 ) 年間授業計画 教科 :( 工業 ) 科目 :( プログラミング技術 ) 単位数 : 2 単位 対象学年組 :( 第 3 学年電気科 ) 教科担当者 :( 高橋寛 三枝明夫 ) 使用教科書 :( プロ

<4D F736F F F696E74202D F F8F7482CC944E89EF8AE989E6835A E6F325F8CF68A4A94C55231>

Microsoft PowerPoint - 第7章(自然対流熱伝達 )_H27.ppt [互換モード]

第8回講義(2016年12月6日)

4 倍精度基本線形代数ルーチン群 QPBLAS の紹介 [index] 1. Introduction 2. Double-double algorithm 3. QPBLAS 4. QPBLAS-GPU 5. Summary 佐々成正 1, 山田進 1, 町田昌彦 1, 今村俊幸 2, 奥田洋司

PowerPoint プレゼンテーション

CCS HPCサマーセミナー 並列数値計算アルゴリズム

Microsoft PowerPoint - S1-ref-F.ppt [互換モード]

LS-DYNA 利用の手引 第 1 版 東京工業大学学術国際情報センター 2017 年 9 月 25 日

Microsoft PowerPoint MPI.v...O...~...O.e.L.X.g(...Q..)

MPI コミュニケータ操作

システムソリューションのご紹介

2007年度 計算機システム演習 第3回

Microsoft PowerPoint - 11Web.pptx

Microsoft PowerPoint - 講習 _kido.pptx[読み取り専用]

Microsoft PowerPoint ppt

スライド 1

PowerPoint Presentation

(Microsoft PowerPoint \215u\213`4\201i\221\272\210\344\201j.pptx)

EnSightのご紹介

製品開発の現場では 各種のセンサーや測定環境を利用したデータ解析が行われ シミュレーションや動作検証等に役立てられています しかし 日々収集されるデータ量は増加し 解析も複雑化しており データ解析の負荷は徐々に重くなっています 例えば自動車の車両計測データを解析する場合 取得したデータをそのまま解析

120802_MPI.ppt

Microsoft PowerPoint - compsys2-06.ppt

Fortran 勉強会 第 5 回 辻野智紀

ビッグデータ分析を高速化する 分散処理技術を開発 日本電気株式会社

PowerPoint プレゼンテーション

Stage 並列プログラミングを習得するためには : 1 計算機リテラシ, プログラミング言語 2 基本的な数値解析 3 実アプリケーション ( 例えば有限要素法, 分子動力学 ) のプログラミング 4 その並列化 という 4 つの段階 (stage) が必要である 本人材育成プログラムでは1~4を

PowerPoint Presentation

PowerPoint プレゼンテーション

(Microsoft PowerPoint \211\211\217K3_4\201i\216R\226{_\211\272\215\342\201j.ppt [\214\335\212\267\203\202\201[\203h])

(速報) Xeon E 系モデル 新プロセッサ性能について

Microsoft PowerPoint - OpenMP入門.pptx

高性能計算研究室の紹介 High Performance Computing Lab.

OpenMPプログラミング

熊本大学学術リポジトリ Kumamoto University Repositor Title GPGPU による高速演算について Author(s) 榎本, 昌一 Citation Issue date Type URL Presentation

Microsoft Word - thesis.doc

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション

enshu5_4.key

Microsoft PowerPoint - GPGPU実践基礎工学(web).pptx

C/C++ FORTRAN FORTRAN MPI MPI MPI UNIX Windows (SIMD Single Instruction Multipule Data) SMP(Symmetric Multi Processor) MPI (thread) OpenMP[5]

hpc141_shirahata.pdf

<4D F736F F D B B B835E895E97708A4A8E6E82C A98418C6782CC8E6E93AE2E646F63>

Transcription:

計算流体力学 ( 第 13 回資料 ) 2014 年 1 月 14 日 スーパーコンピュータの性能 並列計算法 (Parallel Computing) 話のポイント : 並列計算機の仕組みと並列化の方法 Flops 1Pflops 33862Tflops(2013):Tianhe-2 10510Tflops(2011): 京 36Tflops(2002): 地球シミュレータ 1Tflops First Parallel Computer 1972 Massive parallel multi-proessor vetor 並列計算の目的 より大規模な問題の計算が可能となる. (n 倍のメモリー,n: プロセッサ数 ) 計算時間を大幅に短縮できる.( 計算時間 1/n) vauum tube saler transistor miro proessor http://www.top500.org 並列コンピュータの必要性 科学的に複雑な問題の解明 1980 年代末に提案されたグランド チャレンジ問題 計算流体力学と乱流 大域的な気象と環境のモデル化 物質の設計と超流動 医学, 人間の臓器と骨格のモデル化 宇宙論と宇宙物理学 : コンピュータの性能向上回路素子の進歩真空管 トランジスタ 集積回路 超大規模集積回路 シングルプロセッサの限界真空中の光の速度 ( 約 3 10 8 m/se) 並列計算の歴史 Rihardson( 英国 ) 1911 年 : 非線形偏微分方程式の数値解法を発表 1922 年 : 数値的方法による天気予測 大気を 5 層に分け, 水平方向にはヨーロッパ大陸をブロックに分割した 6 時間分の計算を手回し計算機で 6 週間 Rihardson の夢北半球全体を約 2,000 個のブロックに分け,32 人が一つのブロックの計算を担当すれば,6 時間先の予報を 3 時間で出来ると見積もった. (64,000 人が巨大な劇場に集合し, 指揮者のもとで一斉に計算を行えば実現できる )

Rihardson の夢 Rihardson,L.F.:Weather Predition by Numerial Proess, Cambridge University Press, London, 1922 並列コンピュータの出現 イリノイ大学 Daniel Slotni:2 種類の並列コンピュータを設計 1972 年 : 世界最初の並列計算機 ILLIAC Ⅳ(Burroughs 社 ) 完成 (64 台の処理ユニット,1 台の中央処理ユニット :SIMD) 日本での並列コンピュータ構築研究 1977 年 :PACS/PAX プロジェクトが発足星野力 ( 京都大学 筑波大学 ) PACS-9(1978 年,0.01Mflops) PAX-32(1980 年,0.5Mflops) 1980 年 PACS/PAX プロジェクト筑波大学に移動 PAX-128(1983 年,4Mflops) PAX-64J(1986 年,3.2Mflops) QCDPAX(1989 年,14Gflops) CP-PACS(1996 年,300Gflops) (1997 年,600 Gflops:2048CPU)

地球シミュレータ ( 初代 ) 640 nodes (5120 CPU) 8GFLOPS@5120 =40TFLOPS 35.86Tflops ( 実効ピーク性能 ) 地球シミュレータ ( 現在 ) http://www.jamste.go.jp/es/ 2009 年 3 月導入の新たなシステム (NEC SX-9/E) 2002 年から 2 年半世界最高速 世界 472 位 (2013 年 11 月現在 ) 160 nodes(1280 CPU) 102.4GFLOPS@1280=131TFLOPS 122.4Tflops( 実効ピーク性能 ) TSUBAME 2.5( 東工大 ) 世界 11 位 2843TFLOS( 実効ピーク ) 次世代スパコン京 共有メモリー型と分散メモリー型 共有メモリー型 (shared memory type): すべてのプロセッサーがメモリーを共同で使用するタイプ分散メモリー型 (distributed memory type): すべてのプロセッサーが個別にメモリーを持っている 世界 4 位 (2013 年 11 月現在 ) http://www.ns.riken.jp/index_j.html 705024 ores(88128 CPU) 128GFLOPS@88128=11280TFLOPS 10510Tflops( 実効ピーク性能 ) 実効効率 93%

並列計算機とプログラミングの方法 共有メモリシステム OpenMP MPI 分散メモリシステム 並列計算機とプログラミングの方法 共有分散メモリシステム (shared-distributed memory type): 大規模並列システムの場合 MPI MPI OpenMP MPI OpenMP MPI OpenMP MPI PC luster GPU を用いた汎用計算 PC(Gateway) GPGPU とは General Purpose Graphis Proessing Unit GPU を一般的な用途で利用することの総称 PCs HUB 自作も容易 OS:Linux が主流 GPU の特徴 演算能力が非常に高い 例 :GeFore GTX Titan:4.5TFlops デスクトップ PC(Win, Ma & Linux) に搭載可能. ( もちろんノート PC にも ) 高 FLOPS の割に値段が安い GeFore GTX780(4.0Tflops):50,000 円程度 数値計算専用のモデルもある (Tesla シリーズ, 搭載メモリ多い ) Tesla K40( スパコン向け )

GPU 計算への応用 (CUDA FORTRAN を利用 ) 並列計算機の性能向上と普及 SM: ストリーミングマルチプロセッサ 448/32=14 個 SP: ストリーミングプロセッサ SM1 つあたり 32 個 シェアードメモリ ( 超高速 ) レジスタ メモリ ( 超高速 ) ハードウエア従来のベクトルスーパーコンピュータの性能をはるかに上回る性能の実現 ( マイクロプロセッサの性能向上, 高速ネットワーク ) 超高性能並列コンピュータから PC クラスターまで 144GB/se *NVIDIA 製 GPU のアーキテクチャ ソフトウエア MPI,OpenMP などの並列プログラミング支援ツールの整備 ビデオメモリ ( グローバルメモリ ) プロセッサ メモリ17 SP 数クロック周波数 ピーク演算性能標準メモリ設定メモリバンド幅 Tesla C2075(GPU) 448 個 1147MHz 1027.7GFLOPS( 単精度 ) 515GFLOPS( 倍精度 ) 6GB GDDR5 144GB/s Intel Core i7 990Xの場合 6 個 3460MHz 83.2GFLOPS 25.6GB/s 誰もが並列計算できる環境が整った ( パラダイムの変化 ) 欧米のほとんどの土木 機械系の大学院では並列計算に関する講義科目が用意されている 並列プログラミング支援ツール 1)OpenMP を用いる ( 共有メモリ型 ) プログラム構造を変更することなく指示文を挿入するだけで並列化可能 2) メッセージパッシングライブラリーを用いる ( 分散メモリ型, 共有メモリ型 ) MPI(Message Passing Interfae), ライブラリー関数群 ( 逐次言語 (Fortran,C など ) のライブラリーとして使用 ) 本格的な並列プログラミングが可能 3) 自動並列化コンパイラーを用いる ( 共有メモリ ) プログラム ( 逐次言語 ) をコンパイラーが自動並列化 OpenMP とは 共有メモリ型並列計算機に対する並列化手法 コンパイラに対して並列化の指示を行なうために, プログラム中に追加する指示行の記述方法を規定 ( Fortran や C/C++ の並列化に対する標準規格 ) 特徴 : 1) 並列化が容易逐次プログラムに指示行を挿入 2) 移植性が高い OpenMP に準拠しているコンパイラ 3) 逐次プログラムとの共存が容易並列プログラムとしても逐次プログラムとしても利用できる

OpenMP による並列計算 OpenMP プログラムの並列計算の概要 OpenMPの基本的な規則!$OMP :OpenMP 指示文!$ = * :OpenMP のみで実行される演算.! : コメント文. program welome_to_parallel_world_omp integer :: mythread mythread = 0 write(6,*) mythread, Hello Parallel World!$OMP parallel private( mythread ) マスタースレッド write(6,*) Hello Parallel World program hello_world_omp integer :: mythread mythread = 0!$OMP parallel private( mythread )!$ mythread = omp_get_thread_num() wirte(6,*) mythread, Hello World!$OMP end parallel end program hello_world_omp Parallel 構文 ( 並列リージョンの立上げ ) 環境変数の獲得 ( 自分が何番のスレッドなのか ) Parallel 構文 ( 並列リージョンの終了 )!$ mythread = omp_get_thread_num() write(6,*) mythread, Parallel Computing!$OMP end parallel write(6,*) mythread, Good-by end program welome_to_parallel_world_omp write(6,*) Good-by スレーブスレッド メッセージ通信によるプログラミング プロセッサ間やネットワークで結ばれたコンピュータ間の制御, 分散主記憶に分散された情報の交換を, メッセージ通信により行なう. 分散メモリー型並列計算機では, メッセージ通信によるプログラミングが最もハードウエア構成に即したプログラミングであり高性能な計算が行える ( 共有メモリー型並列計算機でも有効 ). MPI(Message Passing Interfae) が標準 (MPI-1: 基本仕様,MPI-2: 拡張機能仕様 ) 無償でダウンロードできる MPI(Message Passing Interfae) とは ノード間の情報交換をメッセージ通信で行なうライブラリ ( プログラム言語ではない ) Fortran や C などの従来の逐次プログラム言語中において, ライブラリとして引用する ( 各ノードにおいて不足する情報の交換を,MPI サブルーチンを適切に all することにより行なう ) 様々なプラットホームで利用できるフリーウェア MPI の実装 MPICH:http://www-unix.ms.anl.gov/mpi/mpih/ LAM:http://www.lam-mpi.org/ Windows 環境で動作する MPI もある

MPI のサブルーチン 1) 環境管理サブルーチン MPI_INIT, MPI_COMM_SIZE, MPI_COMM_RANK MPI_FINALIZE 2) グループ通信サブルーチン MPI_REDUCE, MPI_ALLREDUCE 3)1 対 1 通信サブルーチン MPI_ISEND, MPI_IRECV, MPI_WAITALL, MPI_WAIT 4) その他 MPI_WTIME 例題 : 配列の和を求める 並列計算プログラミング 配列 A(1) から A(100) の総和を求める 配列 A 逐次プログラム do i=1,num a(i)=i end do s=0 do i=1,num s=s+a(i) end do A(1) A(2) A(3) A(100) 複数のプロセッサで並列に処理し 実行時間の短縮を図る impliit double preision (a-h,o-z) parameter ( num = 100 ) integer a(num) integer s do i=1,num a(i)=i end do s=0 do i=1,num s=s+a(i) end do write(6,100) s 100 format(3x,'sum = ', i10) stop end 並列計算プログラミング プログラム名 :single_sum.f A(1)+ A(1) A(25) PE 0 が担当 メモリー A(100),S,TS 並列計算プログラミング例 配列をプロセッサに分割する配列 A(100) の和の計算を 4 プロセッサ (PE) に分担させた A(26) A(50) PE 1 が担当 A(51) A(75) PE 2 が担当 + A(100) A(76) A(100) PE 3 が担当 部分和 + 総和 部分和 部分和 部分和 s = A(1)+ + A(25) s = A(26)+ + A(50) s = A(51)+ + A(75) s = A(76)+ + A(100) PE:0 PE:1 PE:2 PE:3 CPU CPU CPU CPU メモリー A(100), S メモリー A(100), S 総和 TS= S(PE0) + S(PE1) + S(PE2) + S(PE3) メモリー A(100), S

MPI プログラムの基本的構造 変数の定義, 宣言 inlude 'mpif.h' MPI プログラムのコンパイルに必要 all MPI_INIT( ierr ) MPI 環境の初期化 all MPI_COMM_RANK ( MPI_COMM_WORLD, irank, ierr ) 各プロセスのランク irank を取得 all MPI_COMM_SIZE ( MPI_COMM_WORLD, isize, ierr ) プロセス数 isize を取得 : 並列処理プログラム : all MPI_FINALIZE( ierr ) MPI の終了 stop end impliit double preision (a-h,o-z) parameter ( ip = 4 ) parameter ( num = 100 ) integer A( num ) integer S integer TS inlude 'mpif.h' MPIプログラムのコンパイルに必要 all MPI_INIT( ierr ) MPI 環境の初期化 all MPI_COMM_RANK ( MPI_COMM_WORLD, irank, ierr ) 自分のランクirankを取得 all MPI_COMM_SIZE ( MPI_COMM_WORLD, isize, ierr ) プロセス数 isizeを取得 do i = 1, num A(i) = i end do S = 0 TS = 0 ipe = num / ip ist = 1 + irank * ipe iet = ( irank + 1 ) * ipe 並列計算プログラミング例 並列計算プログラミング例 do i = ist, iet S = S + A(i) end do all MPI_REDUCE( S, TS, 1, MPI_INTEGER, MPI_SUM, 0, & MPI_COMM_WORLD, ierr ) 各プロセスの部分和 Sをプロセッサ0に集め総和を求めTSに格納 write(6,100) irank, S, TS 100 format(3x,'irank = ',i3,3x,2i10) all MPI_FINALIZE( ierr ) MPIの終了 stop 計算結果 end irank = 0 325 5050 irank = 1 950 0 irank = 2 1575 0 irank = 3 2200 0 MPI サブルーチン引用例 all MPI_REDUCE( S, TS, 1, MPI_INTEGER, MPI_SUM, 0, & MPI_COMM_WORLD, ierr ) 各プロセスの部分和 S をプロセス 0( ランク 0) に集め総和を求め TS に格納 all MPI_REDUCE(sendbuf, revbuf, ount, datatype, op, root, omm, ierror) sendbuf: 送信バッファの先頭アドレスを指定する. revbuf: 受信バッファの先頭アドレスを指定する. ount: 整数. 送 ( 受 ) 信メッセージの要素数を指定する. datatype: 整数. 送 ( 受 ) 信メッセージのデータタイプを指定する. op: 整数. 演算の種類を指定する. root: 整数. 宛先プロセスの omm 内でのランクを指定する. omm: 整数. 送受信に参加するすべてのプロセスを含むグループのコミュニケータを指定する. ierror: 整数. 完了コードが戻る.

連立一次方程式の並列解法陽解法並列化の容易さ : 容易並列化効率 : 良好陰解法直接法並列化の容易さ : やや難並列化効率 : やや不良 ( 超並列には不向き ) Melosh et al., Comp. Strut., Vol.20, pp.99-105, 1985 反復法並列化の容易さ : 容易並列化効果 : 良好 ガウスの消去法が最も効率がよい. Hughes らによって提案された element-by-element 法に基づく前処理付き共役勾配法 省メモリーでかつ高効率 Barragy and Carey, Int.J.Numer.Meth.Engng., Vol.26, pp.2367-2382, 1988 Tezduyar et al.1992-present( 流れの並列計算に関する論文多数 ) 並列プログラミング参考書 樫山, 西村, 牛島 : 並列計算法入門, 日本計算工学会編 ( 計算力学レクチャーシリーズ 3), 丸善 (2003) 1 章計算力学における並列計算概論 2 章有限要素法における並列計算法 3 章有限差分法における並列計算法 4 章境界要素法における並列計算法 5 章 PC クラスターの構築法とグリッドコンピューティング付録並列プログラム 牛島 :OpenMP による並列プログラミングと数値計算法, 丸善 (2006) 1 章 OpenMP と並列計算 2 章 OpenMP によるプログラミング 3 章 OpenMP による並列数値計算 4 章付録 スピードアップ = 並列化効率 = 並列計算効率の評価指標 1 ノード使用時の実行時間 N ノード使用時の実行時間 スピードアップ N 並列計算における計算時間 全計算時間 = 計算時間 + 通信時間 + 同期待ち 粒度 (granularity): 並列処理の単位粗粒度 : 通信負荷に比べて計算負荷が卓越全計算時間は遅いが並列化効率は良い 細粒度 : 通信負荷が増大全計算時間は速いが並列化効率は悪い :並列計算における実行時間 実行時間 = 計算時間 + 通信時間 + 同期待ち時間 ノード 1 同期待ち時間 :計算時間通信時間 ノード n 実行時間 1 ステップあたりの実行時間

粒度が小さい ( 細粒度 ) と並列化効率が悪くなる理由 実行時間 高効率な並列計算を実現するには 1) 並列処理可能な部分の拡大可能な限りの処理の並列化 計算時間 ( 並列化不可能部分 ) 計算時間 ( 並列化可能部分 ) 通信時間 n 台 n1 / 1 2 4 8 16 ノード数 1台並列化不可能並列化可能計算時間 2) 各プロセッサの計算負荷の均等化各プロセッサーに割り当てる要素数の均等化 3) プロセッサ間の通信量の最小化通信を行う節点の最小化自動領域分割法が有効 アムダールの法則 P: 並列化部分率, N: 使用するプロセッサ数 1 スピードアップ (1 P ) P / N 領域分割法 MPI に基づく並列計算では領域分割に基づく並列計算が一般的 解析領域 有限要素方程式小領域の境界自動領域分割法 (1) 小領域内での要素数の均等化 (2) 小領域間の境界上の節点数の最小化効率の良い並列計算

領域分割法伊勢湾台風による被害 (1959) (a) 節点ベース (b) 要素ベース 9 (a) 節点ベース 10 11 12 9 (b) 要素ベース 10 11 1 12 5 6 7 8 5 6 7 8 2 1 2 3 4 1 2 3 4 要素ベースの方法 Bisetion 法 : 計算領域を次々に数学的手法を用いて 2 分していく方法. Greedy 法 : 隣接要素を記憶しておき近隣の要素を必要数だけ探索する方法. 数学理論を用いない簡便な方法 有限要素メッシュ 領域分割図 (elements:206,977,nodes:106,577) (512 sub-domain)

領域分割に基づく並列計算例 領域分割に基づく並列計算例 計算結果と観測結果との比較 ( 名古屋港 ) 速度向上比 (Speed-up ratio) 並列化効率 (Effiieny) 速度向上比 = 1 プロセッサ使用時の CPU 時間 N プロセッサ使用時の CPU 時間 並列化効率 = 速度向上比 N

領域分割図 大気環境流れ 通信ライブラリ : MPI 自動領域分割システム :Metis 例 :64 分割図 まとめ 並列計算機環境の進歩 普及と並列化手法ついて紹介した. マルチコア CPU 登載のパソコンの普及により 誰もが並列計算可能な環境にある 共有メモリー型コンピュータの場合には OpenMP が 分散メモリー型コンピュータの場合には MPI が有効である 大規模計算には領域分割に基づく並列計算 (MPI) が並列化効率の点から一般的である 連立一次方程式の解法は反復法が並列化効率の点で優れる 今後の期待 ハイブリッド計算 (Open MP+MPI) GPU コンピューティングのさらなる進歩 普及 商用ソフトウエアの紹介 世界でもっとも使用されているソフトウエア 1 位 FLUENT 有限体積法に基づく使用実績世界 No.1の汎用熱流体解析ソフトウェア. http://ansys.jp/produts/fluent/ 2 位 STAR-CD( 日本では最も使用されている ) 有限体積法に基づく汎用熱流体解析ソフトウェア. http://www.daj.o.jp/ http://ausolve.jsol.o.jp/index.html 自動車系に強い AuSolve: 有限要素法 (Galerkin/Least-Squares:GLS 法 ) による汎用熱流体解析ソフトウェア http://ausolve.jsol.o.jp/index.html

AuSolve AuSolve は有限要素法による汎用熱流体解析システム 有限要素法 (Galerkin/Least-Squares:GLS) 法による汎用性と高精度な解 テトラメッシュの使用を推奨 メッシュの歪みに頑強で 実用形状のメッシュ作成工数を大幅に低減できる 反復収束が速やかで解析時間を予測できるので 製品開発設計工程での計画的な適用が可能 3 次元 CAD との連携やユーザーインターフェースのカスタマイズによって CAE オートメーションが可能 http://ausolve.jsol.o.jp/index.html FLUENT FLUENTは 有限体積法に基づく使用実績世界 No.1のCFD( 数値流体力学 ) ソフトウェア http://ansys.jp/produts/fluent/ FLUENTには豊富な物理モデルが搭載されており 化学反応 燃焼 混相流 相変化などが取扱える また 高度なカスタマイズも可能 プリプロセッサには GAMBITを標準装備 FLUENTでは連成解法および分離解法のアルゴリズムを用いて 非構造格子で離散化した質量 運動量 熱 化学種に関する支配方程式を解く 2 次元平面 2 次元軸対称 旋回を伴う2 次元軸対称 および3 次元の流れ 定常 / 非定常流 あらゆる速度域に対応 非粘性流 層流 乱流 ニュートン流体 非ニュートン流体 強制/ 自然 / 混合対流を含む熱伝達 固体 / 流体連成熱伝達 ふく射 化学種の混合 / 反応 自由表面流/ 混相流モデル 分散相のラグランジュ式追跡計算 融解/ 凝固を対象とした相変化モデル 非等方浸透性 慣性抵抗 固体熱伝導 空隙率を考慮した速度 多孔質面圧力ジャンプ条件を含む多孔質モデル ファン ラジエータ 熱交換器を対象とした集中定数モデル 移動物体周りの流れをモデル化するダイナミックメッシュ機能 慣性または非慣性座標系 複数基準座標系およびスライディングメッシュ 動静翼相互作用をモデル化する接続境界面モデル 流体騒音予測のための音響モデル 質量 運動量 熱 化学種の体積ソース項 物性値のデータベース STAR-CD STAR-CD 英国インペリアル大学のゴスマン教授を中心として開発された有限体積法非構造メッシュによる汎用熱流体解析プログラム.http://www.daj.o.jp/ CD-adapo により開発 STAR-CD がカバーする解析対象は単純な熱流れ解析から, 固体熱伝導や輻射 / 太陽輻射を含んだ熱問題, 様々なタイプの混相流問題, 化学反応 / 燃焼問題, 回転機器問題, 流体騒音問題, 移動境界問題など多岐に渡り, 解析メッシュ作成機能としてもサーフェスメッシャー, サーフェスラッパー, ボリュームメッシャーなどを標準機能として提供するほか,CAD との親和性を高めた, CAD の中で STAR-CD を利用するアドオン環境 (CATIA v5, Pro/E, UG-NX, SolidWorks) も用意. 非構造 / 完全不連続メッシュ ( メッシュのつながりを意識せずにモデル化が可能 ) による複雑形状への優れた柔軟性とメッシュ作成コストの削減 ( ヘキサ, テトラ, プリズム, トリムセルを含む多面体セルに対応 ) 自動車, 航空宇宙, 重工重電, 家電, 化学, 建築, 官公庁など ( 国内 1200 ライセンス, 全世界で 3500 ライセンスを超える導入実績 )