― 30 ―SENAC Vol. 52, No. （1 2019. 1）［大学 ICT 推進協議会

2018 年度年次大会論文集より］『全国洪水氾濫被害額推定のための 2 次元氾濫計算』コードのSX-ACE 向け最適化および MPI 並列化
山下 毅 1) , 田中 裕夏子 2) , 江川 隆輔 3,4) , 滝沢 寛之 3,4) , 風間 聡 2) , 多田 毅 5)1) 東北大学 情報部情報基盤課
2) 東北大学 大学院工学研究科
3) 東北大学 サイバーサイエンスセンター
4) 東北大学 大学院情報科学研究科
5) 防衛大学校 建設環境工学科
yamacta@tohoku.ac.jp

Performance Optimization and MPI Parallelization of“Nationwide 2D flood simulation for economic damageestimation” code for SX-ACE .
Takeshi Yamashita1) , Yukako Tanaka2) , Ryusuke Egawa3,4) , Hiroyuki Takizawa3)So Kazama2) , Tsuyoshi Tada5)
1) Information Infrastructure Division, Information Department, Tohoku University
2) Graduate School of Engineering, Tohoku University
3) Cyberscience Center, Tohoku University4) Graduate School of Information Sciences, Tohoku University5) Department of Civil and Environmental Engineering, National Defense Academy

概要
東北大学サイバーサイエンスセンターでは大規模科学計算システムの活用と効率的な運用を目的とし、利用者プログラムの高速化支援に取り組んでいる。本稿では、研究室のワークステーション上で開発された『全国洪水氾濫被害額推定のための 2 次元氾濫計算』コードの、ベクトル型スーパーコンピュータ SX-ACE 向け最適化手法、および MPI ライブラリを用いた分散メモリ並列化について報告する。スーパーコンピュータを利用することで従来よりも詳細なモデルを高速に解析することが可能となり、被害額の推定結果の妥当性が向上すると同時に、局地的な現象についても検討することが可能となった。

1 はじめに制度を実施している。利用者、計算機科学を専門とするセンター教員と技術職員、および計算機ベンダーが東北大学サイバーサイエンスセンター（以下、本セ連携してアプリケーションの高速化に取り組んでいンター）の大規模科学計算システムは、日本電気株式る。図 1 に 1999 年から本センターで取り組んでいる会社（以下、NEC）製ベクトル型スーパーコンピューセンター独自の共同研究、学際大規模情報基盤共同利タ SX-ACE を主力計算機とし、汎用アプリケーション用・共同研究拠点（JHPCN）課題および革新的ハイパの実行環境として NEC 製スカラ型の並列コンピューフォーマンス・コンピューティング・インフラ（HPCI）

タ LX406-Re2 の運用を行っている。異なる特性を有課題採択数の推移を示す。センターでは共同研究を通する二種類の計算機の運用により、利用者の幅広いじてユーザアプリケーションの高精度化・大規模化をニーズに応えるサービスの提供を可能としている。表サポートし、JHPCN および HPCI 採択課題へのス

1 にこれらシステムの諸元を示す。

テップアップを支援している。我々の継続的な高速化

本センターでは 1999 年より、ユーザアプリケーションの高精度化、大規模化の支援を目的とした共同研究支援活動は一定の成果を上げ、またその成果を広く社会に還元している。

『全国洪水氾濫被害額推定のための 2 次元氾濫計算』コードのSX-ACE 向け最適化および MPI 並列化

表1

サイバーサイエンスセンター大規模科学計算システム諸元

性能

SX-ACE

LX406Re-2

NEC ベクトルプロセッサ
4個
276GFLOPS
256GFLOPS
256GB/sec
1MB/コアIntel(R) Xeon(R) E5-2695v2
12 個
230GFLOPS
4.9GB/sec
30MB (L3)

理論最大演算性能
最大ベクトル演算性能
メモリ容量
メモリバンド幅
ノード間通信速度

1個
276GFLOPS
256GFLOPS
64GB
256GB/sec
8GB/sec

2個
460GFLOPS
128GB
9.9GB/sec
7GB/sec

CPU 数
理論最大演算性能
最大ベクトル演算性能
メモリ容量2,560 個706.6TFLOPS
655.4TFLOPS
160TB

136 個
31.3TFLOPS
8.5TB

名称
コア数
理論最大演算性能
最大ベクトル演算性能
メモリバンド幅

