— 14 —SENAC Vol. 48, No. 3（2015. 7）［大規模科学計算システム］[大規模科学計算システム]

SX-ACE における HPCG ベンチマークの性能評価
小松 一彦 1), 江川 隆輔 1), 磯部 洋子 1)3), 緒方隆盛 3), 滝沢 寛之 2), 小林 広明 1)
1)東北大学サイバーサイエンスセンター,
2)東北大学大学院情報科学研究科,
3)日本電気株式会社

1. 背景
これまでスーパーコンピュータシステムの性能を測定するベンチマークとして，Linpack[1],
HPC Challenge, NAP Parallel Benchmark など，さまざまなベンチマークが提唱されている．
1993 年に始まったスーパーコンピュータをランク付けする TOP500[2]では，Linpack が採用されている．Linpack は密係数行列の連立一次方程式の解を求めることで，1 秒あたりの浮動小数点演算回数(FLOPS)を算出している．この性能値に基づいて，TOP500 では世界のスーパーコンピュータ の 上 位 500 位 ま で を 年 に 2 回 ， ス ー パ ー コ ン ピ ュ ー タ に 関 す る 国 際 会 議 で あ るISC(International Supercomputing Conference) と SC(International Conference on High
Performance Computing, Networking, Storage and Analysis)において，発表している．
しかしながら，Linpack と実アプリケーションで実行される計算内容が乖離しており， Linpackによって得られた性能値が，必ずしも実際のスーパーコンピュータで実行されている実アプリケーションに当てはまらないという問題がある．これは，Linpack が主にプロセッサの理論演算性能やシステム規模などの総演算性能を測定するためのベンチマークとして開発されており，実アプリケーションの実効性能に重要となる演算性能以外のメモリアクセス性能やネットワーク性能を測定することが難しいためである．さらに，Linpack の実行時間も問題に挙がっている．Linpackで高い性能値を出すためには，出来るだけ大規模な問題を解く必要があり，スーパーコンピュータの規模が大きくなるにつれ，その実行時間が長くなっている．大規模なスーパーコンピュータ
では部品点数が多いこともあり，故障による長時間実行の困難さや，性能測定のためだけに費やされる電気代などの費用などが問題となっている．このような実アプリケーションとの乖離や実行時間の長さなどのほか，使い勝手などの演算性能以外の評価をできないなどの問題を解決するための，短時間で，かつ，より実アプリケーションに求められる要因を測定できるベンチマークが長い間求められている．

2. HPCG の概要
High Performance Conjugate Gradient (HPCG)[3]は，前述した Linpack の問題点を解決するこSX-ACE における HPCG ベンチマークの性能評価— 15 —とを目的として，より実アプリケーションの特徴に即したベンチマークとして開発されている．
HPCG は Linpack の特徴である，分かりやすさ，実行しやすさなどの Linpack の特徴を引き継ぎつ
つ，演算性能だけでなく，メモリアクセス性能・ネットワーク性能にも比重が置かれており，より実アプリケーションに近いベンチマークとなっている．例えば，集団縮約通信や，様々なサイズにおける 1 対 1 通信，間接メモリアクセスなども含まれている．2013 年 6 月の ISC’13 において新たなベンチマークとして提唱され，11 月 SC13 における実行方法，実行時間，最適化方法などの検討，2014 年 1 月と 3 月に開催されたワークショップにおける議論を経て，2014 年 6 月のISC’14 において初めて HPCG ランキングが公開されている．
HPCG は疎行列の連立一次方程式の解を求めることで性能値を算出している．有限要素法を用いて離散化された対称疎行列を係数行列とする連立一次方程式を，ガウス・ザイデル法(SymmetricGauss-Seidel Method)を用いたマルチグリッド前処理(Multigrid Preconditioning)付き共役分配法(Conjugate Gradient)で解いている．性能値は，この連立一次方程式を解くのに規定されている浮動小数点演算回数を実行時間(最適化に必要な時間も含む)で割ることで算出している．
図 1 に HPCG(Release 2.4)の処理の流れを示す．HPCG は前処理，準備実行，本番実行，後処理の 4 つのフェーズに大別されている．前処理フェーズでは，連立一次方程式のための疎行列やマルチグリッド前処理のための粗い行列，行列の検証，プロセスの割当などが行われる．準備実行
フェーズでは，最適化など何も手を加えられていない状態で疎行列ベクトル積(SpMV)，マルチグリッド(MG)関数，共役分配(CG)関数全体, 残差の集約などが実行され，最終結果に必要なデータが測定される．本番実行では，まず最適化を施された CG 関数を 1 回実行することで，試行回数が決定される．次に，試行回数に応じた CG 関数が実行され,その実行時間が計測される．最後の後処理フェーズでは，前処理フェーズでの検証結果や実行の検証を踏まえ，正常であれば，測定条件(プロセス数・スレッド数，問題サイズなど)，検証結果，そして，測定結果(経過時間，浮動小数点演算回数の理論値，GFLOPS 値)が出力される．

