スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後...

26
スーパーコンピュータ「富岳」の開発 清水 俊幸 富士通株式会社 2019.10.18 Copyright 2019 FUJITSU LIMITED 0

Upload: others

Post on 10-Mar-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

スーパーコンピュータ「富岳」の開発

清水 俊幸富士通株式会社

2019.10.18

Copyright 2019 FUJITSU LIMITED0

Page 2: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

アウトライン

「京」コンピュータとその後

「京」から「富岳」への進化のポイントと状況

富岳の概要

A64FXの性能

エコシステム

TofuDインタコネクト

高並列・効率への取り組み

まとめ

将来の材料系シミュレーションに向けて

Copyright 2019 FUJITSU LIMITED1

Page 3: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

「京」コンピュータとその後

「京」 10PFLOPSの実用・汎用スパコンを実現

システムソフト「TCS」の開発・提供により、ハードウェアの機能・性能を引き出す

7年間運用され、多くのアプリが開発された

TCSを進化させ種々の要件に対応 FX10, FX100を開発し、TCSで性能を引き出し、提供

x86クラスタとのハイブリッドシステム

スーパーコンピュータ「富岳」を理研と開発

2011 2012 2013 2014 2015 2016 2017 2018 2019 2020

PRIMEHPC FX10

1.8x CPU perf.Easy installation

4x(DP) / 8x(SP) CPU & Tofu2高密度実装 & 低消費電力

App.review

FSプロジェクト

HPCI戦略プログラム

「京」の運用設計・開発

国家プロジェクト

FUJITSU

ポスト京設計・開発

PRIMEHPC FX100

Technical Computing Suite (TCS)

100万以上のジョブ実行サポートFEFS:大規模分散ファイルシステム

MPI:超大規模システム向け並列ライブラリ

OS: アシスタントコアを用いた低ノイズOS

富岳

FX100

後継機

Copyright 2019 FUJITSU LIMITED2

Page 4: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

「富岳」の開発目標とアプローチ

開発目標 高い性能・高い電力効率

ユーザに対する利便性の高さ

「京」で動作していたアプリケーションに対する互換性の維持

アプローチ 高いアプリケーション性能とスケーラビリティ、独自CPUコアの開発【性能】 幅広いSIMD、数学関数補助命令、高いメモリバンド幅

【スケーラビリティ】 スケーラブルなTofuインターコネクトを強化

【電力効率】 デバイステクノロジー、電力制御機能、最適なHWバランス(OOO資源等)

Arm ISA採用によるArmバイナリ互換

性能バランスの維持と将来への拡張

Copyright 2019 FUJITSU LIMITED3

Page 5: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

「京」から「富岳」への進化のポイントと状況

富岳の概要

A64FXの性能

エコシステム

TofuD

高並列・効率への取り組み

Copyright 2019 FUJITSU LIMITED4

Page 6: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

富岳CPU“A64FX”概要

Arm SVEを採用した高性能・高効率CPU

倍精度演算性能 2.7+ TFLOPS, 90+%@DGEMM

メモリバンド幅 1024 GB/s, 80+%@STREAM Triad

A64FX

ISA (Base, extension) Armv8.2-A, SVE

プロセステクノロジ 7 nm

倍精度ピーク性能 2.7+ TFLOPS

SIMD幅 512-bit

コア数 48 + 4

メモリ容量 32 GiB (HBM2 x4)

メモリバンド幅 1024 GB/s

PCIe Gen3 16 lanes

インターコネクト TofuD integrated

PCleController

TofuInterface

C

C

C

C

NOC

HB

M2

HB

M2

HB

M2

HB

M2

CMG CMG

CMG CMG

CMG:Core Memory Group NOC:Network on Chip

Copyright 2019 FUJITSU LIMITED5

Page 7: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

TSMC 7nm FinFET & CoWoS

Broadcom SerDes, HBM I/O, and SRAMs

8.786 billion transistors

594 signal pins

A64FX CPU

Copyright 2019 FUJITSU LIMITED

Core Core Core Core Core Core Core Core Core Core