ADB / Cache
CPU 数

システム性能HPCI
JHPCN
センター共同研究20112013

2012

2011

799201514108 62014

11 112010

92009

82008

1120072006

92005

2003

87200252001

620001999

812 124613136100

1112117962016

92004

件数

3018122017

ノード性能

102018

CPU 性能40― 31 ―年度

図1

共同研究課題採択数

以下では高速化支援活動の一例として、東北大学工学研究科土木工学専攻の研究グループが開発中の『全国洪水氾濫被害額推定のための 2 次元氾濫計算』コー
ドの、SX-ACE 向け最適化および MPI 並列化の事例について報告する。

2 アプリケーションの概要

図2

水災害による被害額の推定マップ計算を行うことで、各メッシュにおける浸水深が求まる。得られた浸水深と土地利用などの情報を組み合わせることによって、各メッシュでの被害額を推定でき今回 SX-ACE で最適化と MPI ライブラリによる並る [1]。このアプリケーションにより、将来気候や複合列化を行ったコード『全国洪水氾濫被害額推定のため災害下における経済被害額を推定し [2]、優先的に投資の 2 次元氾濫計算』は、FORTRAN77 で記述されたするべき地域の抽出や地域に即した治水方法の検討がコメント行を含む約 490 行からなり、並列化および特可能となる。

有のシステム向けの最適化は施されていない。

2.2 コード概要

2.1 2 次元氾濫計算

氾濫流の計算を実施する際、対象領域を IG×JG 個

本コードは図 2 に示すように、日本全国の洪水氾のメッシュに分割し、有限差分法を用いて 2 次元不濫による被害額の分布を定量的に地図の形に示すため定流問題を解く。パラメータ IG, JG は解析の空間解に、2 次元氾濫計算を行うアプリケーションを表現し像度を規定するパラメータであり、堤防等の微地形ている。全国を詳細なメッシュに分割し、2 次元氾濫の影響を計算結果に反映させるためには、これらのパ

― 32 ―

SENAC Vol. 52, No. （1 2019. 1）

表2

初期コードの演算時間比較（対象：北海道）

計算機

並列化

演算コア数

演算時間 [sec]SX-ACEなし

13,395SX-ACE

自動並列

42,515

LX406Re-2

なし

17,984

LX406Re-2

自動並列

247,969

縮のために、対象とする計算領域は北海道とし、観測期間が 1 時間分に相当する 14,400 ステップとした。
コンパイラの自動並列化機能を使用し、ノード内での並列実行についても測定を行った。

1 コアあたりの演算性能は SX-ACE は LX406Re-2の約 3.6 倍の性能比であるが、演算時間比は約 1/2.4
図3

計算対象領域倍であり、SX-ACE のベクトル最適化が不十分であると推察される。また、コンパイラの自動並列化機能をラメータをより大きくとる必要がある。時間進行には用いた並列実行では並列コア数に応じた性能向上は得4 段ルンゲクッタ法を採用する。時間刻み DT は IG,られておらず、MPI ライブラリによる並列化が必要でJG に依存し、これらの値を大きくとるほど、DT に小あると判断される。

さな値を用いる必要がある。以上より、総メッシュ数と時間刻みの両方の影響で、より詳細な結果を得るた

3 SX-ACE 向け最適化と性能比較

めにメッシュサイズを小さくすると、その 3 乗のオー

3.1 簡易性能解析機能によるコスト調査

ダーで計算時間は増加し、より大容量のメモリと計算時間の短縮が必要となる。

SX-ACE では、コード実行時に性能解析情報の取得を行う簡易性能解析（FTRACE）機能を利用した演

本コードのモデルサイズは日本全土を対象とした計算時間のコスト分析が可能である。FTRACE 機能を算領域 IG=5,032、JG=7,972 であり、250m×250m の利用するにはソースコードのコンパイル時とリンク時メッシュサイズに相当する。ステップ数は観測期間 4に-ftrace を指定する。初期コードの FTRACE 情報日分に相当する 1,382,400 ステップの演算を行う。計を表 3 に示す。

算領域の概略を図 3 に示す。諸島は省略している。
TMR
研究室のサーバ（Intel⃝Core
i7-6700）では日合はほぼ 100% であるが、このサブルーチンのベクト

本全土の計算に約 32 日間を要する。また計算領域をル化率（V.OP RATIO）が 97.83 と低く、改善が必要

