92
六面体メッシュの 六面体メッシュの 適合 適合 適合列局所分化と 適合列局所分化と 負荷分散 負荷分散 負荷分散 負荷分散 Conforming parallel adaptive mesh refinement for hexahedral elements hexahedral elements 中島 研吾 中島 研吾 東京大学情報基盤センター 2008年並列/分散/協調処理に関する 『佐賀』サマー・ワークショップ(SWoPP佐賀2008200885日~7

六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

六面体メッシュの六面体メッシュの適合 並 細適合 並 細適合型並列局所細分化と適合型並列局所細分化と

負荷分散負荷分散負荷分散負荷分散

Conforming parallel adaptive mesh refinement for hexahedral elementshexahedral elements

中島 研吾中島 研吾東京大学情報基盤センター

2008年並列/分散/協調処理に関する 『佐賀』サマー・ワークショップ(SWoPP佐賀2008)2008年8月5日~7日

Page 2: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 2

概 要概 要

• AMRとData Migration• AMRとData Migration• 断層における応力蓄積シミュレーション

• 単位すべり応答関数計算用フレームワーク

– 六面体メッシュと局所細分化

– 負荷分散

• 評価評価

– PCクラスタ

– T2Kオープンスパコン(東大)T2Kオ プンス ン(東大)

• まとめ

Page 3: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 33

適応格子法(適応格子法(AMRAMR)()(1/21/2))適応格子法(適応格子法(AMRAMR)()(1/21/2))• 差分法 有限要素法などで空間を離散化する場合差分法,有限要素法などで空間を離散化する場合,精度良い解を求めるためには,細かいメッシュが必要である要である。

• 細かいメッシュを切ると,それだけ,計算量,必要記憶容量が増加する。

• 細かいメッシュを必要とするのは 解析領域全体で• 細かいメッシュを必要とするのは,解析領域全体ではなく,ごく一部である。

衝撃波 渦 剥離– 衝撃波,渦,剥離

– 応力集中,亀裂

– 従属変数が急激に変化する領域

Page 4: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 44

適応格子法(適応格子法(AMRAMR)()(2/22/2))適応格子法(適応格子法(AMRAMR)()(2/22/2))• しかしながら 多くの場合 これらの現象が生じる領しかしながら,多くの場合,これらの現象が生じる領域は,前もって分かっていない。

比較的粗いメ シ から始めて 計算結果に応じて• 比較的粗いメッシュから始めて,計算結果に応じて,局所的な細分化(refinement)を自動的に実施し,

精度良い解を効率的に求める手法が,適応格子法(Adaptive Mesh Refinement,AMR)である。( dapt e es e e e t, )である。

– 非定常問題の場合,細かいメッシュが必要でなくなった領域のメッシュを粗くする(coarsening)場合もありうる領域のメッシュを粗くする(coarsening)場合もありうる。

Page 5: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 55

適応格子法の応用例(適応格子法の応用例(1/41/4))適応格子法の応用例(適応格子法の応用例(1/41/4))構造力学,有限要素法構造力学,有限要素法

Mises StressInitial Mesh Adapted MeshMises StressInitial Mesh Adapted Mesh

Page 6: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 66

適応格子法の応用例(適応格子法の応用例(2/42/4))適応格子法の応用例(適応格子法の応用例(2/42/4))流体力学,有限要素法流体力学,有限要素法

2-Lev. Adapted1-Lev. AdaptedInitial Grid

Page 7: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 77

適応格子法の応用例(適応格子法の応用例(3/43/4))適応格子法の応用例(適応格子法の応用例(3/43/4))流体力学,ブロック格子流体力学,ブロック格子

• Rayleigh-Taylor Instability• Block-structured adaptive

grid• 宇宙物理学の世界ではよく使われているようである。

Argonne National Laboratory

Page 8: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 88

適応格子法の応用例(適応格子法の応用例(4/44/4))適応格子法の応用例(適応格子法の応用例(4/44/4))可視化,ボリュームレンダリング可視化,ボリュームレンダリング

L Chen (Tsinghua U ) H Matsui (UC Berkeley)

• FEMによる地球外核のMHD解析結果

非構造格子の計算結果をブロ ク格子にマ ピングしてレンダ

L.Chen (Tsinghua U.), H.Matsui (UC Berkeley)

• 非構造格子の計算結果をブロック格子にマッピングしてレンダリングを実施する:変化が多いところは細分化

Page 9: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 99

適応格子法の応用例(適応格子法の応用例(4/44/4))適応格子法の応用例(適応格子法の応用例(4/44/4))可視化,ボリュームレンダリング(続き)可視化,ボリュームレンダリング(続き)

かなり複雑な 状 も適 能 ある(

L.Chen (Tsinghua U.)

• かなり複雑な形状にも適用可能である(Mobile Pentium Pin-Grid Array 熱応力解析)

Page 10: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 1010

適応格子法の現状・問題点適応格子法の現状・問題点適応格子法の現状・問題点適応格子法の現状・問題点

• 並列計算

局所的な細分化によって 負荷バランスが均等でなくな– 局所的な細分化によって,負荷バランスが均等でなくなる可能性がある ⇒ 動的負荷分散(Dynamic Load Balancing:DLB)Balancing:DLB)

• 形状再現性

– 例えば,曲面上のメッシュを細分化する場合,もとの形状を忠実に再現する必要がある。

– CADとの連動。

– 近似的な曲面表現手法の開発近似的な曲面表現手法の開発。

Page 11: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

Supersonic Flow around a SphereSupersonic Flow around a SphereM 1 40 Uniform Flow Ideal Gas Re 10M 1 40 Uniform Flow Ideal Gas Re 1066M=1.40 Uniform Flow, Ideal Gas, Re=10M=1.40 Uniform Flow, Ideal Gas, Re=1066

4 PE cases (tetrahedron only)4 PE cases (tetrahedron only)

2-Lev. Adapted1-Lev. AdaptedInitial Grid

before DRAMA3834 25272769 2526

before DRAMA793 652696 650

before DRAMAPE0 137 -PE1 137 -

SWoPP2008 11

2703 25221390 2524

668 652448 651

PE2 136 -PE3 136 -

Page 12: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 1212

負荷分散のためのプロセス負荷分散のためのプロセス負荷分散のためのプロセス負荷分散のためのプロセス

AMR• AMR• 領域再分割(Repartitioing)p g

– ParMETIS(U.Minnessota),JOSTLE(U.Greenwich)• デ タ再構成 デ タマイグレ ション(Data• データ再構成,データマイグレーション(Data

Migration)– Zoltan(Sandia)

Page 13: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 13

Procedures for Parallel AMRProcedures for Parallel AMR

• Start from initial distributed mesh– coarse, load-balanced

Page 14: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 14

Procedures for Parallel AMRProcedures for Parallel AMR

• Start from initial distributed mesh– coarse, load-balanced

Page 15: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 15

Procedures for Parallel AMRProcedures for Parallel AMR

• Start from initial distributed mesh– coarse, load-balanced

Page 16: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 16

Procedures for Parallel AMRProcedures for Parallel AMR

• Parallel AMR– zones to be refined are specified– based on templates

Load Imbalance !!Load Imbalance !!

Page 17: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 17

Procedures for Parallel AMRProcedures for Parallel AMR

• Repartitioning for Load Balancing – ParMETIS

Page 18: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 18

Procedures for Parallel AMRProcedures for Parallel AMR

• Data Migration– Moving data according to information for repartitioning

Page 19: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 1919

データマイグレーションデータマイグレーションデ タ イグ ションデ タ イグ ション

• 領域再分割(Repartitioning)で決まる領 p g 決のは,「節点」の所属先(宛先)

自由度が存在する– 自由度が存在する

• 以下については別途移動する

– 節点の座標,境界条件

– 接続する要素,その上の節点接続する要素,その上の節点

– 要素物性等

領域間通信テ ブル– 領域間通信テーブル

• アプリケーションに依存:標準化困難?• 結構時間がかかる

Page 20: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 20

Local Data StructureNode-based Partitioning

internal nodes - elements - external nodes

21 22 23 24 25

6 715

PE#0

4 5 6 12PE#1

21 22 23 24 25

PE#0PE#1

21 22 23 24 25

1617 18 19

20

4 514 13

PE#0

3111

2

1617 18 19

201617 18 19

2016 20

1112 13 14

15

1 2 3107 8 9 10

10 1211

16 20

1112 13 14

15

16 20

1112 13 14

155

67 8 9

10

8 9 11 12

10 9 11 12

695

5

67 8 9

10

5

67 8 9

10

1 2 3 4 55

684

34

8

6

1 2 3 4 51 2 3 4 51 2 3 4 5

7 1 2 3

PE#21 2 7

PE#3

1 2 3 4 5

PE#2PE#3

1 2 3 4 5

Page 21: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 21

Adaptive Mesh Refinement (AMR) and Load Balancing (LB)

Some slides from:

N k ji K Fi b J Ok d H (2001) P ll l 3D Ad iNakajima, K., Fingberg, J. Okuda, H. (2001), Parallel 3D Adaptive Compressible Navier-Stokes Solver in GeoFEM with Dynamic Load-Balancing by DRAMA Library Lecture Notes in Computer ScienceBalancing by DRAMA Library, Lecture Notes in Computer Science 2110, 183-193.

*DRAMA Library: Repartitioning Library developed by NEC Europe

DRAMA

DRAMA

DRADR

Page 22: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 22

Supersonic Flow around a SphereM=1 40 Uniform Flow Ideal Gas Re=106M=1.40 Uniform Flow, Ideal Gas, Re=106

4 PE cases (tetrahedron only)

2-Lev. Adapted1-Lev. AdaptedInitial Grid

before DRAMA3834 25272769 2526

before DRAMA793 652696 650

before DRAMAPE0 137 -PE1 137 -

2703 25221390 2524

668 652448 651

PE2 136 -PE3 136 -

[Nakajima, Fingberg and Okuda, 2001]

Page 23: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

Refinement Patterns of TetrahedronRefinement Patterns of TetrahedronNO “H i ” N dNO “H i ” N dNO “Hanging” NodesNO “Hanging” Nodes

3 edges ona same

1 edgemarked

a samesurface are

marked

2 edges ona same

2 children(Binary)

a samesurface are

marked

4 children3rd edge is 4 children(Quadtree)more than

2 edges ondifferent

surfaces aremarked

3 d edge sautomatically

marked

marked

more than

SWoPP2008 23

8 children(Octree)

more than4 edges are

marked 6 edges areautomatically

marked

Page 24: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

Directional Refinement of PrismsDirectional Refinement of PrismsDirectional Refinement of PrismsDirectional Refinement of Prisms

SWoPP2008 24Initial GridInitial Grid Edge CutEdge Cut

Embedded grid obtained after quadtreeEmbedded grid obtained after quadtreeand binary divisionsand binary divisions

of the triangular facesof the triangular faces

Page 25: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 25

Results (Hybrid) : LAMP Cluster8 PE cases with 1 level adapted meshes8 PE cases with 1-level adapted meshes

Initial Mesh : 16,050 nodes, 76,800 meshes Final Mesh : 29,852 nodes, 117,694 meshesFinal Mesh : 29,852 nodes, 117,694 meshes

PP--JOSTLE : Vicinity of the Sphere Wall SurfaceJOSTLE : Vicinity of the Sphere Wall Surface[Nakajima, Fingberg and Okuda, 2001]

Page 26: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 26

Results (Tet.Only) : LAMP Cluster8 PE cases with 2-level adapted meshes8 PE cases with 2-level adapted meshes

Final Mesh : 10,240 nodes, 69,462 tet.

PP--JOSTLEJOSTLE PP--MMEETTIISSkk--wayway

NONORepartitionRepartition

RCBRCBbucketbucket

[Nakajima, Fingberg and Okuda, 2001]

Page 27: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 27

Results (Tet.Only) : LAMP Cluster16 PE cases with 1 level adapted meshes16 PE cases with 1-level adapted meshes

Initial Mesh : 16,050 nodes, 92,160 tet.Final Mesh : 47,074 nodes, 306,236 tet.Final Mesh : 47,074 nodes, 306,236 tet.

Elaplsed Time for 1,000 stepsRepartitiongRepartitiong Edge #Edge #RepartitiongRepartitiong

MethodsMethods Total EdgecutTotal EdgecutEdge #Edge #(min./max.)(min./max.) Time (sec.)Time (sec.)

NO RepartitionNO Repartition 10,576/48,49510,576/48,495 39,88839,888 1,6831,683NO RepartitionNO Repartition

PP--JOSTLEJOSTLE

10,576/48,49510,576/48,495

21,089/22,23321,089/22,233

39,88839,888

25,08525,085

1,683 1,683

874 874

Para MPara MEETTIISS 21,201/22,63021,201/22,630 26,27426,274 880 880

RCB simpleRCB simple 22,520/23,09022,520/23,090 41,98041,980 899 899

RCB bucketRCB bucket 21,231/23,26921,231/23,269 37,19237,192 926 926

[Nakajima, Fingberg and Okuda, 2001]

Page 28: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 28

ResultsResults

pA D

epHYBRIDCNTL.

ADAP

RAMP

T A

GridGrid

Page 29: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 29

ResultsResults

pA D

epHYBRIDCNTL.

ADAP

RAMP

T A

GridGrid

AMAAMA

DRAMDRAM

Page 30: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 30

GeoFEM: FY.1998-2002http://geofem.tokyo.rist.or.jp/

• 文部科学省「科学技術振興調整費総合研究」

– 「高精度の地球変動予測のための並列ソフトウェア開発に関する研究」の一部

• 固体地球シミュレーション用並列有限要素法プラットフォームラットフォ ム– 並列I/O,並列線形ソルバー,並列可視化をサポート

固体地球 地球内部⇒コア マントル対流 地殻変動– 固体地球:地球内部⇒コア・マントル対流,地殻変動

• HPCと自然科学の緊密な協力

Page 31: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 3131

心残り心残り心残り心残り

DRAMA(Repartitioning)のあとのData Migration• DRAMA(Repartitioning)のあとのData Migration(by NEC Europe)がやたら時間がかかっていた

Page 32: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008SWoPP2008 3232

本研究の目的本研究の目的本研究の目的本研究の目的

以下の機能を有する並列メッシ 生成フレ ムワ ク• 以下の機能を有する並列メッシュ生成フレームワーク

– 並列細分化(AMR)

– Repartitioning– Data MigrationData Migration

• Data Migrationを「自作」

ブ プ プ– 標準化ライブラリのためのプロトタイプ

– とにかく自分で実装してみる

• T2K(東大)

Page 33: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 33

• AMRとData Migration• AMRとData Migration• 断層における応力蓄積シミュレーション

• 単位すべり応答関数計算用フレームワーク

– 六面体メッシュと局所細分化

– 負荷分散

• 評価評価

– PCクラスタ

– T2Kオープンスパコン(東大)T2Kオ プンス ン(東大)

• まとめ

Page 34: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

34

地震発生サイクルシミュレーション

• プレート境界における準静的応力蓄積過程

も も プ• もともとのアプローチ

– 非線形接触問題をNewton-Raphson法によって解く

– ALM法(Augmented Lagrangean,拡大ラグランジェ法)による拘束条件:ペナルティ数

– 領域分割による並列有限要素法• GeoFEM,地球シミュレータ

前処理付き反復法 [N k ji 2003] [N k ji 2006]• 前処理付き反復法 [Nakajima, 2003],[Nakajima, 2006]

SWoPP2008

Page 35: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

35

現 状

• 2003年以降 全てをFEMで解こうという考え方から方針転換

現 状

• 2003年以降,全てをFEMで解こうという考え方から方針転換

– 接触モデリングの困難さ

境界条件– 境界条件

伝統的な境 積分法 境 素法を使 する• 伝統的な境界積分法,境界要素法を使用する

– 単位すべり応答関数(ある場所,t=0における単位すべり量が時間場所 お る応力変 を与 る る寄与 積分 重ね合わt-s, 場所xにおける応力変化を与える)による寄与の積分(重ね合わ

せ)

不均質場における「単位すべり応答関数 を計算する必要がある– 不均質場における「単位すべり応答関数」を計算する必要がある• 有限要素法の使用

• 〔Hori et al 2004〕

SWoPP2008

• 〔Hori et al 2004〕

Page 36: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 36

BEM/BIEM Approach (1/3)BEM/BIEM Approach (1/3)pp ( )pp ( )[Hashimoto & Matsu’ura, 2000][Hashimoto & Matsu’ura, 2000]

Elastic lithosphere divided into 2 partsElastic lithosphere divided into 2 partsi fi it l l ti l i t fi fi it l l ti l i t finfinitely long vertical interfaceinfinitely long vertical interfaceinteraction between the 2 parts : fault slipinteraction between the 2 parts : fault slip

Fault Slip Fault Slip ““ww””ppvvplpl steady plate motion ratesteady plate motion rateuu perturbationperturbation

Plate A

)t,(uv)t,(w pl xx Plate B

Page 37: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 37

BEM/BIEM Approach (2/3)BEM/BIEM Approach (2/3)pp ( )pp ( )[Hashimoto & Matsu’ura, 2000][Hashimoto & Matsu’ura, 2000]

Shear Stress (Shear Stress () due to Fault Slip(w)) due to Fault Slip(w)HH Unit “Slip Response Function”, Unit “Slip Response Function”, analyticallyanalyticallyp pp p y yy y

calccalcuulatedlated BEFORE simulation)BEFORE simulation)1st term : steady plate motion1st term : steady plate motion2 d t li t b ti2 d t li t b ti2nd term: slip perturbation2nd term: slip perturbation

