3次元積層 - System LSI Lab

Download Report

Transcript 3次元積層 - System LSI Lab

3次元積層プロセッサ
アーキテクチャの研究動向
九州大学 井上こうじ
([email protected])
1
世の中いたる所で3D・・・
なぜ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次元積層IC(ISSCC’09より)
•
•
•
•
•
イメージセンサ
SoC用SRAM
大容量DRAM
マルチコア+SRAM(w/ 無線TSV)
など
Image Sensor(MIT)
SRAM for SoCs(NEC)
8Gb 3D DRAM(Samsung)
SRAM+Multicore(Keio Univ.)
スケールは無関係
U. Kang et al., “8Gb DDR3 DRAM Using Through-Silicon-Via Technology,” ISSCC’09.
H. Saito et al., “A Chip-Stacked Memory for On-Chip SRAM-Rich SoCs and Processors, “ ISSCC’09.
V. Suntharalingam et al., “A 4-Side Tileable Back Illuminated 3D-Integrated Mpixel CMOS Image Sensor,” ISSCC’09.
K. Niitsu et al., “An Inductive-Coupling Link for 3D Integration of a 90nm CMOS Processor and a 65nm CMOS SRAM,” ISSCC’09.
4
メニーコア+大容量メモリ
~Intel (80 coreテストチップ)~
Memory Cores/Caches
Mem.-on-core
Mem.-on-cache
http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=04382571
http://www.legitreviews.com/article/460/1/
5
3次元積層の「うれしさ」
~配線長削減による高性能/低消費電力化~
• 送受信モジュール間の物理的な距離を短縮
– 「長い配線の負荷容量」を「TSV負荷容量」に置換え
– 得に,グローバル配線において効果大(mm→um)
• フットプリント面積を削減
– クロック信号や電源ラインなどの配線長を削減
2次元実装IC
6
3次元積層の「うれしさ」
~チップ集積による高性能/低消費電力化~
• 面と面の接続によるバンド幅拡大
– Intel: 80個のプロセッサ・コア+SRAM間1)
• 1TB/Sのバンド幅で接続
– HRI: プロセッサ+カスタム回路+SDRAM2)
• プロセッサーカスタム回路間:1,056個のTSVで接続
• カスタム回路ーSRAM間:278個のTSVで接続
• 伝送路の負荷容量削減による低レイテンシ/低消費電力化
– I/Oピンや基板配線の駆動が不要に!
1)インテル:http://www.intel.com/pressroom/archive/releases/20060926corp_b.htm
2)日経マイクロデバイス2008年2月
7
3次元積層の「うれしさ」
~異種ダイの積層による高機能化~
• 製造プロセスの異なるダイを低コストで積層
– 従来のSiP
– TSVを用いることでダイ間を高バンド幅で接続可能
• 従来にない新しい応用の可能性
• SRAM/DRAM以外の選択肢(例:不揮発性メモリの積層
など)
8
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
9
3次元積層マイクロプロセッサ・アー
キテクチャ
10
3次元積層デバイスへの期待
~アーキテクチャの観点から~
• プロセッサコアやメモリそのものの積層
• マルチコア+マルチコア
– いわゆる,メニーコア化
• マルチコア(メニーコア)+メモリ
– 大容量メモリの積層による「メモリーウォール問題」の
解決(SRAM,DRAMなど)
– 新デバイス(MRAMなど)の積層による高性能化/低
消費電力化/不揮発性の活用
• マルチコア+アクセラレータ
– 用途の絞り込みによる加速実行の実現(専用ASIC,
再構成可能ハードウェア,ASIP,演算器アレイなど)
– 実行効率を向上
11
3次元積層化のポイントは?
~「配線長短縮」と「オンチップ化」~
Design
Reuse
3D
Communicati
on
Subsystem
•Multi-Processor
•Processor+Large-Memory
•Processor+Accelerator,
•Etc.
High
Chip
Interconnect
•Core-on-Core
•Cache-on-Core
•Main-Mem.-on-Core
•Accelerator-on-Core
Module
•CPU Core
•Cache
•Main Memory
•Etc.
Mid.
Global/Local
wires
•ALU-on-ALU
•Cache Bank-on-Bank
•RF-on-ALU
Functional Unit Block (FUB)
•Memory Array
•ALU, RF, Issue Queue
•Etc.
Low
Global/Local
wires
• Mem. Array Splitting
• ALU Splitting
• RF Splitting
• Issue Queue Splitting
Global/Local
wires
•Gate Splitting
Divide & Stack
Gate
almost no
reuse
Example
Wire
Length
Reduction
On-Chip
Integration
√
√
√
√
√
12
3次元積層化のポイントは?
~「配線長短縮」と「オンチップ化」~
Design
Reuse
3D
Communicati
on
Subsystem
•Multi-Processor
•Processor+Large-Memory
•Processor+Accelerator,
•Etc.
High
Chip
Interconnect
•Core-on-Core
•Cache-on-Core
•Main-Mem.-on-Core
•Accelerator-on-Core
Module
•CPU Core
•Cache
•Main Memory
•Etc.
Mid.
Global/Local
wires
•ALU-on-ALU
•Cache Bank-on-Bank
•RF-on-ALU
Functional Unit Block (FUB)
•Memory Array
•ALU, RF, Issue Queue
•Etc.
Low
Global/Local
wires
• Mem. Array Splitting
• ALU Splitting
• RF Splitting
• Issue Queue Splitting
Global/Local
wires
•Gate Splitting
Divide & Stack
Gate
almost no
reuse
Example
Wire
Length
Reduction
On-Chip
Integration
√
√
√
√
√
13
FUBレベルの3次元積層
• その狙いは?
– フットプリント面積の削減
– Module/FUB内部の配線長短縮による低レイテン
シ/低消費電力化
フットプリント面積の削減
CPU
Core
L3
Cache
2次元実装
L3
CPU
Cache
Core
3次元積層
(Cache-on-Core)
L3アクセスの低レイテンシ/低消費電力
CPU
CPU
Core
Core
L3
L3
Cache
Cache
3次元積層
(Bank-on-Bank)
14
キャッシュ・メモリを分割&積層する!
~ベースモデル:2次元キャッシュ~
Mux&SA
Address
Bank2
WL Dec&Dr
Bank1
Mux&SA
Bank3
Mux&SA
Pre Dec.
Bank5
Mux&SA
Bank6
Mux&SA
WL Dec&Dr
Bank4
Mux&SA
WL Dec&Dr
Mux&SA
WL Dec&Dr
WL Dec&Dr
Output
Delay (ns)
Mux&SA
1MB 4-way Set-Associative Cache
WL Dec&Dr
Bank0
WL Dec&Dr
WL Dec&Dr
Bit Line Word Line
Bank7
Y. Tsai, F. Wang, Y. Xie, N. Vijaykrishnan, and M. J. Irwin, “Design Space Exploration for 3-D Cache,”
IEEE Trans. On VLSI Systems, vol.16, No.4, Apr. 2008.
15
キャッシュ・メモリを分割&積層する!
~バンク同士を積層する~
Bank1
Bank3
Mux&SA
Mux&SA
Mux&SA
Mux&SA
Pre Dec.
Mux&SA
Mux&SA
WL Dec&Dr
WL Dec&Dr
Output
Bank4
Bank6
Mux&SA
Mux&SA
WL Dec&Dr
WL Dec&Dr
Address
Delay (ns)
Bank0
Bank2
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
1MB 4-way Set-Associative Cache
Bit Line Word Line
?
後述するDWLと同程度
の効果と予想される
Bank5
Bank7
K. Ruttaswamy and G. H. Loh, “Implementing Caches in a 3D Technology for High Performance
Processors,” ICCD’05
16
キャッシュ・メモリを分割&積層する!
~メモリアレイをWL方向に分割して積層する~
1MB 4-way Set-Associative Cache
WL Dec&Dr
WL Dec&Dr
2D-BASE
3D-DWL
Delay (ns)
Address
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
Bit Line Word Line
Pre Dec.
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
WL Dec&Dr
Output
アドレス/データ線
の短縮効果大!
Y. Tsai, F. Wang, Y. Xie, N. Vijaykrishnan, and M. J. Irwin, “Design Space
Exploration for 3-D Cache,” IEEE Trans. On VLSI Systems, vol.16, No.4, Apr. 2008.
Nx×Ny
Nx:3次元方向へのWB分割数
Ny:3次元方向へのBL分割数17
キャッシュ・メモリを分割&積層する!
~メモリアレイをWL/BL方向に分割して積層する~
1MB 4-way Set-Associative Cache
2D-BASE
3D-DBL (BL分割)
3D-DWL (2 wafers)
(2 wafers)
3D-DWL
(4 wafers)
3D-DBL
(4 wafers)
3D-DWL
(8 wafers)
Y. Tsai, F. Wang, Y. Xie, N. Vijaykrishnan, and M. J. Irwin, “Design Space
Exploration for 3-D Cache,” IEEE Trans. On VLSI Systems, vol.16, No.4, Apr. 2008.
アクセス消費エネルギー
も同時に削減
18
レジスタファイルを分割&積層する!
~3つのアプローチ~
• レジスタ分割:エントリを複数グループに分割し積層
– ビットラインの短縮効果
• ビット分割:上位/下位ビットに分割し積層(WL短縮)
– ワードラインの短縮効果
• ポート分離:ポート(WL+BL)を分離し積層(bit/面積縮小)
– ビット/ワードラインの短縮効果(ただし,TSV面積コスト大)
Reg. Partitioned
Bit Partitioned
K. Puttaswamy and G. H. Loh, “Implementing Register Files for High-Performance
Microprocessors in a Die-Stacked (3D) Technology,” ISVLSI’06.
Port Split
19
その他のモジュール/FUBを
分割&積層する!
Thermal Herding
Least significant
16 bits (15:0)
16 bits (31:16)
16 bits (47:32)
16 bits (63:48)
• Kiran Puttaswamy and Gabriel H. Loh, “Thermal Herding: Microarchitecture Techniques for Controlling
Hotspots in High-Performance 3D-Integrated Processors ,” HPCA 2007
• B. Vaidyanathan., W-L. Hung, F. Wang, Yuan Xie, N. Vijaykrishnan, M. J. Irwin.“Architecting Microprocessor
Components in 3D Design Space,” VLSID 2007
20
Case Study: Alpha 21364の場合
~どのように3次元積層するか?~
• 全てのFUBを3次元実装(と仮定)
– フットプリント面積が1/2に!
– 各FUBのレイテンシ短縮
From 2D to 3D
Xie, G. H. Loh, B. Black, and K. Bernstein, “Design Space Exploration for 3D Architectures,” ACM
Journal on Emerging Technologies in Computing Systems, Vol.2, Nu.2, April 2006.
21
Case Study: Alpha 21364の場合
~どの程度,性能(IPC×F)が向上するのか?~
FUBの3次元化により動作周波数
を向上(フットプリント面積削減)
2層
4層
3次元積層によりFUBの機
能拡大(エントリ数増等)
2層
4層
クラスタ単位
で積層
Xie, G. H. Loh, B. Black, and K. Bernstein, “Design Space Exploration for 3D Architectures,” ACM
Journal on Emerging Technologies in Computing Systems, Vol.2, Nu.2, April 2006.
22
Case Study: Pentium4の場合
~どのように3次元積層するか?~
• 複数FUBを積層しパイプラインステージを25%削減
– DL1とFU→load-to-use遅延を削減
– RFとFP→FP実行までの遅延を削減
• FUBを分割積層しレイテンシを削減
– UL2キャッシュ
• 性能は15%程度向上,かつ,消費電力を25%削減
1st Layer
Xie, G. H. Loh, B. Black, and K. Bernstein, “Design Space Exploration for 3D Architectures,” ACM
Journal on Emerging Technologies in Computing Systems, Vol.2, Nu.2, April 2006.
2nd Layer
23
【ディスカッション】
モジュール/FUBレベルの3D化は有効か?
• 分割積層による実装面積(立て床面積)の削減
– 大きな効果あり
• 配線長削減による速度向上と低消費電力化
– 多くの場合で効果は限定的(e.g. 10~20%の改善)
– 主記憶やキャッシュといった「規則的構造を有し,
かつ,潜在的にグローバル配線がクリティカルにな
る場合」は効果あり
• 「3Dによりもたらされるブレークスルー」はどこ
にあるのか?→On-Chip 3D Integration!
24
3次元積層化のポイントは?
~「配線長短縮」と「オンチップ化」~
Design
Reuse
3D
Communicati
on
Subsystem
•Multi-Processor
•Processor+Large-Memory
•Processor+Accelerator,
•Etc.
High
Chip
Interconnect
•Core-on-Core
•Cache-on-Core
•Main-Mem.-on-Core
•Accelerator-on-Core
Module
•CPU Core
•Cache
•Main Memory
•Etc.
Mid.
Global/Local
wires
•ALU-on-ALU
•Cache Bank-on-Bank
•RF-on-ALU
Functional Unit Block (FUB)
•Memory Array
•ALU, RF, Issue Queue
•Etc.
Low
Global/Local
wires
• Mem. Array Splitting
• ALU Splitting
• RF Splitting
• Issue Queue Splitting
Global/Local
wires
•Gate Splitting
Divide & Stack
Gate
almost no
reuse
Example
Wire
Length
Reduction
On-Chip
Integration
√
√
√
√
√
25
そもそも,マイクロプロセッサの進化は
「インテグレーション」による!
Intel 4004 (1971)
2,300個のトランジスタを
集積
Intel Pentium D (2005)
2個のプロセッサコアを
1つのパッケージに集積
Intel 486 (1989)
数値演算コプロセッサと
キャッシュメモリを集積
Intel Test Chip (2007)
80個のプロセッサ
コアを1つのダイに
集積
出展: http://ja.wikipedia.org/wiki/Intel_486, http://ascii24.com/news/i/tech/article/2005/05/27/655984-000.html,
26
http://www.intel.com/museum/online/hist_micro/hof/index.htm, http://techresearch.intel.com/articles/Tera-Scale/1421.htm
インテグレーションが成功するには?
• マイクロプロセッサのお仕事は?
– プログラム(ソフトウェア)を「効率よく」実行
• インテグレーションの効果を発揮するには?
– ソフトウェアの特性を考慮する事が重要
Program
メモリアドレス
成功例:キャッシュメモリの場合
Processor
Cache
時間
多くのプログラムは
「メモリ参照の時間/空間局所性」が有る!!
頻繁に参照されるメモリ領域を
キャッシュメモリに保存
27
アーキテクチャ屋としての「面白さ」はどこに?
3次元積層の光と影:「4つの素朴な疑問」
から見るアーキテクチャ・アプローチ
28
素朴な疑問その1
~大容量キャッシュ積層は本当に得策か?~
平均メモリアクセス時間:AMAT
L1キャッシュの
アクセス時間[cc]
L1キャッシュ
ミスの割合
L2キャッシュの L2キャッシュ
主記憶の
アクセス時間[cc] ミスの割合 アクセス時間[cc]
AMAT  HT L1  MRL1 ( HT L 2  MRL 2  MMAT)
DRAMスタック
法の効果
(?)
32MB DRAM
Cache
ベースプロセッサ(2次元実装)
DRAMスタック法(3次元実装)
29
アプリ特性によっては3Dにより性能が
低下する場合もある!
L1キャッシュの
アクセス時間[cc]
L1キャッシュ
ミスの割合
L2キャッシュの
アクセス時間[cc]
L2キャッシュ
ミスの割合
主記憶の
アクセス時間[cc]
AMAT  HT L1  MRL1 ( HT L 2  MRL 2  MMAT)
DRAMスタック
法の効果
(?)
性能向上率
L2 Miss Rates [%]
60
50
2.5
FFT
40
10
0
1.5
1.0
FMM
0.5
Cholesky
0
WaterSpatial
Barnes
2MB
Raytrace
4MB
Ocean
2.0
Ocean
30
20
3.0
LU
8MB 16MB 32MB 64MB 128MB
L2 Size
100
Cholesky
80
60
40
20
150
0 200
L2キャッシュミス率の削減率
[points]
100
50
0
L2キャッシュ
アクセス時間の増加30
[cc]
SRAM/DRAMハイブリッド・キャッシュ
~詳細は21日の発表をご覧下さい~
• 2つの動作モードをサポート
– 「高速かつ小容量」なSRAMキャッシュ・モード
– 「低速かつ大容量」なDRAMキャッシュ・モード
• 実行プログラムが要求するメモリ容量に応じて
動作モード選択
• 高性能化と低消費電力化を同時に達成可能!
32MB DRAM
Cache
32MB DRAM
Cache
橋口慎哉, 小野貴継, 井上弘士, 村上和彰, “3次元DRAM‐プロセッサ積層実装を対象としたオンチップ・メモリ・アーキテクチャの提案と評価,”情報処理学
会研究報告, Vol. 2009-ARC-183, No.16, 2009年4月.
31
素朴な疑問その2
~高メモリバンド幅の活用は本当に得策か?~
• マイクロプロセッサと主記憶の1チップ化
– キャッシュ-主記憶間のデータ転送能力が劇的に向上
– ミス・ペナルティの増加を伴う事無くラインサイズ(ブロッ
クサイズ)を拡大可能
平均メモリアクセス時間 = キャッシュヒット時間+ミス率×ミスペナルティ
ミスペナルティ = DRAMアクセス時間+ラインサイズ/バンド幅
DRAM
Main Memory
Mem. BW: →
Mem. BW: ↗
LineSize: ↗
LineSize: ↗
MissPenalty: ↗ MissPenalty: →
32
アプリ特性によっては3Dにより性能が
低下する場合もある!
• 高オンチップメモリバンド幅を積極活用するには?
– キャッシュ・ラインサイズ(ブロックサイズ)を拡大
• その効果は?
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]
16KB L1D$ Miss Rate
(%)
Better
16KB L1D$ 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]
33
可変ラインサイズ・キャッシュ
• プログラム特性に応じてDRAMーキャッシュ間
データ転送量(ラインサイズ)を自動調整
–メモリ参照の空間局所性の度合いを静的もしくは動的
にモニタリング
–ラインサイズを動的もしくは静的に決定
SRAM Cache
DRAM
高
高
SRAM Cache
必要となるメモリバンド幅
消費するエネルギー
SRAM Cache
低
低
動的可変ラインサイズ・キャッシュ:K. Inoue, K. Kai, and K. Murakami, ``Dynamically Variable Line-Size Cache Exploiting High On-Chip
Memory Bandwidth of Merged DRAM/Logic LSIs,‘‘ HPCA-5, 1999.
静的可変ラインサイズ・キャッシュ:T. Ono, K. Inoue, K. Murakami, and K. Yoshida, “Reducing On-Chip DRAM Energy via Data Transfer Size
Optimization,” IEICE Tran. on Electronics, 2009.
34
素朴な疑問その3
~温度は性能にどう影響するのか?~
• 3次元積層LSIの問題点はチップ温度上昇
– チップ温度は消費電力に依存
– 消費電力はプロセッサの動作周波数に依存
• 「プロセッサの最大動作周波数はチップ温度
制約により決定」と仮定すると・・・
DRAM
Main Memory
Tem. : ↘
Freq. : ↗
Mem. Stall: ↗
Tem. : ↗
Freq. : ↘
Mem. Stall: ↘
35
アプリ特性によっては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.
36
プロセッサ温度 (deg C)
Alpha21364マルチコアの積層では?
~詳細は21日の発表をご覧下さい~
100
制限温度 88.0 (deg C)
90
80
2Cores(2D)
4Cores
4Cores(Flip)
8Cores
8Cores(Flip)
16Cores
16Cores(Flip)
70
60
ヒートシンク側
第1層
50
第2層
第3層
第4層
NonFlip
ホットスポット
(温度)
40
FPU
(87.58 deg C)
FPU
(87.25 deg C)
FPU
(86.59 deg C)
FPU
(85.60 deg C)
Int. Exe. Unit
(72.04 deg C)
L1 Cacheの一部分
(71.76 deg C)
Int. Exe. Unit
(71.33 deg C)
L1 Cacheの一部分
(70.68 deg C)
Flip
30
ホットスポット
(温度)
0
0.24
0.48
プロセッサ・
コア数
2Cores
(2D)
動作周波数
(@ 制限温度)
2.0
0.72
0.96
1.2
1.44
1.68
プロセッサ動作周波数 (GHz)
1.92
2.16
2.4
4Cores(3D 2Layers)
8Cores(3D 4Layers)
16Cores(3D 8Layers)
Non-Flip
Non-Flip
Non-Flip
0.98
Flip
1.18
0.61
Flip
0.75
0.37
Flip
0.47
37
素朴な疑問その4
~MRAMの積層は本当に得策なのか?~
SRAM
DRAM
MRAM
Density
Low (4MB:44mm2)
High (16MB: 49mm2) High (16MB: 38mm2)
Speed
Fast (4.659ns)
Slow (5.845ns)
Read: Fast (4.693ns)
Write: Very Slow (12.272ns)
Dynamic Energy /
operation
Low (0.103nJ)
Medium (0.381nJ)
Read: Low (0.102nJ)
Write: High (2.126nJ)
Leakage Power
High (5.20W)
Low (0.52W)
Low (0.97W)
Non-Volatility
No
No
Yes
65nm
X. Dong, X. Wu, G. Sun, Y. Xie, H. Li, and Y. Chen, “Circuit and Microarchitecture Evaluation of
3D Stacking Magnetic RAM (MRAM) as a Universal Memory Replacement,” DAC’08.
38
シングルコア+MARM-L2キャッシュの
効果は?
• 性能(IPC)に関しては大幅な改善無し
– ワーキングセット・サイズが小さいため?
IPC
4MB 16MB 16MB
SRAM DRAM MRAM
Static + Dynamic Power (W)
• リーク消費電力の削減による効果大
Alpha 21264 like processor (8way) @ 90nm
X. Dong, X. Wu, G. Sun, Y. Xie, H. Li, and Y. Chen, “Circuit and Microarchitecture Evaluation of
3D Stacking Magnetic RAM (MRAM) as a Universal Memory Replacement,” DAC’08.
39
アプリ特性によっては3Dにより性能が
低下する場合もある!
2MB
8MB
2MB
8MB
SRAM-SNUCA MRAM-SNUCA SRAM-DNUCA MRAM-DNUCA
Performance
Better
galgel, apsi
•若干の性能向上
他のベンチマーク
•MRAMの使用により性能低下
•swimとstreamclusterで顕著
•書込みレイテンシ増大による
後続Readイベントの停滞
2MB
8MB
2MB
8MB
SRAM-SNUCA MRAM-SNUCA SRAM-DNUCA MRAM-DNUCA
Power Consumption
Better
全てのベンチマーク
•低消費電力化を実現
•書込みエネルギーが大きいた
め,Writeイベントが多い場合
は効果が低減
G. Sun, X. Dong, Y. Xie, J. Li, and Y. Chen, “A Novel Architecture of the 3D Stacked MRAM
L2 Cache for CMPs,” HPCA’09.
40
MRAMの欠点を解決する
アーキテクチャ・サポート
2MB
2MB
8MB
SRAM-SNUCA SRAM-DNUCA SRAM+MRAM Hybrid
アーキテクチャ・サポート
Better
Better
書込み遅延の削減
•ライトバッファのエントリ数を増
加(4→20エントリへ)
•ライトイベントの後続リードイベ
ントによる割込み許可
書込み回数の削減
•MRAMキャッシュの一部を
SRAMで実現(31way:MRAM,
1way:SRAM)
•SRAMはコアと同じレイヤに実
装
•頻繁に書込みが発生するブ
ロックをSRAMへマイグレート
G. Sun, X. Dong, Y. Xie, J. Li, and Y. Chen, “A Novel Architecture of the 3D Stacked MRAM
L2 Cache for CMPs,” HPCA’09.
41
3Dの世界には様々な「トレードオフ」が存在!
~九州大学での取組み~
• 大容量キャッシュ積層は本当に得策か?
→SRAM/DRAMハイブリッド・キャッシュ(1月21日「3D-II」)
• 高メモリバンド幅の活用は本当に得策か?
→可変ラインサイズキャッシュの提案
• 温度は性能にどう影響するのか?
→3Dマルチコアの性能評価/解析(1月21日「3D-II」)
• MRAMの積層は本当に得策なのか?
→不揮発メモリを用いた3Dメモリ・アーキテクチャ
• その他にも・・・
→3Dアクセラレータ・アーキテクチャ
42
様々な3Dアーキテクチャ研究
~世界での様々な取組み~
Accelerator on Multi-Core
(Georgia Tech.)
NUCA (w/ NoC) on Multi-Core
(Pennsylvania State Univ.)
DRAM on Multi-Core
(Georgia Tech.)
DRAM on Embedded Multi-Core
(The University of Michigan, ARM)
•Dong Hyuk Woo, Joshua B. Fryman, Allan D. Knies, Marsha Eng, and Hsien-Hsin S. Lee. “POD: A 3D-Integrated Broad-Purpose Acceleration
Layer.” In IEEE MICRO, Vol. 28, No. 4, pp.28-40, July/August, 2008.
•G. Sun, X. Dong, Y. Xie, J. Li, and Y. Chen, “A Novel Architecture of the 3D Stacked MRAM L2 Cache for CMPs,” HPCA’09.
•Gabriel H. Loh, “3D-Stacked Memory Architectures for Multi-Core processors,” Int. Symposium on Computer Architecture, 2008.
43
• Taeho Kgil, Shaun D'Souza, Ali Saidi, Nathan Binkert, Ronald Dreslinski, Trevor Mudge, Steven Reinhardt, Krisztian Flautner,”PicoServer:
using 3D stacking technology to enable a compact energy efficient chip multiprocessor ,” ASPLOS’06
3Dアーキテクチャ研究のトレンド(私見)
~「量」から「質」へ~
第1世代
第2世代
第3世代
Traditional Devices
(E.g. SRAM, DRAM, Logic, …)
Emerging Devices
(E.g. NV-Mem.,
Photonics, …)
Divide & Stacking
(E.g. 3D Cache,
3D ALU, …)
System 3D
Integration
Adaptive 3D Computing
(E.g. Run-time Thermal
Management, …)
44
パネル討論(16:20~18:20)
3次元積層LSIはメインストリームになり得るか?
議論して欲しい内容があれば
メイルでご連絡下さい!
[email protected]
45
Backup Slides
46
素朴な疑問その2
~主記憶を積層してL2$は必要か?~
• L2(ラストレベル)キャッシュ導入の狙いは主記憶
アクセス回数の削減
– 主記憶のオンチップ化により効果減(!?)
– 現在のプロセッサでは「L2面積≈全コア面積」
• L2面積を用いてコア数を増加可能と仮定すると・・
Stacked
Main Memory
Stacked
Main Memory
TLP : ↘
TLP : ↗
Freq. :→
Freq. :→
Mem. Acc.: ↘ Mem. Acc.: ↗
47
性能モデル式による解析
• L2未搭載(Nコア搭載)マルチコアをベースとした性能
比較
• TLP活用効果 vs. メモリ性能インパクト
CC
wL 2
N m
演算性能の低下
による実行クロック
サイクル数の増加
(≧1.0)