4 分割（北海道、本州、四国、九州）して演算することである事が分かる。

が可能で、北海道を対象とした場合は約 12 日間を要3.2 ベクトル化の促進による高速化する。

主要な演算を行うサブルーチン flood100 の演算割

FORTRAN90/SX ではコンパイラが行ったベクト

本研究においては、初期条件および浸水に関する複ル化などの最適化に関する情報をソースコードの左側数のパラメータを変化させて解析する必要があるたに付記し、編集リスト（ソースコード名.L）として出力め、演算時間の短縮が必要であり、システムへの最適する機能がある。この機能を利用して詳細なベクトル化とマルチノード実行を行うための分散メモリ並列化化診断メッセージを出力するために、コンパイルオプが要求される。

ションとして-R5 -Wf,-pvctl fullmsg を指定した。図2.3 初期コードの演算時間調査

4 に初期コードの編集リストの一部を示す。なお、282

SX-ACE および LX406Re-2 で初期コードを実行したときの演算時間を表 2 に示す。SX-ACE 向けには行目の IF 文は対象とする計算領域を選択するもので、T ISL には北海道の領域が指定されている。

FORTRAN90/SX (Rev.534)、LX 406Re-2 向けには278 行目のインデックス I を持つ DO ループにベクIntel Fortran コンパイラ (17.0.4) をそれぞれ使用しトル化された記号 “V” が付加されているが、280 行目た。最適化オプションは使用していない。測定時間短から 294 行目にかけてベクトル処理が不可であること

『全国洪水氾濫被害額推定のための 2 次元氾濫計算』コードのSX-ACE 向け最適化および MPI 並列化（編集リストの抜粋）
277: |V----->
278: ||V---->
279: |||
280: |||
AS
281: |||
S
282: |||
S
283: |||
284: |||
285: |||
286: |||
287: |||
288: |||
289: |||
290: |||
291: |||
292: |||
293: |||
294: |||
295: |||
296: |||
297: |||
298: ||V---299: |V-----SSSSSSSSSSSSDO J=J1,J2
DO I=I1(J),I2(J)IF(X(I,J).LT. 0.5 .OR. X(I+1,J) .LT. 0.5.OR. X(I,J+1) .LT. 0.5) THEN
IF(Isl(I,J).EQ.T_ISL .OR. Isl(I+1,J) .EQ. T_ISL (計算領域を限定：北海道)&&.OR. Isl(I,J+1) .EQ. T_ISL ) THEN
OUTMN=0.0
IF(M(I-1,J) .LT. 0.0) OUTMN=OUTMN-M(I-1,J)
IF(M(I,J) .GT. 0.0) OUTMN=OUTMN+M(I,J)
IF(N(I,J-1) .LT. 0.0) OUTMN=OUTMN-N(I,J-1)
IF(N(I,J) .GT. 0.0) OUTMN=OUTMN+N(I,J)
OUTD=OUTMN*DT/DX/GV(I,J)
IF(OUTD .GT. D(I,J)) THEN
IF(M(I-1,J) .LT. 0.0) M(I-1,J)=M(I-1,J)*D(I,J)/OUTD
IF(M(I,J) .GT. 0.0) M(I,J)=M(I,J)*D(I,J)/OUTD
IF(N(I,J-1) .LT. 0.0) N(I,J-1)=N(I,J-1)*D(I,J)/OUTD
IF(N(I,J) .GT. 0.0) N(I,J)=N(I,J)*D(I,J)/OUTD
ENDIF
ENDIF
ENDIF
ENDDO
ENDDO

（コンパイル時最適化メッセージの抜粋）
277

vec(2): ループの一部をベクトル化する。

278

vec(2): ループの一部をベクトル化する。

285

opt

(1037): 異なる繰り返しで同一の配列要素を定義／参照している。

287

opt

(1036): 異なる繰り返しで定義された値を参照している可能性がある。(nosync/nodepを指定すれば最適化を行う)

291vec(20): mにベクトル化不可の依存関係がある。

292vec(20): mにベクトル化不可の依存関係がある。

図4（編集リストの抜粋）
60:（省略）
322: |V----->
323: ||V---->
324: |||
A
325: |||
326: |||A

初期コード

REAL*8 OUTD_(IG,JG)&

