（様式 20）成果報告書

TSUBAME 共同利用 平成 27 年度 学術利用 成果報告書

利用課題名 GPU クラスタを利用した詳細人体モデルの大規模電磁界計算
英文：Large-scale electromagnetic simulation of detailed realistic human model using GPU Cluster
利用課題責任者
Jerdvisanop Chakarothai所属
National Institute of Information and Communications Technology
URL: http://www.nict.go.jp
電磁界による人体ばく露評価を行うために，詳細人体モデルを用いて様々なばく露条件において電磁界解析を行わなければならない．この論文では，TSUBAME2.5 の GPU クラスタシステムを用いて詳細人体モデルに対して大規模計算のための並列化 FDTD シミュレーション技術を開発した．誘電体球の散乱解析においては，648 個の GPU を同時に用いることで，600 億以上の電磁界成分を一秒以下で更新できることが示されている．
また並列 FDTD アルゴリズムを用いることで 0.5 mm の解像度を持つ人体モデルに対してばく露評価を行うことが可能であることが示された．
In order to assess human-body exposures due to electromagnetic wave, it is necessary to perform accurate analysesof the exposures under various conditions. In this paper, we have developed a large-scale parallelized FDTD
simulation technique for detailed human model using TSUBAME2.5 GPU cluster system. In a scattering analysis ofdielectric sphere, it was indicated that more than 60 billion field unknowns are updated in less than a second per
calculation time step using 648 GPUs in total. It has also demonstrated that our proposed parallelized FDTD
algorithm can be effectively applied to evaluation of human exposure due to EM fields.
Keywords: 時間領域有限差分法，FDTD 法，ばく露評価，散乱解析

背景と目的クチャ(MIC)等の新しいタイプの演算機能を持つものが近年，詳細人体モデルを用いた数値電磁界シミュレ計算効率を非常に向上させた．通常の FDTD 法では，ーションが生体影響の調査や医学応用等の様々な分ノード間の通信のために隣同士の格子データのみを必野で行われている．そのシミュレーション手法の一つと要としているため，非常に並列計算に適している．長岡

して時間領域有限差分(Finite-difference time-domain,らは複数 GPU を搭載したシステムを用いて解析を行っFDTD)法が用いられる．また数値解析に用いられる解た結果，NEC SX-8R よりも計算時間が 1.5 倍短縮され剖学的な人体モデルについては，様々な国（スイス・日た．Kim らはオーバーラップ通信モデルを用いることに本・アメリカ・韓国等）の主要な研究機関が開発されてよって，FDTD 法の並列化効率を改善させた．また Xu

きた．例えば，日本においては，情報通信研究機構がらは 80 個の NVIDIA Tesla K20 を用いて，95%以上の開発した日本人男性モデル，女性モデルおよび子供モ並列化効率を達成した．このように，GPU を用いた解析デルがある．これらの人体モデルはたくさんの生体組が行われてきたが，大規模並列シミュレーション織を含み，非常に複雑な構造を持っている．それに伴この論文では，詳細人体モデルの数値ばく露評価のって，人体に吸収される電磁エネルギーまたは比吸収ための TSUBAME の GPU クラスタ上に動作する並列率の計算量が膨大であり，詳細に解析を行うためにはFDTD アルゴリズムを実装した．本手法は 3D/1D ハイ高性能な計算システムが必要である．特に体内に誘導ブリッドの領域分割法を用いることで，ノード間通信をされた電界は神経細胞の刺激に関連しており，1 mm 以最小化することができる．まず解析空間全体の 3 次元下の解像度を持つモデルの解析を必要されている．

領域を x, y, z 軸のそれぞれで分割し，それぞれノードに計算分野における急激な発展によって，近年開発されたグラフィックス演算ユニット(GPU)や多コアアーキテ割り当てから，各ノード内でさらに一次元で領域を分割し，各 GPU メモリに割り当てる．

（様式 20）成果報告書
データをコピーしなければならない．また磁界データの通信の流れは電界データと同じであるが，逆方向によって行われる．ただし，GPU 内のデータ通信は NVIDIAが提供する GPUdirect 関数の一つ’cudaMemcpyPeer’を使って高速に GPU 間のデータ通信を実現することができる．
本研究で用いた FDTD 法は各セルにおける電界及び磁界の振幅及び位相を時間的に追跡できるような手法であるため，時間ステップごとに人体に吸収される電図-1 FDTD領域全体の3次元分割．ここでp, q, rはブロッ力量の収束性を判定することができる．まず FDTD 計クの番号である．

