エクサマシンアーキテクチャとその要素技術としての階層メモリ
東京大学 情報理工学系研究科 石井 康雄

1

2011/10/08

本日の発表内容
 エクサマシンのアーキテクチャに関してエクサマシン検討の前提条件
 計算機イメージ・ノード構成のバリエーション
 エクサマシンの問題点と解決策
 研究報告(階層メモリの最適化)

キャッシュ置換: メモリ帯域の節約
 プリフェッチ: メモリレイテンシの隠蔽


 まとめ

2

2011/10/08

エクサマシンアーキテクチャ検討
構成と問題点3

2011/10/08

エクサマシンの検討の前提
 稼働時期: 2018年ごろ

 演算性能: Linpackで1EFLOPS「京」の100倍の演算性能
 Linpackは本質ではないが定量的議論の土台として活用
 電力: 20MW～30MW
 総床面積: 50m x 50m


ラックで1000本分のエリア

 価格: ～500億円

4

2011/10/08

2018年のPCクラスタ性能予想
電力20MWでの最大構成例
 プロセッサ性能 システム性能
演算: 3.0 TFLOPS メモリ: 96 GB, 300 GB/s

 B/F = 0.1



ネットワーク: 25 GB/s
 B/F = 0.01

電力: 200W
 価格: 25万円
プロセッサ+メモリ / ノード(1プロセッサ, 150W)

5

8プロセッサ+ネットワーク / カード(8プロセッサ, 1.5KW)

演算: 300 PFLOPS (10万CPU) メモリ: 9.6 PB, 30.0 PB/s
 Bisection BW: 5.0 PB/s
 ラック数: 400
 電力: 20MW (1EFで80MW)
 価格: 250億円 (1EFで1000億円)


8カード/シャーシ, 4シャーシ/ラック(256プロセッサ, 50KW)

400ラック / システム
(10万プロセッサ, 20MW)

2011/10/08

検討中のエクサマシン(一例)
システムパラメータを極端にふった例
 プロセッサ性能 システム性能
演算: 1.0 TFLOPS
 メモリ: 8 GB, 200 GB/s
 B/F = 0.2



ネットワーク: 10 GB/s
 B/F = 0.01

電力: 20W 価格: 5万円
プロセッサ+3Dメモリ(1プロセッサ, 20W)

6

32プロセッサ / シャーシ
(64プロセッサ, 1.3KW)

演算:1000 PFlops (100万CPU) メモリ: 8 PB, 200.0 PB/s
 Bisection BW: 0.3 PB/s
 ラック数: 512
 電力: 20MW
 価格: 600億円


8カード / シャーシ, 4シャーシ/ラック(2048 プロセッサ, 40KW)

512ラック / システム
(100万プロセッサ, 20MW)

2011/10/08

システム構成の検討
 システム階層別に検討

コア・キャッシュの構成(プロセッサ構成)
 プロセッサとメモリの接続(ノード構成)
 ノード間インターコネクト構成(システム構成)
キャッシュ
メモリ

メモリ

プロセッサ構成（コア・キャッシュなど）

3ノード構成（プロセッサ・メモリ接続）

・・・

ノードノードノード

プロセッサノード

メモリ
コア

ネットワークシステム構成（ノード間インターコネクト）

注）2011年現在の情報から、ロードマップ情報や外挿を元に予想をしています。

2011/10/08

想定されるエクサシマシン構成
プロセッサ(チップ)構成
Latency Optimized Core

Throughput Optimized Core

CPUチップ構成

シングルスレッド性能に特化

電力性能に特化

周波数高・深いパイプライン

周波数低・浅いパイプライン

Latency CoreとThroughput Coreの融合によるヘテロ構成

アウトオブオーダー実行

インオーダー実行

大規模キャッシュ・ローカルメモリ

キャッシュ・プリフェッチ

マルチスレッドサポート

8FMA@3GHz(48GFlops)

3GHz / 14 stages
8命令同時実行

制
御Reg.

L1(32KB)

16FMA@1GHz(32GFlops)

1GHz / 8 stages
8スレッド実行

固有L2キャッシュ

Latency core 8個
Throughput 448個
L2Reg.

Reg.

L1(32KB)

コア数

共有L2キャッシュ
そのままL3
LatencyコアのLLCとして活用される

演算性能

周波数

L2L2L2

L2

L2

L2

L2

キャッシュ容量

Latency Coreのみの構成

64

3TFLOPS

3GHz

共有 128MB

Throughput Coreのみで構成

512

16TFLOPS1GHz

共有 128MB

16L+256T

10TFLOPS

3GHz/1GHz

共有 64MB

8128GFLOPS

2GHz

共有 6MB