327: |||
328: |||
329: |||
330: |||
A
331: |||
A
332: |||
A
333: |||
A
334: |||
335: |||
A
336: |||
337: |||
338: |||
339: ||V---340: |V----344: |V----->
345: ||V---->
346: |||
A
347: |||
348: |||
A&349: |||
350: |||
351: |||
A
352: |||
353: |||
A
354: |||
A
355: |||
A
356: |||
A
357: |||
358: |||
359: |||
360: |||
361: ||V---362: |V-----&

DO J=J1,J2
DO I=I1(J),I2(J)IF(X(I,J).LT. 0.5 .OR. X(I+1,J) .LT. 0.5.OR. X(I,J+1) .LT. 0.5) THEN
IF(Isl(I,J).EQ.T_ISL .OR. Isl(I+1,J) .EQ. T_ISL (計算領域を限定：北海道).OR. Isl(I,J+1) .EQ. T_ISL ) THEN
OUTMN=0.0
IF(M(I-1,J ) .LT. 0.0) OUTMN=OUTMN-M(I-1,J )IF(M(I ,J ) .GT. 0.0) OUTMN=OUTMN+M(I ,J )IF(N(I ,J-1) .LT. 0.0) OUTMN=OUTMN-N(I ,J-1)
IF(N(I ,J ) .GT. 0.0) OUTMN=OUTMN+N(I ,J )OUTD_(I,J)=OUTMN*DT/DX/GV(I,J)

&

ENDIF
ENDIF
ENDDO
ENDDO
DO J=J1,J2
DO I=I1(J),I2(J)IF(X(I,J).LT. 0.5 .OR. X(I+1,J) .LT. 0.5.OR. X(I,J+1) .LT. 0.5) THEN
IF(Isl(I,J).EQ.T_ISL .OR. Isl(I+1,J) .EQ. T_ISL (計算領域を限定：北海道).OR. Isl(I,J+1) .EQ. T_ISL ) THENIF(OUTD_(I,J) .GT. D(I,J)) THENOUTD=D(I,J)/OUTD_(I,J)
IF(M(I ,J ) .GT. 0.0) M(I ,J )=M(I ,J )*OUTD
IF(M(I-1,J ) .LT. 0.0) M(I-1,J )=M(I-1,J )*OUTD
IF(N(I ,J-1) .LT. 0.0) N(I ,J-1)=N(I ,J-1)*OUTD
IF(N(I ,J ) .GT. 0.0) N(I ,J )=N(I ,J )*OUTD
ENDIF
ENDIFENDIF
ENDDO
ENDDO

（コンパイル時最適化メッセージの抜粋）
322

vec(1): ループ全体をベクトル化する。

323

vec(1): ループ全体をベクトル化する。

344

vec(1): ループ全体をベクトル化する。

345

vec(1): ループ全体をベクトル化する。

図5

ベクトル化後コード― 33 ―

― 34 ―

SENAC Vol. 52, No. （1 2019. 1）

表3【初期コード】PROC.NAME FREQUENCYEXCLUSIVE
TIME[sec](% )AVER.TIME[msec]

初期コードの FTRACE 情報
MOPS

MFLOPS V.OP AVER.
RATIO V.LEN

VECTOR I-CACHE O-CACHEBANK CONFLICT
TIME
MISS
MISS CPU PORT NETWORKADB HIT
ELEM.%

flood100
1 3395.271(100.0)3395270.83 14618.16206.6 97.83 198.2 1665.816
0.022 163.245
27.664 229.810
53.30
init
10.134( 0.0)
134.439 29316.9
3580.7 99.75 255.9
0.134
0.000
0.000
0.004
0.004
0.01
output30.000( 0.0)
0.064
160.2
0.0 1.92 74.0
0.000
0.000
0.000
0.000
0.000
0.00
---------------------------------------------------------------------------------------------------------------------------------total
5 3395.405(100.0) 679081.09 14618.7
6206.5 97.83 198.2 1665.950
0.023 163.245
27.668 229.814
53.29

表4
【ベクトル化後コード】
PROC.NAME FREQUENCYEXCLUSIVE
TIME[sec](% )AVER.TIME[msec]

ベクトル化後コードの FTRACE 情報
MOPS

MFLOPS V.OP AVER.
RATIO V.LEN

VECTOR I-CACHE O-CACHEBANK CONFLICT
TIME
MISS
MISS CPU PORT NETWORKADB HIT
ELEM.%

