応用数理工学特論 第6回 計算理工学専攻 張研究室 山本有作.

Slides:



Advertisements
Similar presentations
HBSP モデル上での 行列積を求めるアルゴリ ム 情報論理工学 吉岡健太.
Advertisements

大規模な三角 Toeplitz 線形方 程式の高速解法とその応用 ○ 安村 修一(法政大学 4 年) 李 磊(法政大学) 日本応用数理学会「行列・固有値の解法とその応用」研究部会 第6回研究会.
Level-3 BLASに基づく特異値分解 アルゴリズムのSMP上での性能
区間グラフにおける区間表現からMPQ-treeを効率よく構成するアルゴリズム
データ解析
基本情報技術概論 I 演習(第5回) 埼玉大学 理工学研究科 堀山 貴史
有限差分法による 時間発展問題の解法の基礎
計算理工学基礎 「ハイパフォーマンスコンピューティングの基礎」
Fill-in LevelつきIC分解による 前処理について
A Q R QR分解とは? → × ◆QR分解 QTQ = I (単位行列) ◆応用例 ◆主な計算方法 n m 今回はこの方法に注目
アルゴリズムとデータ構造 第8回 ソート(3).
三重対角化アルゴリズムの性能評価 早戸拓也・廣田悠輔.
研究集会 「超大規模行列の数理的諸問題とその高速解法」 2007 年 3 月 7 日 完全パイプライン化シフト QR 法による 実対称三重対角行列の 固有値並列計算 宮田 考史  山本 有作  張 紹良   名古屋大学 大学院工学研究科 計算理工学専攻.
Finger patternのブロック化による 陰的wavelet近似逆行列前処理の 高速化
4.3 連立1次方程式   Ax = b   (23) と書くことができる。
PCクラスタにおける2個体分散遺伝的アルゴリズムの高速化
DNASシステム上のアプリケーション起動シーケンスのための基盤であるdsh部分の性能評価
スペクトル法による数値計算の原理 -一次元線形・非線形移流問題の場合-
対角マトリックスを用いた3次元剛塑性有限要素法の並列計算 対角マトリックスを用いた剛塑性有限要素法
AllReduce アルゴリズムによる QR 分解の精度について
P,Q比が変更可能なScaLAPACKの コスト見積もり関数の開発
分散遺伝的アルゴリズムによる各種クラスタのベンチマーク
IT入門B2 ー 連立一次方程式 ー.
香川大学工学部 富永浩之 情報数学1 第2-1章 合同式の性質と計算 香川大学工学部 富永浩之
PCクラスタ上での 連立一次方程式の解の精度保証
応用数理工学特論 線形計算と ハイパフォーマンスコンピューティング
応用数理工学特論 線形計算と ハイパフォーマンスコンピューティング
応用数理工学特論 線形計算と ハイパフォーマンスコンピューティング
応用数理工学特論 第5回 計算理工学専攻 張研究室 山本有作.
応用数理工学特論 線形計算と ハイパフォーマンスコンピューティング
応用数理工学特論 線形計算と ハイパフォーマンスコンピューティング
応用数理工学特論 線形計算と ハイパフォーマンスコンピューティング
計算アルゴリズム 計算理工学専攻 張研究室 山本有作.
計算アルゴリズム 計算理工学専攻 張研究室 山本有作.
二分探索木によるサーチ.
7-3.高度な木 (平衡木) AVL木 平衡2分木。回転操作に基づくバランス回復機構により平衡を保つ。 B木
文献名 “Performance Tuning of a CFD Code on the Earth Simulator”
応用数学 計算理工学専攻 杉原研究室 山本有作.
OpenMPハードウェア動作合成システムの検証(Ⅰ)
領域分割手法について 2008年2月26日 中島研吾.
計算理工学基礎 「ハイパフォーマンスコンピューティングの基礎」
高速剰余算アルゴリズムとそのハードウェア実装についての研究
応用数理工学特論 第9回 高速フーリエ変換の高性能化手法
ひび割れ面の摩擦接触を考慮した損傷モデル
Level-3 BLASに基づく二重対角化 アルゴリズムとその性能評価
MPIとOpenMPを用いた Nクイーン問題の並列化
Jh NAHI 横田 理央 (東京工業大学) Hierarchical low-rank approximation methods on distributed memory and GPUs 背景  H行列、H2行列、HSS行列などの階層的低ランク近似法はO(N2)の要素を持つ密行列をO(N)の要素を持つ行列に圧縮することができる。圧縮された行列を用いることで、行列積、LU分解、固有値計算をO(NlogN)で行うことができるため、従来密行列の解法が用いられてきた分野では階層的低ランク近似法
トーリックイデアルの グレブナ基底を求める アルゴリズム – F4およびF5 –
導電性高分子材料の電子状態計算に現れる連立一次方程式に対する 並列直接解法の高性能化
Cプログラミング演習 第10回 二分探索木.
ポリゴンメッシュ (2) - 変形と簡略化- 東京大学 精密工学専攻 大竹豊 資料および授業の情報は :
GPUを用いた疎行列の格納形式による行列ベクトル積の評価
FEM勉強会 (第3回).
目的:高速QR分解ルーチンのGPUクラスタ実装
背景 課題 目的 手法 作業 期待 成果 有限体積法による汎用CFDにおける 流体構造連成解析ソルバーの計算効率の検証
全体ミーティング (5/23) 村田雅之.
アルゴリズムとプログラミング (Algorithms and Programming)
対象:せん断補強筋があるRCはり(約75万要素)
原子核物理学 第7講 殻模型.
Jh NAHI 横田 理央 (東京工業大学) Hierarchical low-rank approximation methods on distributed memory and GPUs 背景  H行列、H2行列、HSS行列などの階層的低ランク近似法はO(N2)の要素を持つ密行列をO(N)の要素を持つ行列に圧縮することができる。圧縮された行列を用いることで、行列積、LU分解、固有値計算をO(Nlog2N)で行うことができるため、従来密行列の解法が用いられてきた分野では階層的低ランク近似
BSPモデルを用いた 並列計算の有用性の検証
香川大学創造工学部 富永浩之 情報数学1 第2-1章 合同式の性質と計算 香川大学創造工学部 富永浩之
ヒープソート.
密行列固有値解法の最近の発展 (I) - Multiple Relatively Robust Representation アルゴリズム - 2004年11月26日 名古屋大学 計算理工学専攻 山本有作 日立製作所の山本有作です。 「~」について発表いたします。
目次 はじめに 収束性理論解析 数値実験 まとめ 特異値計算のための dqds 法 シフトによる収束の加速
応用数理工学特論 線形計算と ハイパフォーマンスコンピューティング
分散メモリ型並列計算機上での行列演算の並列化
応用数学 計算理工学専攻 張研究室 山本有作.
2008年 7月17日 応用数理工学特論 期末発表 鈴木綾華,程飛
各種荷重を受ける 中空押出形成材の構造最適化
Presentation transcript:

応用数理工学特論 第6回 計算理工学専攻 張研究室 山本有作

ポアソン方程式の数値解法 ポアソン方程式 応用 物理的意味 熱伝導 静電場 流体力学 応力とひずみの解析 ある点でのu の値 = その周囲でのu の値の平均値 + 外力の項

大規模計算の例 3次元の応力・ひずみ解析

簡単な例 2次元正方領域での熱伝導方程式 y 1 u(0, y) = 0 u(1, y) = 0 u(x, 0) = 0 1

2次元ポアソン方程式の離散化 5×5の2次元格子 差分法で離散化 → 疎行列 格子 行列 1 2 3 4 5 6 7 8 9 10 11 差分法で離散化 → 疎行列 格子 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 行列

反復法の収束特性の例 ヘルムホルツ方程式 張研で開発 されたGPBi-CG法→

2次元ポアソン方程式のオーダリング 5×5の2次元格子 分割を2段階行い,領域を4個の部分領域に分割 格子 行列 ND法による オーダリング 1 2 3 4 5 ND法による オーダリング 1 3 9 5 7 第1段階での セパレータ 6 7 8 9 10 2 4 10 6 8 21 22 23 24 25 11 12 13 14 15 第2段階での セパレータ 16 17 18 19 20 11 13 19 15 17 21 22 23 24 25 12 14 20 16 18 行列 ND法による オーダリング 各対角ブロック の分解は独立に 実行可能

一般の場合のオーダリング Nested Dissection 法によるオーダリング (有限要素法から生じる疎行列の場合) セパレータ Nested Dissection 法によるオーダリング   (有限要素法から生じる疎行列の場合) セパレータと呼ばれる節点集合を取り除くことにより,メッシュを2つの部分に分割 この分割に従って行列の行・列を並び替え,行列を縁付きブロック対角形に変形 この処理を各対角ブロックに対して再帰的に繰り返す オーダリングによる並列性抽出 コレスキー分解のステップでは,各対角ブロックを並列に分解可能 各対角ブロックの演算負荷が均等で,かつ縁の部分が狭い(セパレータに属する節点の個数が小さい)分割が望ましい 有限要素法メッシュ 置換後の行列 1 2 3 4 5 6 7 7 3段階の分割後の行列

消去木と演算の並列性 消去木とは ND法でオーダリングした行列に対する消去木 疎行列のコレスキー分解における消去演算の依存関係を表現するグラフ 消去木の各節点は行列 L の各列に対応 ND法でオーダリングした行列に対する消去木 消去木と行列の対応関係 鎖の部分 ⇔ 縁の部分 部分木 ⇔ 対角ブロック 共通部分を持たない2つの部分木に対する分解演算は並列に実行可能 再帰的縁付きブロック 対角行列 対応する消去木