ヘテロ型(1/2をLatency Coreで設計)(参考) 「京」コンピュータ
4

2011/10/08

想定されるエクサマシン構成
ノード（プロセッサ・メモリ接続）構成
メモリ・プロセッサ一体型
1ノード20W
システムで100万ノード

複数プロセッサ・複数メモリ型
1ノード2000KWシステムで1万ノード

1プロセッサ・複数メモリ型
1ノード200W
システムで10万ノード
DRAM
スタック

DRAM
スタック部分
8GB・200GB/sec

・・・

メモリ
コントローラプロセッサ
10TFLOPS

・・・

・・・

プロセッサ
10TFLOPS

DRAM
スタック

メモリ
コントローラプロセッサ(1TF)

プロセッサ
10TFLOPS

演算性能

5

メモリ容量

メモリ帯域

B/F比

プロセッサメモリ・一体型

1TFLOPS

8GB

200GB/s

0.2

1プロセッサ・複数メモリ型

10TFLOPS

128GB

1000GB/s

0.1

複数プロセッサ・複数メモリ型

80TFLOPS

1024GB

8000GB/s

0.1(参考) 「京」コンピュータ

128GFLOPS

16GB

64GB/s0.5注）3Dスタッキングを利用しない場合にはB/F=~0.03程度まで低下

2011/10/08想定されるエクサマシン構成
ノード間インターコネクト
High-radix NW (Dragonflyの例)

Low-radix NW (4Dトーラスの例)

レイテンシ

レイテンシ

隣接ノード: 2hop, 200ns/dir ・ 最長: 5hop,1000ns/dir

隣接ノード: 1hop, 50ns/dir ・ 最長 ~50hop, ~3000ns/dir

バンド幅

バンド幅

ノードからのinjection帯域: 25～50 GB/s
バイセクションバンド幅: 2.5～5.0 PB/s

ノードからのinjection帯域: 50～100 GB/s
バイセクションバンド幅: 0.3 ～ 0.5 PB/s
Cabinet #0・・・

PP

P・・・

PP・・・

PP
SW

SW

SW・・・

Group #0

#2

#3#255

Cabinet #32

I/O

複数cabinetでgroupを形成、別にI/O用のラックを接続

6・・・

P ・メッシュでの局所通信が得意
・・・

・・・

#1

I/O

SW

・FFTなどの大域処理が得意
P
P P
P

PP

P

Cabinet #992

#33

#63

#993

I/O #1

・・・

#1023

・・・

SW

P

・・・

・・・

Node
SW

・・・

P

Node
SW

I/O #0・・・

Node
SW

#31

・・・

P・・・

P

#1

I/O #31

2011/10/08

エクサマシンでの挑戦 共通する特徴

1000万以上の計算コア
 狭いメモリ帯域・ネットワーク帯域
 プロセッサ・システムの複雑化（ヘテロ化）
 高性能達成のための障壁

超大規模並列計算
 複雑化するメモリ階層
 0.1 B/F前後の狭いメモリ帯域を支援 (京:0.5、ES2:2.5、ES1:4.0)11

適切な計算資源の選択

2011/10/08

エクサでの問題1/3: 超大規模並列
 エクサでは京以上の超並列計算機へ

1000万以上の計算コア

 1000並列はOKだが1000万だとダメという技術は多い

Send/Receive通信 ⇛ Put/Get通信
 集合演算・同期処理 ⇛ ネットワーク側の集合演算サポートSend/Recv

送信

ノード

NI

主記憶受信と送信の同期が必要

12

Put/Get

受信NIノード

主記憶

送信

受信処理不要

ノード

NINI

ノード

主記憶

送信と受信の同期が不要（図はputの例）

主記憶注）put/getはMPI 2.0でサポートされているが、現状以上にHW/SWでAccelerateする必要がある。

2011/10/08

エクサでの問題2/3: 複雑化するメモリ階層
 エクサシステムではメモリ帯域が相対的に低下


B/F=～0.1 (京の1/5)

 小容量・高速なメモリ(階層化)による問題の緩和

メモリ帯域の節約
 メモリレイテンシの削減

演算器 B/F=4.0

L132KB

B/F=2.0

L2256KB

共有L3
B/F=0.6

32MB～
128MB

B/F=0.1

主記憶
128GB

3サイクル
8サイクル
32サイクル200サイクル13

2011/10/08

エクサでの問題3/3: 適切な計算資源の選択
 演算効率を高めるためにSpecializeが進行
Latency Optimized Core・Throughput Optimized Core 適切な資源を選択する必要がある

粒度が違うが昔からあった考え方 ベクトルプロセッサのスカラ部分とベクトル部分
 Cell B.EのSPEとPPE

 京速概念設計のスカラー部・ベクトル部

 性質の異なる計算機をどう組み合わせるか？