算の初期化（生体組織の電気定数の設定，FDTD 計算に用いる各定数の計算等）を行い，計算ループに入る．
計 算 ル ー プ 内 に は ， 電 界 ， 電 界 の PML(Perfectly概要
FDTD 計算に複数の GPU を利用するために，図 1matched layer, 完全整合層)境界，磁界，磁界の PMLのように 3D/1D ハイブリッド領域分割法を適用する。3境界，そして比吸収率の計算プロセスからなる．計算次元的な FDTD 領域は各軸に沿ってそれぞれ Mx, My,ループは人体に吸収される電力量が一定値に収束すMz 個のブロックに分割される．従って分割ブロック数はるまで繰り返される．なお，放射される電磁界を吸収す全部で Mx×My×Mz である．各ノードには GPU が複数あるために設置される PML 境界の計算には，特別な処る場合，さらに各 GPU にデータを割り当てるために一理と計算が必要である．例えば，PML 境界が存在する次元で NGPU 個の領域に分割する。従って各 GPU に割

ノード内には，PML データのために個別にメモリを確保り当てられた解析領域の大きさは(Nx /Mx)×(Ny /My)×(Nz

しなければならない．

/NGPUMz)ボクセルである．

加えて GPU 性能をさらに改善するために，すべての本研究で使われる FDTD 法は有限差分に基づいた3 次元の電磁界データは一次元配列として定義される．

手法であるため，格子上電界及び磁界は隣の格子に第二に，ノード内の GPU 間通信は非同期モードで行うおける情報を参考して更新されることになる．各 GPUことによって，高速にデータ通信を行うことができる．第に割り当てられた解析領域の境界においては，隣の三に，x 軸及び y 軸に沿った境界の電磁界データは連GPU 内にある情報をコピーしなければならない．GPU

続ではないため，ノード間のデータ転送の前に一旦連クラスタ内の通信は以下の 3 ステップからなる．1)GPU続的な配列にデータを並び替える必要がある．

デバイスからホストへのデータのコピー，2)MPI 通信によるデータの送受信，3)ホスト内のデータを GPU デバイ結果および考察スに戻す作業である．電界データのノード間及び GPU

本研究の並列化 FDTD コードは C++及び NVIDIA間通信の概略図を図 2 に示す．現在ノードの左右(x 軸)が提供している開発環境 CUDA で開発された。まず並及び前後(y 軸)については GPU メモリ内のデータは連列化 FDTD プログラムコードの妥当性及び性能を検討

続的に配置されていないため，各 GPU 内に存在するデするために，誘電体球モデルの解析を行う．すべてのータを並び替えてから，ノード間通信を行う必要がある．

GPU による計算は東京工業大学の TSUBAME2.5 シス

一方,上下(z 軸)については，メモリ内にデータが連続テムの大規模 GPU クラスタによって行われた．現在であるため，データの並び替えは不必要である．ノード

TSUBAME2.5 システムのノード数は 1408 個である．そ間通信は基本的には Message Passing Interface (MPI)

れぞれの計算ノードに搭載された GPU カード数は 3 枚の’MPI_send’及び’MPI_receive’コマンドによって行わである．CPU は Intel Westmere EP X5670 2.93 GHz (6れる．ノード間通信を行った後，GPU 内の元の場所にcores/CPU)であり，各計算ノードには 2 個の CPU を搭

（様式 20）成果報告書載している．各ノードのメモリは 54 GB(1367 ノード), 96GB (41 ノード)である．全システムのピーク性能は 5.76PFlops (倍精度)及び 17.1 PFlops(単精度)である．GPUクラスタで得られた解析結果は Intel Xeon CPU E52643v3 (3.4 GHz, 6 cores, 12 threads)と 96 GB のメモリを搭載した HP ワークステーションによる結果との比較を行う．
まず 200 MHz の平面波入射による半径 20 cm の誘電体球の全身平均 SAR を求めた．誘電体の比誘電率
は 2.0，導電率は 0.1 S/m である．平面波の電力密度は1 mW/cm2 である．解析領域は 256 x 256 x 256 セルで，図-2 TSUBAMEのGPUクラスタによる並列化効率

解像度が 2 mm である．誘電体球の全身平均 SAR は0.0859 sec.となり，一秒当たりに更新できる未知数の数計算時間の約 1 周期で収束している．ここで GPU によ（電界及び磁界の各成分）は約 760 億個である．またこる計算は TSUBAME システムの一つのノード上で 3 個のときの並列化効率は約 57.1%で，加速比率は通常のの GPU を利用して行われた．CPU(ワークステーション)