flood100
1 1850.736(100.0)1850736.14 27222.3 11498.7 99.53 198.6 1706.915
0.013
0.211
26.722 243.202
52.91
init
10.135( 0.0)
134.952 29205.6
3567.1 99.75 255.9
0.135
0.000
0.000
0.006
0.005
0.01
output30.000( 0.0)
0.065
158.2
0.0 1.92 74.0
0.000
0.000
0.000
0.000
0.000
0.00
---------------------------------------------------------------------------------------------------------------------------------total
5 1850.871(100.0) 370174.25 27222.5 11498.2 99.53 198.6 1707.049
0.014
0.211
26.729 243.207
52.91

表5

IF 文消去後コードの FTRACE 情報【IF文消去後コード】
PROC.NAMEFREQUENCY

EXCLUSIVE
TIME[sec](% )AVER.TIME[msec]MOPS

MFLOPS V.OP AVER.
RATIO V.LEN

VECTOR I-CACHE O-CACHEBANK CONFLICT
TIME
MISS
MISS CPU PORT NETWORKADB HIT
ELEM.%

flood100
1 9946.668(100.0)9946668.215 27367.2 12425.3 99.60 202.2 9232.460
0.225
0.547 327.191 932.144
55.50
init
10.273( 0.0)273.275 29229.4
1762.1 99.44 255.9
0.273
0.000
0.000
0.031
0.014
0.00
output30.116( 0.0)
38.760 26325.1
1.0 98.29 256.0
0.116
0.000
0.000
0.006
0.019
0.00
---------------------------------------------------------------------------------------------------------------------------------total
5 9947.058(100.0)1989411.554 27367.2 12424.9 99.60 202.2 9232.849
0.225
0.547 327.227 932.178
55.50

表6

性能比較（初期コード、ベクトル化の対象：北海道

IF 文消去後コードの対象：日本全土）

演算時間 [sec]演算性能 [GFlops]

実行効率 [%]

平均ベクトル化率 [%]平均ベクトル長

初期コード3,3956.21

9.0

97.83

198.2

ベクトル化後コード

1,850

11.50

16.7

99.53

198.6

IF 文消去後コード

9,947

12.42

18.0

99.60

202.2

を示す記号 “S” が付加されている。最適化メッセージ

3.3

IF 文の消去による高速化

から 291 行目および 292 行目の処理に依存関係がある

SX-ACE では DO ループ中の IF 文については、真ため、DO ループ全体のベクトル化が不可となってい偽に基づいてベクトルマスクを作成し、演算についてることが分かる。

は本来の IF 文の真偽にかかわらず演算を行う。DO

該当箇所のベクトル化を促進するために、1. 依存関ループの演算終了後に IF 文を考慮したベクトルマス係のある演算順序の変更、2. ループ分割と作業配列のクにより、IF が真となる演算結果のみをストアするこ導入、を行った。図 5 にベクトル化後コードの編集リとでベクトル化を可能としている。このことから、図ストの一部を示す。

5 において DO ループ中で対象とする計算領域を指定

依存関係によりベクトル化が不可であった、291 行する IF 文（326 行目および 348 行目）を消去する、す目の演算を後に、292 行目の演算を前に行うように演

なわち日本全土を対象として演算することで実効性能算順序を変更（それぞれ 354 行目と 353 行目に）した。の改善が期待できる。

次に、ループ分割を行うことで DO ループ中の IF 文3.4 性能比較による条件分岐の個数を減らし、コンパイラがベクトベクトル化後コードの FTRACE 情報を表 4 に、対ル化の判断を行うことが可能となった。ループ分割を象とする計算領域を指定する IF 文を消去し、日本全行うために後半の DO ループで必要な演算結果を前半土について演算を行ったときの FTRACE 情報を表 5の DO ループで保存するための作業配列 OUTD を導に示す。また、初期コード、ベクトル化後コードおよ入した。

び IF 文消去後のコードの性能比較を表 6 に示す。
初期コードでは平均ベクトル化率が 97.83% であっ『全国洪水氾濫被害額推定のための 2 次元氾濫計算』コードのSX-ACE 向け最適化および MPI 並列化― 35 ―

たが、ループ分割と演算順序の変更によるベクトル化

表7

並列化コードの演算時間比較（対象：日本全土）により 99.53% に向上した。また、演算領域を限定す計算機

並列化