消去木を用いたデータ割り当て subtree-to-subcube 割り当て 消去木が不均等な場合 鎖の部分では,周期的に節点をプロセッサに割り当てる 分岐点でプロセッサ群を2分割し,各部分木をそれぞれのプロセッサ群に割り当てる。この操作を再帰的に行う 消去木が不均等な場合 単純な subtree-to-subcube 割り当てでは大きな負荷不均衡が生じる場合あり subtree-to-subcube 割り当ての改良が必要

コレスキー分解 処理 アルゴリズム 各プロセッサに分散された行列 A を入力として,並列にコレスキー分解を行う 対角ブロックの分解と縁の部分の計算を,小さいレベルのブロックから順に再帰的に繰り返す 入力行列 消去木 4プロセッサで協調して消去演算 2プロセッサで協調して消去演算 各プロセッサで独立に消去演算(通信なし)

スパースソルバの処理フロー START オーダリング シンボリック分解I 各プロセッサへの データ割り当て決定 データ分散 置換行列Pの作成。演算量削減と並列性抽出が目標 分解後の非零要素決定,演算量・所要メモリ量算定, 消去木作成 シンボリック分解I 各プロセッサへの データ割り当て決定 消去木に基づき,負荷均等化・通信最小化を達成する ように行列の列のプロセッサへの割り当てを決定 データ分散 上記の割り当て方法に基づき,行列データを分散 シンボリック分解II 分解後の非零要素を格納するデータ構造を作成 コレスキー分解 前進後退代入 データ収集 END

試作版スパースソルバの性能評価結果 概要 計算機環境 以上のアルゴリズムに基づく並列プログラムを開発し,2種のPCクラスタ上で性能評価を行った 計算機環境 Alphaクラスタ(mellon) Alpha EV5 533Mhz ×8ノード RAM 128MB/ノード 100base-tx 接続 コンパイラは g77 –O3 を使用 Power PC G5クラスタ(muscat) PowerPC G5 2.0Ghz × 8ノード RAM 2GB/ノード Gigabit Ether接続

例題 Harwell Boeing Matrix Collectionの5種の行列と,3次元ポアソン方程式を離散化して得られる行列に対し,コレスキー分解の性能を評価 Title Discipline Size(N) Nonzero 演算量(Gflop) 3dp24 3次元ポアソン 243 41472 1.15 3dp32 323 98304 6.59 BCSSTK17 Elevated pressure vessel 10974 428650 0.24 BCSSTK18 R.E. Ginna Nuclear Power Station 11948 149090 0.11 BCSSTK29 Buckling model of a Boeing 767 rear pressure bulkhead 13992 619488 0.66 BCSSTK30 Statics module of an off-shore generator platform 28924 1036208 1.37 BCSSTK31 Statics module of an automobile component 35538 608502 1.87

1プロセッサでの実行時間(コレスキー分解部) Alphaプロセッサでの実行時間 G5プロセッサでの実行時間 G5 は Alpha の10倍程度高速

並列実行時の加速率 3dp24,32,bcsstk30,31は比較的よい結果 bcsstk29は加速率が低い

消去木による分析 消去木を用いて,各レベルでの負荷分散と演算・通信の時間比を調べ,性能評価結果を分析 3dp24の場合 負荷分散は比較的良い   → 加速率良好 上のレベルでの演算が多く,   独立に実行可能な演算が   少ない   → これを改善すれば,並列      化効率を更に改善可能 レベル0: 全PUで協調 レベル1: 4PUで協調 レベル2: 2PUで協調 レベル3: 各PUが独立に計算 演算時間 通信時間 面積が時間の長さを表す

消去木による分析(続き) bcsstk30 bcsstk29 消去木を用いて並列性能を解析し,性能改善に役立てることが可能 ・ 独立に演算できる部分が多い   → 加速率良好 ・ 負荷分散はやや不均衡   → これを改善すれば,並列化      効率を更に向上可能 ・ 演算のほとんどは最上位レベルで,  独立に演算できる部分が少ない   → 並列化効率の改善には,より      良いオーダリングが必要 消去木を用いて並列性能を解析し,性能改善に役立てることが可能

グループ発表について 概要 スケジュール 最後の2回の授業を使って行う。 2~3人のグループで1つの発表を行う。 講義で勉強したことをもとに,自分たちで数値実験を行った結果を発表。 スケジュール グループ決定: 6/15 まで 発表テーマ決定: 6/22 まで 発表: 7/6,7/13 (各グループ15~20分程度)

発表テーマの例 自分の取り組んでいるシミュレーションのプログラムを,高性能化あるいは並列化した結果の報告 講義で学んだ行列計算アルゴリズムの性能評価 分散メモリ型計算機上でのLU分解の並列化 スパースソルバの性能評価 固有値計算アルゴリズムの性能評価,など 高性能計算に関する論文を読み,まとめて報告 その他