Core Core Core Core Core

Core Core Core Core

Core Core Core Core Core Core Core

Core Core Core Core Core Core Core Core Core Core Core Core

Core Core Core Core Core Core Core Core Core Core

Core Core Core Core

L2Cache

L2Cache

L2Cache

L2Cache

HB

M2

Interfa

ceH

BM

2 Interfa

ce

HB

M2

inte

rfa

ceH

BM

2 In

terf

ace

PCIe InterfaceTofuD Interface

RIN

G-B

us

6

Page 8: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

A64FX CPUの高メモリバンド幅

コア内、キャッシュ、メモリのアウトオブオーダ制御などにより、全階層で、高いスループットを実現

HBM2 8GiBHBM2 8GiBHBM2 8GiBHBM2 8GiB

Performance>2.7TFLOPS

CMG

L1 Cache >11.0TB/s (BF ratio = 4)

L2 Cache >3.6TB/s (BF ratio = 1.3)

L1D 64KiB, 4way

512-bit wide SIMD 2x FMAs

CoreCore

>230GB/s

>115GB/s

12x Compute Cores + 1x Assistant Core

Memory 1024GB/s (BF ratio =~0.37)

L2 Cache 8MiB, 16way

256GB/s

>115GB/s

>57GB/s

Core Core

Copyright 2019 FUJITSU LIMITED7

Page 9: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

A64FX CPUのロード性能改善

アラインされていないSIMDロードも128 bytes/cycleのピーク性能を実現

“Combined Gather”は、インダイレクトロードで2倍のデータスループットを実現(偶奇ペアレジスタへの2つのデータが同じ“128-byte aligned block”内にある場合)

L1D cacheRead port0

Read port1

Read data064B/cycle

Read data164B/cycle

Mem.

128B

0 1 2 3 4 5 6 7

0 1 3 2 6 7 45

8B

Regs

flow-1

flow-2

flow-4 flow-3

Maximizes BW to 32 bytes/cyc.Copyright 2019 FUJITSU LIMITED

アプリ開発者とのコデザインからのフィードバック

8

Page 10: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

京コンピュータと富岳の1ペタシステム

「京」

計算ラックx80とディスクラックx20

「富岳」

1ラック(SSD含む)

2.2m

「京」 「富岳」

計算ノード数 7,680(=96x80)384

IOノード数 480(=6x80)

設置面積(m2) 128(=4x32) 1.1

OS SPARC Linux Arm Linux

Arm Linuxのオープンソースコミュニティの活動、コラボレーションにより、多くのアプリ、システムソフトが利用可能になることを期待

Copyright 2019 FUJITSU LIMITED11

Page 11: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

「京」から「富岳」への進化のポイントと状況

富岳の概要

A64FXの性能

エコシステム

TofuD

高並列・効率への取り組み

Copyright 2019 FUJITSU LIMITED12

Page 12: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

A64FXの性能:姫野ベンチマーク

20

85 103

346

286 305

050

100150200250300350400

京1CPU

Intel XeonPlatinum

81682 CPUs

FX1001CPU

Fugaku1CPU

SX-Aurora1 VE

Tesla V1001 GPU

GFL

OPS

††

† “Performance evaluation of a vector supercomputer SX-aurora TSUBASA”,SC18, https://dl.acm.org/citation.cfm?id=3291728

Copyright 2019 FUJITSU LIMITED14

Page 13: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

xx

A64FXの性能:WRF

Copyright 2019 FUJITSU LIMITED

WRF: Weather Research and Forecasting model Vectorizing loops including IF-constructs is key optimization

Source code tuning using directives promotes compiler optimizations

15

Page 14: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

「京」から「富岳」への進化のポイントと状況

富岳の概要

A64FXの性能

エコシステム

TofuD

高並列・効率への取り組み

Copyright 2019 FUJITSU LIMITED17

Page 15: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

エコシステム: OSSアプリのポータビリティ確認

Application Program GCC LLVM Arm Fujitsu

LAMMPS C++ Modified(C) Modified(C) Modified(C) Modified(C)