ξdd)0ξ(H),ξ(u)()(t

steady platemotion slip perturbation

ξdd)0,ξ;t,(H),ξ(u)t,()t,(

0 s0 xxx

Constitutive Relation between Constitutive Relation between ““ww”” and and ““uu””Aochi and MatsuAochi and Matsu‘‘ura (1999) : New Modelura (1999) : New Model

xxx );t,(wf)t,( Aochi and MatsuAochi and Matsu ura (1999) : New Modelura (1999) : New Model

Page 38: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 38

BEM/BIEM Approach (3/3)BEM/BIEM Approach (3/3)pp ( )pp ( )[Hashimoto & Matsu’ura, 2000][Hashimoto & Matsu’ura, 2000]

Spatial DiscretizationSpatial Discretizationppslip slip ““uu”” is defined by combination of is defined by combination of ““MM”” Cubic Spline Cubic Spline

Basis.Basis.)()t()t(

M

)()t(a)t,(u m1m

m xx

Solve EquationsSolve EquationsConstruct Nonlinear Coupled EquationConstruct Nonlinear Coupled Equationp qp qLinealized by LevenbergLinealized by Levenberg--Marquardt Method using Marquardt Method using ““NN””

pointspointsN MN MN>MN>M

solve linearized equation for solve linearized equation for ““aamm(t)(t)”” at each iterationat each iterationrequires M*M dense matrix inversionrequires M*M dense matrix inversion

Page 39: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 39

Unit “Slip Response Function”: Hp p

ξdd)0,ξ;t,(H),ξ(u)t,()t,(t

0 xxxsteady plate

motion slip perturbation 0 s

• “H” is a function of time and location

ξdd)0,ξ;t,(H),ξ(u)t,()t,(t

0 s0 xxx

– Unit slip rate at (X’=x, T’=0) gives stress perturbation “H” at (X=, T=t-)

– Values of “H” for every combination of (X,T;X’,T’) have to be calculated BEFORE computation.

– “H” can be analytically defined for simple geometries but it’s difficult for heterogeneous/complicated geometries.

Page 40: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 40

Current Status (After FY.2003) (2/2)Ch f St tChange of Strategy

ξdd)0,ξ;t,(H),ξ(u)t,()t,(t

0 xxxsteady plate

motion slip perturbation 0 s

• Calculate “H” by FEM !!

ξdd)0,ξ;t,(H),ξ(u)t,()t,(t

0 s0 xxx

Page 41: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

41

FEMによる「単位すべり応答関数」計算

• GeoFEM

FEMによる「単位すべり応答関数」計算

• GeoFEM• 分割節点法(Split Node Method)による,食い違い変位(Di l ti )モデル(Dislocation)モデル

– 断層をはさんだ変位の食い違い量を仮定し,仮想変位に相当する節点力を外力項として与える点力を外力項として与える

– 特殊な要素は不要,定式化も簡単,観測値の利用

SWoPP2008

Page 42: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

42

FEMによる「単位すべり応答関数」計算FEMによる 単位す り応答関数」計算(続き)

• 不均質粘弾性モデル

– Maxwell粘弾性体Maxwell粘弾性体

11 dd

11

dtd

Edtd

• ちなみに弾性体は・・・t t

E1

SWoPP2008

E

Page 43: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

43

局所細分化の必要性

• 1km×1kmの応答関数を求めるためには 数十m幅のメッ

局所細分化の必要性

• 1km×1kmの応答関数を求めるためには,数十m幅のメッシュが必要

数百k ×数百k の領域を扱うため 全領域をこの大きさの• 数百km×数百kmの領域を扱うため,全領域をこの大きさのメッシュで切ることは不可能

局所細分化 ( )– 局所細分化:Adaptive Mesh Refinement (AMR)

SWoPP2008

Page 44: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 44

• AMRとData Migration• AMRとData Migration• 断層における応力蓄積シミュレーション

• 単位すべり応答関数計算用フレームワーク

– 六面体メッシュと局所細分化

– 負荷分散

• 評価評価

– PCクラスタ

– T2Kオープンスパコン(東大)T2Kオ プンス ン(東大)

• まとめ

Page 45: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

45

単位すべり応答関数計算の現状

• 「粗い」初期全体メッシュ(O(105~106)要素)

単位す り応答関数計算 現状

粗 」初期 体 ッシ ( ( )要素)

• 局所細分化

• 領域分割• 領域分割

• 六面体メッシュ(Tri-Linear)– コミュニティーの要請

– 精度,アプリケーション

• 必要とする単位すべり応答関数のセットの数にもよるが,必要とする単位す り応答関数のセットの数にもよるが,数千~数万種類の計算が必要

– 高速

SWoPP2008

高速

– 局所細分化された分散メッシュファイルは不要

Page 46: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

46

単位すべり応答関数計算用フレームワーク

• プロセス

単位す り応答関数計算用 ワ ク

伊豆マントル

伊豆マントル

– 「粗い」分散メッシュ(数百m~1km)

– 局所細分化

四国伊

四国伊

– 負荷分散

– 単位すべり応答関数

フィリピン海プレート 太平洋プレート

マントル

フィリピン海プレート 太平洋プレート

マントルxy z

xy z

• 必要とする単位すべり応答関数のセットの数にもよるが,数千必要とする単位す り応答関数のセットの数にもよるが,数千~数万種類の計算が必要

– 高速高速

– 局所細分化された分散メッシュファイルは不要

• 六面体メッシュ(Tri-Linear)

SWoPP2008

六面体メッシュ(Tri-Linear)

Page 47: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 47

単位すべり応答関数計算用フレームワーク単位す り応答関数計算用 ワ ク

Initial Distributed Mesh FilesAMR

Repartitioning(ParMETIS)

Location ofRefinement

Data Migration & Management

L ll R fi d Di t ib t dLocally Refined Distributed Mesh Files (on memory)

Parallel FEMParallel FEM(GeoFEM)

Unit ResponseUnit ResponseFunction

Page 48: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

48

六面体要素のAMR

実は六面体要素のAMRは難しい

六面体要素のAMR

• 実は六面体要素のAMRは難しい

• 八分木(二次元では四分木)は細分化レベルの境界でHanging Nodeを生じてしまう

– 四面体,三角形ではこのようなことはないが,断層のモデリングには六面体要素が望ましく,六面体要素が一般的に用いられている

SWoPP2008

Page 49: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

Refinement Patterns of TetrahedronRefinement Patterns of TetrahedronRefinement Patterns of TetrahedronRefinement Patterns of Tetrahedron3 edges on

a same

1 edgemarked

a samesurface are

marked

2 edges ona same

2 children(Binary)

a samesurface are

marked

4 children3rd edge is 4 children(Quadtree)more than

2 edges ondifferent

surfaces aremarked

3 d edge sautomatically

marked

marked

more than

SWoPP2008 49

8 children(Octree)

more than4 edges are

marked 6 edges areautomatically

marked

Page 50: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

50

対処法:27分木 [Schneiders et al 1996]対処法:27分木 [Schneiders et al, 1996]

• Quadtree/Octree with Conforming Refinement• 各辺の分割単位を2ではなく,3とする。各辺の分割単位を2ではなく,3とする。

– 細分化レベル境界でHanging Nodeを生じない

– 二次元:9分木二次元:9分木

– 三次元:27分木

SWoPP2008

Page 51: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

51

(a)(a)

Octree/Quadtree: Hanging Nodesto be refinedrefined

(b)Octree/Quadtreewith Conforming Refinement: NO Hanging Nodes

SWoPP2008

g g

Page 52: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

52

27分木 における分割パターン27分木 における分割パタ ン[Schneiders et al, 1996]

A B

C D

SWoPP2008

Page 53: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

53

27分木 による細分化例27分木 による細分化例初期レベル

SWoPP2008

Page 54: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

54

27分木 による細分化例27分木 による細分化例細分化レベル1

SWoPP2008

Page 55: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

55

27分木 による細分化例27分木 による細分化例細分化レベル2

SWoPP2008

Page 56: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

56

27分木 による細分化例27分木 による細分化例細分化レベル3

SWoPP2008

Page 57: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

57

27分木 による細分化例27分木 による細分化例細分化レベル3(拡大図)

SWoPP2008

Page 58: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 58

Examplep

Page 59: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

59

SWoPP2008

速度:

背景色:位置:

モード:

透明度:

Page 60: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

60

単位すべり応答関数計算用フレームワーク

• 並列細分化(AMR)

単位すべり応答関数計算用フレ ムワ ク

– Double Numberingの導入 [Nakajima & Fingberg, 2001]– 局所的な細分化情報の通信局所的な細分化情報 通信

– 四面体と比較すると膨大な組み合わせを考慮する必要がある

• ParMETISによる領域再分割(Repartitioning)ParMETISによる領域再分割(Repartitioning)– http://glaros.dtc.umn.edu/gkhome/metis/parmetis/マルチレベル的な手法 節点数がバランスするような手法– マルチレベル的な手法,節点数がバランスするような手法

– ParMETIS_V3_PartKway

• データマイグレーション(Data Migration)– 節点座標,要素コネクティビティ,物性値,グループ情報,通信テー

SWoPP2008

ブル等の領域間の移動

– 領域間オーバーラップ深さの自動変更機能(未実装)

Page 61: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 61

細分化におけるルール(1/3)• Double Numbering:並列計算向け

ロ カル番号– ID(i,1)=ローカル番号

– ID(i,2)=所属領域番号

節点 要素 面 辺– 節点,要素,面,辺

– ローカル番号+グローバル番号より便利

• 隣接要素

– 2レベル以上異ならない⇒自然に満たされる

Page 62: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 62

細分化におけるルール(2/3)• 連続して異方性のある分割を行わない

C 次は必ず 分割を適用– A,B,Cの次は必ずDの分割を適用

A B C DA B C D

Page 63: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 63

細分化におけるルール(3/3)• 節点を重複して生成するのを避けるため,辺,面,要素に所属する節点を決めておく素に所属する節点を決めておく

Page 64: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

64

METIShttp://www-users.cs.umn.edu/~karypis/metis/

チ ベ グラ 理論に基づ た方法• マルチレベルグラフ理論に基づいた方法

SWoPP2008

Page 65: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

65

METIShttp://www-users.cs.umn.edu/~karypis/metis/

マルチレベルグラフ理論に基づいた方法• マルチレベルグラフ理論に基づいた方法

– 特に通信(edge-cut)が少ない分割を提供する

安定 高速– 安定,高速

– フリーウェア,他のプログラムに組み込むことも容易

• 色々な種類がある

– k-METIS 通信量(edge-cut)最小

– p-METIS 領域間バランス最適化

– ParMETIS 並列版

– 領域分割だけでなく,オーダリング,データマイニングなど色々な分野に使用されている

SWoPP2008

• 接触,衝突問題における並列接触面探索

• ParMETIS:並列版

Page 66: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

66

データマイグレーション(Data Migration)• データマイグレーション(Data Migration)

デ タマイグレ ション(Data Migration)• デ タマイグレ ション(Data Migration)

– 節点座標,要素コネクティビティ,物性値,グループ情報,通信テーブル等の領域間の移動ブル等の領域間の移動

– 領域間オーバーラップ深さの自動変更機能(未実装)

• 極力,All-to-All型の通信を避ける

• 隣接領域との通信のみに限定

SWoPP2008

Page 67: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 67

• AMRとData Migration• AMRとData Migration• 断層における応力蓄積シミュレーション

• 単位すべり応答関数計算用フレームワーク

– 六面体メッシュと局所細分化

– 負荷分散

• 評価評価

– PCクラスタ

– T2Kオープンスパコン(東大)T2Kオ プンス ン(東大)

• まとめ

Page 68: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 68

性能評価(ParMETIS+Data Migration)性能評価( g )

Initial Distributed Mesh FilesAMR

Repartitioning(ParMETIS)

Location ofRefinement

Data Migration & Management

L ll R fi d Di t ib t dLocally Refined Distributed Mesh Files (on memory)

Parallel FEMParallel FEM(GeoFEM)

Unit ResponseUnit ResponseFunction

Page 69: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 69

例 題• 三次元弾性問題

初期メ シ

例 題

• 初期メッシュ

– 203 節点/コア,~512コア (4M節点)

体 体– 立方体メッシュ(六面体)

• 細分化

– 4領域に1領域の割合で,1~2個の要素を細分化• 16領域であればそのうち4領域が細分化

– 2レベル~4レベルケース

細分化レベル

最小節点数

最大節点数

平均節点数

1 2

8,000

17,290 10,3242 3 68,560 23,1403 3 247 648 67 192

,3 3 247,648 67,1924 4 812,320 209,080

Page 70: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 70

性能評価手法

• Weak Scaling16~512領域– 16~512領域

• GeoFEM-type Parallel Distributed Data StructureN d b d 1 L O l i– Node-based, 1-Layer Overlapping

安• 評価の目安

– Data Migrationの時間がParMETISと同様,または短い

Page 71: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 71

1/4 of entire domains are refined

Page 72: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 72

ハードウェア等

• PCクラスタ(VT社製)

ハ ドウェア等

• PCクラスタ(VT社製)

– Dual-core Opteron 275 (2.2GHz) Cluster up to 64 coresInfiniband Gigabit Ethernet– Infiniband, Gigabit-Ethernet

• T2Kオープンスパコン(東大)Hitachi HA8000– Quad-core Opteron (2.3GHz) , up to 512 cores (32 nodes)

• F90+C+ MPI– Flat MPI– PGI(PCクラスタ)

– Hitachi(HA8000)

Page 73: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 73

PCクラスタ(Infiniband, Pathscale MPI)ケース2(3レベル),初期実装

■ New Pointers■ Data Migration

1.50

■ Data Migration■ Double Numbering■ ParMETIS

1.00

sec.

0.50

s

0.004 8 16 32 48 64

#

• Data MigrationはParMETISと比べて計算時間は少ないが領域数増加とともに増大

core#

領域数増加とともに増大

Page 74: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 74

デ タマイグレ シ ンの各プロセスと特徴データマイグレーションの各プロセスと特徴A:領域間通信,B:非スケーラブル処理領域 通信, 非

名 称 機 能 A B名 称 機 能 A B

■ New Local ID 新局所番号生成 ○ △

■ Comm. Table 領域間通信テーブルサイズ決定

× △サイズ決定

■ Data Transfer 領域間データ移動 ◎ △

■ Data Removal 不要データ消去 × △

Page 75: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 75

非スケ ラブル処理非スケーラブル処理

do ip= 1, PETOTdo i= 1, N(…)

enddoenddoenddo

Page 76: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 76

Data Migrationの中での内訳Data Migrationの中での内訳

0.60■ New Local ID

0 40

0.50■ New Local ID■ Comm. Tab. Size■ Data Transfer

0.30

0.40

sec.

■ a a a s e■ Data Removal

0.10

0.20

0.00

0.10

4 8 16 32 48 644 8 16 32 48 64

core#

Page 77: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 77

Data Migration:改良点Data Migration:改良点

名 称 変更点名 称 変更点

New Local ID 無し

Comm Table 探索アルゴリズム効率化Comm. Table 探索アルゴリズム効率化

Data Transfer 送受信バッファの初期化省略

探索アルゴリズム効率化Data Removal 探索アルゴリズム効率化送受信バッファの初期化省略

Page 78: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 78

改良:64ノードで半分以下に

0 600 60

改良:64ノ ドで半分以下に

0.50

0.60

0.50

0.60

Original Improved

0.30

0.40

sec.0.30

0.40

sec.

0.10

0.20

0.10

0.20

0.004 8 16 32 48 64

core#

0.004 8 16 32 48 64

core#

■ New Local ID■ Comm. Tab. Size■ Data Transfer■ Data Removal

Page 79: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 79

Comm. Tab. SizeComm. Tab. Size

■ original0.40

■ original■ improved0.30

0.20sec.

0 00

0.10

0.004 8 16 32 48 64

core#

名称 変更点名称 変更点

New Local ID 無し

Comm. Table 探索アルゴリズム効率化

D T f 送受信バ フ の初期化省略Data Transfer 送受信バッファの初期化省略

Data Removal 探索アルゴリズム効率化送受信バッファの初期化省略

Page 80: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 80

Data Transfer0.15

Data Transfer

■ original

0.10

■ original■ improved

0.05

sec.

0 000.004 8 16 32 48 64

core#

名称 変更点名称 変更点

New Local ID 無し

Comm. Table 探索アルゴリズム効率化

D T f 送受信バ フ の初期化省略Data Transfer 送受信バッファの初期化省略

Data Removal 探索アルゴリズム効率化送受信バッファの初期化省略

Page 81: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 81

Data Removal0.08

不要データ消去

■ original0.06

■ original■ improved

0.04sec.

0 00

0.02

0.004 8 16 32 48 64

core#

名称 変更点名称 変更点

New Local ID 無し

Comm. Table 探索アルゴリズム効率化

D T f 送受信バ フ の初期化省略Data Transfer 送受信バッファの初期化省略

Data Removal 探索アルゴリズム効率化送受信バッファの初期化省略

Page 82: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 82

PCクラスタ ネ トワ ク MPIの影響PCクラスタ:ネットワーク,MPIの影響

■ IB+PathScale MPI■ IB+MPICH■ GB+MPICH■ GB+MPICH

1.50 1.50

1.00 1.00

ParMETIS Data Migration

0.50

sec.

0.50se

c.

0.00 0.004 8 16 32 48 64

core#

0.004 8 16 32 48 64

core#

Page 83: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 83

ケース1(T2K)ケ ス1(T2K)

0.80 0.25

0.600.20

0.40sec.

0.10

0.15

sec.

0 00

0.20

0 00

0.05

0.0016 32 64 128 256 384 512

core#

0.0016 32 64 128 256 384 512

core#

■ New Pointers■ Data Migration■ D bl N b i

■ New Local ID■ Comm. Tab. Size

■ Double Numbering■ ParMETIS

■ Data Transfer■ Data Removal

Page 84: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 84

ケース2(T2K)

0.401.50

@64cores ParMETIS:0.54sec.⇒0.57,DM:0.23⇒0.13

0.301.00

0.20sec.

0.50

sec.

0 00

0.10

0 00

0.50

0.0016 32 64 128 256 384 512

core#

0.0016 32 64 128 256 384 512

core#

■ New Pointers■ Data Migration■ D bl N b i

■ New Local ID■ Comm. Tab. Size

■ Double Numbering■ ParMETIS

■ Data Transfer■ Data Removal

Page 85: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 85

ケース4(T2K)

4.00 5.00

ケ ス4(T2K)

3.004.00

2.00sec.

2.00

3.00

sec.

0 00

1.00

0 00

1.00

0.0016 32 64 128 256 384 512

core#

0.0016 32 64 128 256 384 512

core#

■ New Pointers■ Data Migration■ D bl N b i

■ New Local ID■ Comm. Tab. Size

■ Double Numbering■ ParMETIS

■ Data Transfer■ Data Removal

Page 86: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 86

ケース4(T2K)

5.00

ケ ス4(T2K)

15.0

4.00

10.0

2.00

3.00

sec.

5.0

sec.

0 00

1.00

0 0

5.0

0.0016 32 64 128 256 384 512

core#

0.016 32 64 128 256 384 512

core#

■ New Pointers■ Data Migration■ D bl N b i

■ New Local ID■ Comm. Tab. Size

■ Double Numbering■ ParMETIS

■ Data Transfer■ Data Removal

Page 87: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 87

デ タマイグレ シ ンの各プロセスと特徴データマイグレーションの各プロセスと特徴コア数増大による計算時間増大数増 算 増

名 称 機 能 1 2 3 4名 称 機 能 1 2 3 4

■ New Local ID 新局所番号生成 ○ ○ ○ ○

■ Comm. Table 領域間通信テーブルサイズ決定サイズ決定

■ Data Transfer 領域間データ移動 ○ △

■ Data Removal 不要データ消去 ○ ○ ○ ○

Page 88: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 88

Example of “non-scalable” processesExample of non scalable processesin “NEW Local ID”

do ip= 1, PETOTif (ip-1 eq my rank) thenif (ip-1.eq.my_rank) then

do i= 1, NODEtotLorgnn= NODE_ID_NEW(i,2)

t( +1) t( +1) + 1gcount(nn+1)= gcount(nn+1) + 1NODE_ID_NEW(i,1)= gcount(nn+1)

enddoendifcall MPI_BCAST ( gcount, PETOT, MPI_INTEGER, ip-1, &

MPI_COMM_WORLD, ierr )_ _enddo

Page 89: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 89

MAX Number of “destinations” for data transfer

30

● Case-1○ Case-2▲ Case-320A

TIO

N

△ Case-4

10#: D

ESTI

NA

10

MA

X #

010 100 1000

core#

Page 90: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

SWoPP2008 90

• AMRとData Migration• AMRとData Migration• 断層における応力蓄積シミュレーション

• 単位すべり応答関数計算用フレームワーク

– 六面体メッシュと局所細分化

– 負荷分散

• 評価評価

– PCクラスタ

– T2Kオープンスパコン(東大)T2Kオ プンス ン(東大)

• まとめ

Page 91: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

91

問題点

• 非スケーラブルプロセス

問題点

● Case-1○

非 ケ ラ ル

– New Local ID– Data Removal

○ Case-2▲ Case-3△ Case-4Data Removal

– 当面はこれでも問題無いが

1.30

1.40

tio

• ParMETIST2Kが遅い(64coresで

1.20

alan

ce R

at

– T2Kが遅い(64coresで0.53sec⇒0.57sec.)

– ロードインバランス 1.00

1.10

Load

Imba

– ロ ドインバランス• ケース3,4はあまり現実的ではないが

0.9010 100 1000

SWoPP2008

core#

Page 92: 六面体メッシュの 適合 並 細適合型並列局所細分化と 負荷分散nkl.cc.u-tokyo.ac.jp/11w/CW-3D/AMR.pdfSWoPP2008 2 概要 •AMRとDataMigrationData Migration •断層における応力蓄積シミュレーション

92

今後の展望

• 改良

今後 展望

改良

– 非スケーラブル処理の部分

• 標準化

多様なデ タ構造を受容 きるようなも ある必要がある– 多様なデータ構造を受容できるようなものである必要がある

– かつ高速

• METIS,ParMETIS– 他の関数,パラメータ

– いつまでもこれに頼っていて良いのか?

SWoPP2008

までも れ 頼 て て良 の