24 コアの並列計算(CPU)と比べて約 290 倍であった．

及び GPU(TSUBAME)によって得られた全身平均 SAR

ただし，本研究で用いた計算アルゴリズムは通常のはそれぞれ 64.36 mW/kg 及び 64.21 mW/kg であった．

FDTD 法よりも使用メモリ量及び計算量が倍であること

両者とも Mie による解析解である 63.51 mW/kg とよく一に注意したい．

致 し て い る ． そ れ ぞ れ の 差 異 は 1.38% (CPU) 及 び

ここで開発された並列化 FDTD 法を実際問題の人体1.12% (GPU)である．従って，本手法の並列化 FDTD

ばく露評価に適用する．用いた人体モデルは情報通信法の妥当性を確認した．

研究機構が開発した日本人男性モデルである．人体モ

次に前節と同じ誘電体球モデルを用いて，GPU クラデルは 51 種類の組織から構成されており，元々の解スタ上で解析を行う．解析領域の大きさは 256 , 512 及

像度は 2 mm である．人体の高さ及び重さはそれぞれび 10243 ボクセルで解像度はそれぞれ 2 mm, 1 mm 及

173 cm 及び 64 kg である．各生体組織の比誘電率及びび 0.5 mm である．すべての解析における計算ステップ

導電率は Gabriel のデータベースから抽出したものを用数は 1000 ステップである．図-2 に TSUBAME システム

いた．平面波の偏波は人体軸と平行であり，人体の真の GPU クラスタ上の複数計算ノードを用いたときの並正面から入射する．解析周波数は 200 MHz である．解列化効率を示す．横軸は GPU の数で縦軸は以下の式

析領域の大きさは 2 mm, 1mm と 0.5 mm の解像度に対で定義された並列化効率である．

してそれぞれ 190×350×896, 350×670×1767 と 670

3actualγ=

3actual𝑁
3𝑁=
𝑁 ideal𝑁𝐺𝑃𝑈 𝑁 3GPUs...(1)

ただし，N actual は実際に計算した一秒当たりのボクセル数または未知数の数，N×1310×3498 ボクセルである．計算ステップ数はそれ
ぞれ 10000, 20000 及び 40000 ステップである．
GPU クラスタによって得られた人体の全身平均 SAR

は一ノード内の GPUは 2 mm, 1 mm と 0.5 mm の解像度のモデルに対してを 3 つ用いたときの一秒当たりのボクセルまたは未知それぞれ 0.102 W/kg, 0.105 W/kg と 0.106 W/kg であっ数の数，NGPU は計算に用いた GPU の数である．図た．全身平均 SAR を求めるのにかかる計算時間は 2から分かるように計算に用いる GPU の数が多ければmm の人体モデルに対して 24 コア並列化したワークス多いほど，並列化効率が低下する．これはノード数がテーションの場合，約 227 分であったが，24 個の GPU(8多くなるにつれ，よりノード間通信に時間がかかるからノード)を用いた場合，約 13 分であった．その比は約 17である．本研究では，648 個の GPU を同時に用いて計倍である．また 1 mm の人体モデルに対して 54 個の算したとき，FDTD 計算内の一ステップにかかる時間はGPU(18 ノード)を用いた解析にかかる時間は約 85 分と3GPUs

（様式 20）成果報告書なり，ワークステーションよりも 47 倍速い．そして 0.5mm の人体モデルに対して，432 個の GPU(144 ノード)を用いた解析にかかる時間は約 175 分であった．図-5に解析で得られた SAR 分布を示す．GPU クラスタ上で計算した結果はワークステーションで得られたものと一致している．従って，本研究で開発した並列化 FDTD 法の有効性を示すことができた．
まとめ、今後の課題
大規模電磁界シミュレーションのための並列化
FDTD 法を TSUBAME システムの GPU クラスタ上に実装した．平面波入射による誘電体球の結果と Mie の解析解との比較を行うことによって，本研究で開発したプログラムコードの妥当性を示した．解析領域の大きさが 10243 ボクセルの場合，648 個の GPU(216 ノード)を同時に用いることによって得られた並列化効率は 57%であり，FDTD 法における更新計算は一秒当たり約 100億個の未知数に対して行うことができる．最後に 0.5mm の解像度を持つ人体モデルに対して平面波を入射させたときの人体内部に吸収される電力量または比吸収率の計算を GPU クラスタ上で行う場合，約 175 分で終了することができ，本研究で開発した並列化 FDTD法が大規模人体ばく露評価シミュレーションに対する有効であることを示した．今後の問題は，FDTD 法における並列度の改善である．