GROMACS C Modified(C) Modified(C) Modified(C) Modified(C)

GAMESS Fortran Modified(C) Modified(C) Modified(C) Modified(C)

OpenFOAM C++ Modified(C) Modified(C) Modified(C) Modified(C)

NAMD C++ Modified(C) Modified(C) Modified(C) Modified(C)

Siesta Fortran Yes No No Modified(C)

WRF Fortran Modified(C) Modified(C) Modified(C) Modified(C)

Quantum ESPRESSO Fortran Yes Yes Yes Yes

NWChem Fortran Yes Modified(C) Modified(C) Modified(S)

ABINIT Fortran Yes Modified(S) Modified(S) Modified(S)

CP2K Fortran Yes No No Modified(S)

NEST C++ YES Modified(C) Modified(C) Modified(C)

USQCD (MILC) C Yes Modified(C) Modified(C) Modified(C)

BLAST C++ Yes Modified(C) Modified(C) Modified(C)

OpenMX C Yes Ongoing Ongoing Yes

Yes : Ok in as isModified(C): Build env. modifiedModified(S): Src code modifiedNo : Issue foundOngoing : Ongoing

Registered by Fujitsu

Already registered

Not registered

Copyright 2019 FUJITSU LIMITED

Arm HPC Users Group http: //arm-hpc.gitlab.io/

19

Page 16: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

エコシステム:Spackによるビルド環境の整備(理研と協働)

Spackとは?

コンパイラとターゲットアーキテクチャ毎の登録数とビルド成功数

Copyright 2019 FUJITSU LIMITED

GCC 富士通コンパイラ

x86 2,386 -

aarch64 2,210 2,110

Spack登録数:3,242@Sep. 5thSpack v0.12.1 2019/6/6GCC 4.8.5ビルドのみ(動作・結果検証は未)

20

Page 17: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

「京」から「富岳」への進化のポイントと状況

富岳の概要

A64FXの性能

エコシステム

TofuD

高並列・効率への取り組み

Copyright 2019 FUJITSU LIMITED22

Page 18: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

インタコネクト(Tofu interconnect D)

CPUにインタコネクトコントローラを実装 TNIを増やし、高いインジェクションBWと柔軟な通信パターンを実現 バリアリソースを増やし、柔軟な集団通信アルゴリズムの実装を可能に

メモリバイパス技術により低レイテンシ通信を実現 ダイレクトディスクリプタとキャッシュインジェクション

TofuD spec

Data rate 28.05 Gbps

Link bandwidth 6.8 GB/s

Injection bandwidth 40.8 GB/s

Measured

Put throughput 6.35 GB/s

PingPong latency 0.49~0.54 µs

cccc

c ccc

ccccc

NOC

HBM2

CMGcccc

c ccc

ccccc

HBM2

CMG

cccc

c ccc

ccccc

HBM2CMG

cccc

c ccc

ccccc

HBM2CMG

PCle

A64FX

TNI0

TNI1

TNI2

TNI3

TNI4

TNI5 To

fu N

etw

ork

Ro

ute

r

2la

ne

s ×

10

po

rts

TofuD

Copyright 2019 FUJITSU LIMITED23

Page 19: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

TofuD性能:MPI_Bcast

3次元双方向パイプラインアルゴリズムの特徴

最大パイプライン段数を(X+Y+Z-3)段とすることで固定オーバーヘッドを削減

6方向(±X, ±Y,±Z)方向に同時送信することでx6の性能を実現

Copyright 2019 FUJITSU LIMITED

0

10,000

20,000

30,000

40,000

1.E+00 1.E+02 1.E+04 1.E+06 1.E+08

バンド幅

(MB

/S)

転送サイズ(Bytes)

384ノードMPI_Bcast性能

6TNIを使った新アルゴリズム

3TNIを使った旧アルゴリズム

「京」

Bcastの他Allgatherでも6方向同時通信を利用27

Page 20: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

TofuD性能: MPI_Allreduce

ハードリダクション(TBI)の要素数

MPI