ベクトル計算機/SIMD拡張: 特殊な命令発行
 GPU/MIC/Cell B.E.: 計算の一部(task)をコアに対して発行
 グリッド: 計算全体(job)を計算機の一部分に対して発行
14

2011/10/08

エクサマシン検討のまとめ
 エクサマシンの構成を検討

HWトレンドから稼働時期の計算性能を予測・検討
 プロセッサ構成・メモリ構成・ネットワーク構成
 エクサシステムでのボトルネックポイントを抽出

1000万コアの超大規模並列計算
 B/F=0.1を支援するメモリ階層
 ヘテロジニアスな計算環境の効果的利用 エクサシステムの検討ではシステムの全体像と問題点を吟味してアーキテクチャを決定することが大事

15

2011/10/08

エクサに向けたアーキテクチャ研究
階層メモリの最適化

16

2011/10/08

階層メモリの実現と複雑化
 階層メモリはエクサに向けた重要な要素技術の一つ


実現方法: キャッシュメモリ、ローカルメモリ

1990年

2000年
PP

PRF

RF

RF

RF

L1 $

L1 $

L1 $

L1 $

L2 $共有キャッシュ

メモリ(30 clock)

メモリ(100 clock)

メモリ(200 clock)P

2010以降時代の進歩に合わせてメモリ階層の技術も進歩
 キャッシュ) キャッシュ置換、プリフェッチ
17・・・・・・

P
RF

L1 $

私の研究分野2011/10/08

キャッシュ置換によるデータ再利用 キャッシュの利用方法の変化
キャッシュメモリの大規模化
コア
0

コア
1・・・

マルチコアによる共有化
コア
N-1

キャッシュ

コア
0

コア
118

コア
N-1

キャッシュ

(A)頻繁に利用 (B)稀に利用 (C)利用されない コア0のデータ
従来は(A)しか載らなかったが、うまくやれば(B)が載る

・・・

コア1のデータ

コア0がキャッシュを汚すせいで、コア1の使うデータが追い出される
2011/10/08

Map-based Adaptive Insertion Policy [Ishii+ 2010]
 特徴

キャッシュから追い出した情報を記憶して、そこに再びヒットした場合に追い出されないようにする 効果

スループットが9%向上
 メモリトラフィックを8%削減

LRUからの性能向上
120%性能ミス回数
トラフィック110%
9%性能向上100%

8%トラフィック
削減

90%

 メモリ帯域の節約によるメモ

リウォール問題の緩和
80%
TADIP
19

MAIP
2011/10/08

プリフェッチによるレイテンシ隠ぺい
 メモリレイテンシはプロセッサの高速化とともに乖離

メモリアクセスレイテンシは50ns～100ns
 プロセッサ時間(3GHz)で150サイクル～300サイクル


メモリアクセス待ちによる効率の低下
コア状態

計算

メモリバス

計算
データ転送

計算
データ転送

データ転送

注）メモリ帯域が不足するアプリでもメモリバスの利用率が100%ではない

プリフェッチによる改善
コア状態
メモリバス

計算

計算

計算

計算

計算

プリフェッチ プリフェッチ プリフェッチ プリフェッチ プリフェッチ
注）メモリ帯域を100%使う状況になり理論的な性能限界を達成できる20

2011/10/08

Access Map Pattern Matching Prefetch [Ishii+ 2009]
 特徴


メモリアクセス履歴を工夫して持ち予測精度を向上

プリフェッチなしからの改善
250%

性能

ミス回数

200%
70%性能向上 実験結果性能が70%向上
 キャッシュミスを80%削減


 効果


メモリレイテンシに起因する性能低下を除去

150%
80%キャッシュミスを削減

100%
50%
0%
ストライド(PC/DC)

21

提案手法(AMPM)
2011/10/08

要素技術研究の成果
 こうした要素技術は今なお研究され続けている

JILP Workshop on Computer Architecture Competitions

 過去のテーマ

キャッシュ置換 (2位)
 プリフェッチ (1位)
 分岐予測 (2位)

 過去優勝者

Andre Seznec (Alpha chief architect) Gao Honliang (Intel x86 architect)22

2011/10/08

まとめ エクサスケールシステムの検討

HWトレンドから2018年のシステムを予測 システム構成のバリエーションを吟味、特徴を抽出

 エクサでの高性能達成の障壁と対策

1000万コアでの超大規模並列計算
 B/F比=0.1の主記憶をサポートするメモリ階層
 適切な計算資源を選択することで電力効率を最適化

 要素技術としての階層化メモリの研究

23キャッシュ置換・プリフェッチ

2011/10/08

ありがとうございました24

2011/10/08