図 1. HPCG の処理の流れ

— 16 —

SENAC Vol. 48, No. 3（2015. 7）

3. サイバーサイエンスセンターにおける HPCG の取り組み
サイバーサイエンスセンターと NEC は，HPCG の提案に先立って， 2012 年後半から実アプリケーションにおいてよく用いられる疎行列ベクトル積の高速処理に取り組んでいる．それらの知見を生かし，HPCG をターゲットとして，サイバーサイエンスセンターで運用されているベクトル型スーパーコンピュータにおける最適化・高速化を進めてきた．
まずは HPCG の特徴を分析するために，コード中の浮動小数点演算命令，メモリアクセス命令から演算密度(Operational Intensity)の算出を行った．その結果，HPCG に使われている主要な関数のデータ転送量と浮動小数点演算数の比(Bytes/Flop)が 6 以上であることが分かった．これによりノード性能を高めるためには，メモリアクセス性能が非常に重要であることが分かる．次に，コードの初期分析とともに，コードの最適化を検討した．特に，HPCG において主要な計算であるガウス・ザイデルを用いたマルチグリッド法の並列化手法について検討を重ねた．図 2，3 に示すような同一色の点において，節点の値の更新順序に依存関係がないとみなし並列に計算するマルチカラーオーダリング法や最適化前の依存関係を保つハイパープレーン法などを試行した．その結果，収束回数の増加を抑えることができ，かつ，ベクトル型スーパーコンピュータ SX-ACE において高い性能を引き出すことができるハイパープレーン法を採用した．さらに，SX-ACE に搭載されているソフトウェア制御可能なオンチップメモリ ADB を最大限に活用するために，保存すべきデータの選別やグリッドサイズの調整などのチューニングを行った．その他，疎行列の格納方式，通信の最適化などのさまざまな最適化を通じて，本番実行フェーズで実行するコードを作成した．

図 2. 8 カラーオーダリング法(2 次元平面図)

図 3．ハイパープレイン法

SX-ACE における HPCG ベンチマークの性能評価— 17 —

4. SX-ACE における HPCG の評価
SX-ACE 512 ノードを用いて最適化を施した HPCG の評価を行い，SC14 でのランキングへ登録を行った．表 1 に，SC14(2014 年 11 月)の HPCG BOF で発表されたランキングを示す．全 25 のスー
パーコンピュータが登録されており，HPCG における性能が高い順にランキングされている．その他，Linpack における性能値(HPL)やランキング(HPL Rank), HPCG と Linpack や理論性能値との比率である効率も発表されている．
この表を見ると，必ずしも Linpack における性能値が HPCG における性能値と同一ではないことが分かる． HPCG ランキングの 2 位と 3 位のスーパーコンピュータを例に取ってみてみると，HPCG
ランキング 2 位の京コンピュータは HPL ランキングでは 4 位，HPCG3 位の Titan が HPL2 位となっており，HPCG と HPL における順位が入れ替わっているのが分かる．このように，HPCG は演算性能の他にメモリアクセス性能やネットワーク性能などスーパーコンピュータの総合的な性能を評価しているため，順位の入れ替わりがしばしば発生する．
東北大学の SX-ACE は，他のシステムに比べて理論性能値が高くなく，Linapck の性能を見ると，0.123Pflops と Top500 にはランクインできないシステム規模であるにも関わらず，HPCG 性能値は0.0135Pflops と 18 位にランク付けされている．これは SX-ACE の実行効率が他のスーパーコンピ
ュータと比べ，格段に高いためである．図 4 に理論演算性能に対する実行効率を示す．横軸はスーパーコンピュータを示し，実行効率が高い順番に並べている．青，黄，緑，橙，赤，紫の各色
は，SX-ACE, GPU, Intel Xeon，BlueGene, 富士通 SPARC, Intel Xeon Phi のプロセッサをそれぞれ搭載するスーパーコンピュータである．図 4 や表 1 を見ると，実行効率が他のスーパーコンピ
ュータは 1.0〜4.8%であるのに対して，SX-ACE は 10%超えと非常に高い効率であることが分かる．
SX-ACE はメモリバンド幅が 256GB/s と高く，演算性能とメモリバンド幅の比率も 1.0B/F と高いためである．また，3 章で述べた最適化より，その演算性能およびメモリアクセス性能を効率的に引き出すことができたため，高い実行効率を達成できた．