演算コア数

演算時間 [sec]る IF 文を消去したことで、対象範囲が北海道から日SX-ACEなし

19,946

本全土になったために演算時間は増加しているが、実SX-ACE

Flat MPI

128(32 ノード)128

行効率は 16.7% から 18.0% に向上したことから、日LX406Re-2

なし

153,901

本全土をシミュレーションする場合にはＩＦ文消去後

LX406Re-2

Flat MPI120(6 ノード)

739のコードの方が高速であることが分かる。初期コードに対する性能向上比は演算性能値の比較より、それぞ率を約 18% まで高速化することができた。また、MPI

れ 1.8 倍、2.0 倍を達成することができた。

ライブラリによる並列化により 128 コアを用いた並列

4 MPI ライブラリによる並列化実行では、逐次実行の約 78 倍の性能向上が得られた。

4.1 並列化方針

1km×1km であったが、この解像度では、河川ごと従来の研究におけるグリッドセルサイズは約次に、ベクトル化および IF 文を消去した最適化コーに異なる治水施設の整備状況などを十分に反映するこドの MPI ライブラリによる並列化を行った。分割方とができなかった。今回、約 250m×250m の解像度が向は図 3 に示した J 方向について 1 次元分割を行い、実用的な時間で実行できるようになったことで、被害各プロセスで分割された領域について演算を行った額の推定結果の妥当性が向上すると同時に、局地的な後に、袖領域のデータ通信を行う。データ通信には現象についても検討することが可能となった。

MPI SENDRECV を使用した。演算結果は代表プロ

計算速度の向上により様々な条件での計算を多数実セスに各プロセスから MPI GATHERV を用いて受行することが容易となったことから、今後は降水量の信し、バイナリ形式のファイルとして書き出しを行う。

増加や海面上昇など地球温暖化による影響を考慮した

4.2 並列化コードの演算時間比較

解析 [3]、洪水に加え高潮や斜面崩壊、沿岸浸食などにMPI ライブラリによる並列化を行ったコードを実行した結果を表 7 に示す。

よる複合災害のリスクの検討 [4] を高解像度で実施する予定である。

SX-ACE においては、128 コアを用いた並列実行は今後は MPI 通信の最適化などについて高速化を行逐次実行と比較して演算時間比で約 78 倍の性能向上

い、利用者の研究活動の加速を支援する予定である。

が得られた。並列コア数に対する並列性能は理想値のサイバーサイエンスセンターの大規模科学計算シス68% 程度であるので、通信部分の最適化などによりさテムが、利用者の研究発展の一助になるために、今後らなる性能向上を試みる予定である。

も高速化推進研究活動に取り組む所存である。

また LX406Re-2 において 120 コアを用いた並列実行は逐次実行と比較して、約 73 倍の性能向上がみられ参考文献た。SX-ACE（128 コア）と LX406Re-2（120 コア）の[1] 国土交通省河川局：治水経済調査マニュアル（案），

理論演算性能比は約 3.8 倍であるが、演算時間比では2005.

約 5.8 倍と、SX-ACE の実効性能の高さが示された。

[2] 手塚翔也，小野桂介，風間聡，小森大輔：極値降

演算時間計測は観測期間が 1 時間分に相当する

雨，流出量に基づく洪水被害推定およびその将来14,400 ステップで行ったので、観測期間 4 日分に変化，土木学会論文集，Vol.70，No.4，pp.1501-相当する 1,382,400 ステップの演算を行う場合の演算

1506，2014.

時間は、SX-ACE（128 コア）においては約 3.4 時間[3] 町田宗一郎，川越清樹，風間聡，沢本正樹，横木と推定される。

裕宗，安原一哉，地球温暖化に伴う全国の浸水5 まとめ

被害額評価，地球環境シンポジウム講演論文集，vol.15，pp.155-160，2007.

本稿では『全国洪水氾濫被害額推定のための 2 次元

[4] 秋間将宏，風間聡，峠嘉哉，小森大輔，川越清樹，氾濫計算』コードの SX-ACE 向け最適化および MPI

多田毅，年最小気圧を用いた複合水災害潜在被並列化の事例について述べた。

害額の将来推定，土木学会論文集 B1（水工学），今回実施したベクトル化および IF 文を消去する最適化により、SX-ACE において約 9% であった実行効

Vol.73，No.4，I 139-I 144，2017．