1 - System LSI Lab

Download Report

Transcript 1 - System LSI Lab

3次元積層次世代プロセッサ
アーキテクチャへの展開
九州大学 大学院システム情報科学研究院
井上こうじ
([email protected])
1
なぜ3次元積層なのか?
2
半導体も2Dから3Dの世界へ!
• 複数のダイを同一パッケージに集積
• ダイ間を貫通ビア(Through Silicon Via:TSV)で接続
Wire-bonding (WB) 3D stacking
(System-in-Package or SiP)
TSV
Multi-Level 3D IC
Sensor
Package-on-Package (POP) 3D stacking
Source: Yuan Zie, “3D IC Design/Architecture,” Coolchips Special Session, 2009
RF
Analog
DRAM
Processor
IO
3
3次元積層の「うれしさ」
~グローバル配線長の短縮~
• 水平方向の配線を垂直方向へ変更すること
で配線長を短縮(mm→um)
• 負荷容量の削減による低レイテンシ化(高速
な信号伝達)と低消費エネルギー化
2次元実装IC
4
3次元積層の「うれしさ」
~オンチップ・バンド幅の拡大~
• 「辺と辺の接続」から「面と面の接続」へ
– Intel: 80個のプロセッサ・コア+SRAM間1)
• 1TB/Sのバンド幅で接続
– HRI: プロセッサ+カスタム回路+SDRAM2)
• プロセッサーカスタム回路間:1,056個のTSVで接続
• カスタム回路ーSRAM間:278個のTSVで接続
1)インテル:http://www.intel.com/pressroom/archive/releases/20060926corp_b.htm
2)日経マイクロデバイス2008年2月
5
3次元積層の「うれしさ」
~微細化に頼らない高集積化~
Performance Improvement
(times)
100
100
古い世代のプロセス
技術を用いることでコ
スト削減も可能に!!
Fine Process
10
10
Power Consumption
11
0.1
0.1
Stacking
180
130
90
65
45 32
Process node (nm)
22
N.Miyakawa,”3D Stacking Technology for Improvement of System Performance,”
International Trade Partners Conference, Nov.2008
15
12
6
3次元化は常に得策なのか?
~3つの素朴な疑問~
7
素朴な疑問その1
~大容量キャッシュの積層は本当に得策か?~
L1キャッシュの
アクセス時間[cc]
L2キャッシュの L2キャッシュ
主記憶の
アクセス時間[cc] ミスの割合 アクセス時間[cc]
L1キャッシュ
ミスの割合
AMAT  HT L1  MRL1 ( HT L2  MRL2  MMAT)
DRAMスタック
法の効果
(?)
性能向上率
3.0
2.5
Ocean
2.0
32MB DRAM
Cache
性能向上
1.5
性能低下
1.0
ベースプロセッサ(2次元実装)
DRAMスタック法(3次元実装)
0.5
0
100
Cholesky
80
60
40
20
150
0 200
L2キャッシュミス率の削減率
[points]
100
50
0
L2キャッシュ
アクセス時間の増加
8
[cc]
大容量化によるL2ミス削減効果は
プログラムによって異なる!
60
50
L2 Miss Rates [%]
Sensitive!
LU
Insensitive!
FFT
40
Sensitive!
30
20
Ocean
Sensitive!
Cholesky
Insensitive!
Insensitive!
FMM
10
0
Barnes
Raytrace
2MB
WaterSpatial
4MB
8MB
16MB
32MB
64MB
128MB
L2 Size
9
素朴な疑問その2
~主記憶の積層は本当に得策か?~
• 3次元積層LSIの問題点はチップ温度上昇
– チップ温度は消費電力に依存
– 消費電力はプロセッサの動作周波数に依存
• 「プロセッサの最大動作周波数はチップ温度
制約により決定」と仮定すると・・・
DRAM
Main Memory
Tem. : ↘
Freq. : ↗
Mem. Stall: ↗
Tem. : ↗
Freq. : ↘
Mem. Stall: ↘
10
アプリ特性によっては3D化により性能
が低下する場合がある!
mcf(Highly Memory Intensive)
動作周波数
•2D: 約2.9GHz
•3D: 約2.5GHz
平均命令実行時間
•2D: 約2.5
•3D: 約0.6(Better)
twolf(Less Memory Intensive)
動作周波数
•2D: 約2.8GHz
•3D: 約2.4GHz
平均命令実行時間
•2D: 約0.35 (Better)
•3D: 約0.41
G. L. Loi, B. Agrawal, N. Srivastava, S. Lin, T. Sherwood, and K. Banerjee, “A Thermally-Aware
Performance Analysis of Vertically Integrated (3-D) Processor-Memory Hierarchy,” DAC’06.
11
素朴な疑問その3
~主記憶を積層してL2$は必要か?~
• L2(ラストレベル)キャッシュ導入の狙いは主記憶
アクセス回数の削減
– 主記憶のオンチップ化により効果減(!?)
– 現在のプロセッサでは「L2面積≈全コア面積」
• L2面積を用いてコア数を増加可能と仮定すると・・
Stacked
Main Memory
Stacked
Main Memory
TLP : ↘
TLP : ↗
Freq. :→
Freq. :→
Mem. Acc.: ↘ Mem. Acc.: ↗
12
N=8(最大コア数が8)の場合
ベース:L2未搭載8コア(1.0) コア数削減によるL2搭載
K8=0.5(全実行時間の50%がメモリストール)
2
性能低下
1.5
1.5
1.0 1
0.50.5
0.0 071
0.4 0.2
26 35 4
0.6 0.4
4 53 2
0.8 0.6
6 71 0 1 0.8
8 1.0
0.2
0.00
1.0 1
0.50.5
1 62 5 4
0.4
3 4 3 2
0.6 0.4
0.6
0.8
5 6 1 0 1 0.8
7 8 1.0
1.0 1
0.50.5
0.0 07
相対実行時間
相対実行時間
1.51.5
0.0 07
1.51.5
0
0.2 0.0
1 62 5 4
0.4 0.2
3 4 3 2
0.6 0.4
0.6
5 6 1 0 1 0.8
7 8 1.0 0.8
2.0 2
2.0 2
F=0.95
2.0 2
相対実行時間
F=0.7
相対実行時間
2.0
K8=0.1(全実行時間の10%がメモリストール)
0
0.2 0.0
0.2
1.51.5
1.0 1
0.50.5
0.0 07
0
0.2 0.0
1 62 5 4
0.4 0.2
3 4 3 2
0.6 0.4
0.6
0.8
5 6 1 0 1 0.8
7 8 1.0
13
アプリ特性に適応可能な3次元積層
プロセッサの実現に向けて
14
大容量化によるL2ミス削減効果は
プログラム間によって異なる!
60
50
L2 Miss Rates [%]
Sensitive!
LU
Insensitive!
FFT
40
Sensitive!
30
20
Ocean
Sensitive!
Cholesky
Insensitive!
Insensitive!
FMM
10
0
Barnes
Raytrace
2MB
WaterSpatial
4MB
8MB
16MB
32MB
64MB
128MB
L2 Size
15
大容量化によるL2ミス削減効果は
プログラム内によって異なる!
The lower, the better
2MB(12cc)
32MB(60cc)
Ocean
350
250
200
150
100
50
0
1
4
7
10
13
16
19
22
25
28
31
34
37
40
43
46
49
52
55
58
61
64
67
70
73
76
79
82
85
88
91
94
97
100
L1 Miss Penalty [cc]
300
Time Interval (100K L2 Accesses / Interval)
16
九大での取組み事例その1
~3次元積層DRAMを適応的に活用する!~
• ワーキングセットに基づき3次元積層したDRAM
キャッシュを適応的に活用
– 「キャッシュ動作モード」と「タグ動作モード」を選択可能
なキャッシュ・アーキテクチャ
– 実行プログラムが要求するメモリ容量に応じて動作
モードを選択(速度と容量のトレードオフ)
• 高性能化と低消費電力化を同時に達成可能!
– SPEC2000ベンチマーク平均で約50%メモリ性能向上!
32MB DRAM
Cache
32MB L2キャッシュ
Power Off
4MB L2キャッシュ(DRAMは未使用)
17
メモリ参照の空間局所性の度合いは
時々刻々と変化する!
16KB Direct-Mapped Cache w/ 128B Lines
Cache
128Bブロックのロード
Cache
プロセッサが2つの
32Bブロックを参照
Cache
128Bブロックの追出し
Ref. Sublines == 2
必ずしも,メモリバンド幅の最大活用が
性能向上を達成する訳ではない!!
• アプリケーションが有する「メモリ参照の空間局所性
の度合い」に大きく依存
14.0
12.0
10.0
8.0
6.0
4.0
2.0
0.0
104.hydro2d
072.sc
052.alvinn
16 32 64 128 256
Line Size [byte]
Cache Miss Rate (%)
Cache Miss Rate (%)
– 局所性高→プリフェッチ効果によるヒット率改善
– 局所性低→頻繁なデータの追出しによりヒット率が低下
14.0 099.go
12.0 134.perl
10.0
8.0
6.0
4.0
2.0
0.0
16 32 64 128 256
Line Size [byte]
九大での取組み事例その2
~高メモリバンド幅を適応的に活用する!~
• メモリ参照の局所性に基づきオンチップ・メモリバ
ンド幅を適応的に活用
– SRAMキャッシュとDRAMキャッシュ間のデータ転送量
(キャッシュブロック・サイズ)を動的に最適化
• 高性能化と低消費電力化を同時に達成可能!
– 約20%のメモリレイテンシ削減+約70%の消費エネル
ギー削減!
SRAM Cache
DRAM
高
高
SRAM Cache
必要となるメモリバンド幅
消費するエネルギー
SRAM Cache
低
低
20
次世代3次元積層プロセッサを目指した
様々な取組みを実施中!
•
•
•
•
3次元積層アクセラレータ・アーキテクチャ
3次元積層メニーコア・アーキテクチャ
3次元積層を前提としたオンチップ・インターコネクト
などなど
動的再構成可能
キュービック・アクセラレータ
Stacked
Main Memory
プロセッサ・コア
(マルチコア)
Many-Core
Accelerator
TSV
(Through Silicon via)
大容量メモリ
NEDO若手グラント(2009.1~2012.12)
21