L2キャッシュ搭載「N-m」コア
の実行時間(サイクル数)
Stacked
Main Memory

メモリ性能の向上
による実行クロック
サイクル数の減少
(≦1.0)

L2未搭載N
コア実行サ
イクル数
Stacked
Main Memory
48
簡易性能モデル式による解析
並列化できる演算の割合
L2搭載により削減されるコア数
L2未搭載時のNコア実行
f
クロックサイクル数
1 f 
N  m  1  r
CC NwL m2 
L 2 MR  k N   CC N
f
1 f 
N
L2キャッシュ搭載「N-m」コア
の実行時間(サイクル数)
L2未搭載時の
総プロセッサコア数
全コア実行時の全実行時間にしめる
主記憶アクセスによるストールの割合
(≦1.0)
L2キャッシュ導入によるメモリ性
能改善率(≦1.0)
49
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
50
結局のところ・・・
• L2キャッシュの搭載よりもコア数増加にハード
ウェア資源を利用した方がお得な場合がある
– オフチップ・メモリアクセスのインパクトが小さくなるほ
どL2搭載の効果は低減
– 特にTLPが高い場合に顕著
• ただし・・・
– 本解析では「L2アクセスレイテンシ」と「DRAMアクセス
レイテンシ」の違いは未考慮→その影響は?
– 共有変数を用いた並列化プログラムの実行では?
– 「プロセッサ性能は低下させない」という前提では?
– 様々な観点からメモリアーキテクチャを再考する必要
あり!!
51
PicoServer [ASPLOS’06]
• Tier1ウェブサーバを対象とした3次元積層アプローチ
– 極めて高いTLP
– 動作周波数の低いコアを複数活用することで低消費電力
化→3次元積層における熱問題を解消
Taeho Kgil, Shaun D'Souza, Ali Saidi, Nathan Binkert, Ronald Dreslinski, Trevor Mudge, Steven Reinhardt, Krisztian Flautner,”PicoServer:
52
using 3D stacking technology to enable a compact energy efficient chip multiprocessor ,” ASPLOS’06
評価対象モデル
3D Single Core
2D 4/8cores
3D PicoServer (4/8/12cores)
Taeho Kgil, Shaun D'Souza, Ali Saidi, Nathan Binkert, Ronald Dreslinski, Trevor Mudge, Steven Reinhardt, Krisztian Flautner,”PicoServer:
53
using 3D stacking technology to enable a compact energy efficient chip multiprocessor ,” ASPLOS’06
性能評価結果(SpecWeb99)
3D-OOO@4GHz
が最も高性能
L2効果とDRAM積層
効果は同等
3D
3D
2D
同じ周波数でもコア数
2倍で高い性能を実現
2D
3D
半分の周波数で
高い性能を実現
2D
3D
Taeho Kgil, Shaun D'Souza, Ali Saidi, Nathan Binkert, Ronald Dreslinski, Trevor Mudge, Steven Reinhardt, Krisztian Flautner,”PicoServer:
54
using 3D stacking technology to enable a compact energy efficient chip multiprocessor ,” ASPLOS’06
消費電力とチップ温度
3倍のコア数でも
低消費力化
2D
3D
温度上昇は10℃以下
2D
3D
周波数削減による
低消費電力化
(恐らく低VDDの効果)
2D
3D
周波数削減による
低消費電力化
(恐らく低VDDの効果)
@500MHz
Taeho Kgil, Shaun D'Souza, Ali Saidi, Nathan Binkert, Ronald Dreslinski, Trevor Mudge, Steven Reinhardt, Krisztian Flautner,”PicoServer:
55
using 3D stacking technology to enable a compact energy efficient chip multiprocessor ,” ASPLOS’06