— 18 —

SENAC Vol. 48, No. 3（2015. 7）

表 1. SC14 において発表された最新 HPCG ランキング

Rank

Site

HPL
[Pflops]

HPLRank

HPCG[Pflops]

HPCG/
HPL[%]

HPCG/
Peak[%]

1

NSCC/Guangihou

33.9

10.632

1.86

1.2

2

RIKEN AICS

10.5

40.461

4.39

3.8

3

DOE/OS ORNL

17.6

20.322

1.83

1.2

4

DOE/OS Argonne Lab.

8.59

50.167

1.94

1.0

5

Sewiss CSCS

6.27

6

0.105

1.67

1.3

6

Leibniz Rechenzentrum

2.90

140.0833

2.87

2.6

7

DOE/OS L Barkley Nat Lab.

1.65

240.0786

4.76

3.18

GSIC Center, TiTech

2.78

150.07300

2.63

1.39Max-Planck

1.28

34

0.06100

4.77

4.2

10

CEA/TGCC-GENCI

1.36

33

0.0510

3.75

3.1

3.00

120.0489

1.63

1.2

2.07

N/A

0.0448

N/A

2.2

1112

Exploration andProduction Eni S.p.A
Grand Equipement Nationalde calcul intensif

13

U. of Tokyo

1.04

36

0.0448

4.30

3.9

14

Texas Advanced
Computing center

5.168

70.0440

0.85

0.5

15

IFERC

1.240

30

0.0426

3.44

2.8

16

HWC U of Stuttgart

2.763

N/A

0.0391

N/A

1.0

17

SURF sara

0.848

N/A

0.0195

N/A

1.8

18

Cyberscience Center
Tohoku U

0.123---0.0134

10.89

10.2

19

Meteo France

0.469

790.0110

2.35

2.2

20

Meteo France

0.465

80

0.00998

2.15

2.2

21

Bull Angers

0.430

N/A

0.00970

N/A

1.8

22

U of Toulouse

0.255

184

0.00725

2.84

2.6

23

Cambridge U.

0.240

241

0.00385

1.60

1.024

GSIC Center, TiTech

0.148

392

0.00370

2.50

1.7

25

SURF Sara

0.154

499

0.00250

1.63

1.2

SX-ACE における HPCG ベンチマークの性能評価— 19 —

12

実行効率（％）

10864
2Tohoku U
Max-Planck
K Computer
U. of Tokyo
CEA
L.BarkleyIFERC
U. of Toulouse
Leibniz
Pccigen
Meteo F
SURF
AngersTSUBAME-KFC
Argonne Lab.
CSCS
TSUBAME2.5
SURF
Titan
TianheEcploration
Cambridge
HWC U
Texas Advanced0

図 4. HPCG における実行効率の比較

5. まとめ
演算性能だけでなくメモリアクセス性能やネットワーク性能などスーパーコンピュータの総合力を評価するベンチマークとして，新たに提案されている HPCG におけるサイバーサイエンスセン
ターの取り組みについて述べた．サイバーサイエンスセンターにおいて運用されている SX-ACE に向けた HPCG の最適化，その評価結果について述べた．SC14 において発表された最新の HPCG ラン
キングを通じて，SX-ACE が他のスーパーコンピュータと比べて，非常に高い実行効率を達成できることが分かった．SX-ACE は演算性能だけでなくメモリアクセス性能も重視しているため，HPCGだけでなく実アプリケーションにおいても高い実効性能を実現できると期待できる．今後は HPCGの取り組みを通じて得た知見を実アプリケーションにも応用し，これまで以上に研究・社会に役立つスーパーコンピュータを目指していきたい．

参考文献[1] Linpack, http://www.netlib.org/linpack/[2] TOP500 Supercomputing Sites, http://www.top500.org/[3] HPCG Benchmark, http://www.hpcg-benchmark.org/