要素数に応じ最適アルゴリズムを選択

• TBI, Recursive doubling, Reduce & bcast

TBI複数回呼び出し(京では1回)

Copyright 2019 FUJITSU LIMITED

Vector lengthM

PI_A

llred

uce

(us)

京~ 富岳 富岳での活用例

浮動小数点 1 3 Complex+Double

整数 1 6 3x MAXLOC

384ノードMPI_Allreduce実行時間

0

10

20

30

40

50

60

70

1 11 21 31 41 51 61

K: Double w/ TBI

INT32 w/o TBI

Double w/o TBI

INT32 w/ TBI

Double w/ TBI

富岳(TBIなし)

富岳(TBIあり)

京(TBIなし)

京(TBIあり)

28

Page 21: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

「京」から「富岳」への進化のポイントと状況

富岳の概要

A64FXの性能

エコシステム

TofuD

高並列・効率への取り組み

Copyright 2019 FUJITSU LIMITED29

Page 22: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

高並列・効率への取り組み

OSジッタ低減

ノイズ削減

• LinuxのTicklessモードを採用し、不要なデーモンやサービスを停止

アシスタントコアの活用

• OS動作(割込/デーモン等)をアシスタントコアにオフロード

OSジッタ測定値

Copyright 2019 FUJITSU LIMITED

平均ノイズ率 最大ノイズ長

「富岳」 7.1E-07 37 μs

「京」 6.6E-5 85 μs

x86 3.7E-03 873 μs

30

Page 23: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

まとめ

「京」コンピュータとその後

「京」から「富岳」への進化のポイントと状況

富岳の概要

A64FXの性能

エコシステム

TofuD

高並列・効率への取り組み

今後の取り組み

Copyright 2019 FUJITSU LIMITED

http://www.riken.jp/pr/topics/2019/20190827_1/

32

Page 24: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

富士通のスーパーコンピュータ

スーパーコンピュータを40年以上にわたり提供

アプリケーション実行の高速化をサポート

性能向上に伴い解法、応用も拡大

量子化学計算の近似・精度向上

深層学習の実用化

Japan’s First Vector (Array) Supercomputer

(1977)

No.1 in Top500(Nov. 1993)

Gordon Bell Prize (1994, 95, 96)

F230-75APU

VPP5000

VPP300/700

AP3000

VPP500

AP1000

VP Series

NWT*Developed with NAL

World’s FastestVector Processor (1999)

PRIMEPOWERHPC2500

World’s Most Scalable

Supercomputer (2003)

Japan’s Largest Cluster in Top500

(July 2004)

Most Efficient Performancein Top500 (Nov. 2008)

PRIMERGY BX900

Cluster node

HX600Cluster node

PRIMEQUEST

FX1

SPARCEnterprise

PRIMERGY RX200Cluster node

*NWT: Numerical Wind Tunnel

ⒸJAXA

FX10

FX100

No.1 in Top500(June and Nov., 2011)

PRIMERGY CX400

K computer

Fugaku

Copyright 2019 FUJITSU LIMITED33

Page 25: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

新しい計算パラダイムとアーキテクチャ

深層学習

“GPGPU speedup”は達成

しかし、アクセラレータとして

ドメイン指向計算もノイマン計算機と協調が重要

システムアーキテクチャとそのインターフェースがキー

“Quantum speedup”の追求でも同様のシナリオ

Com

pu

tin

g P

ow

er

New Computing Paradigm

Traditional Computing

Quantum computerNeural computer…

Domain-SpecificComputing

AI:

Search:

FUJITSU DLUIBM TrueNorthGoogle TPUMS CatapultBaidu …

Year2020 20302010

New Computing ParadigmData Transformation

Getting through the Data Explosion & Solving Issues

Copyright 2019 FUJITSU LIMITED34

Page 26: スーパーコンピュータ「富岳」の開発...「京」コンピュータとその後 「京」 10PFLOPSの実用・汎用スパコンを実現 システムソフト「TCS」の開発・提供により、

Copyright 2019 FUJITSU LIMITED35