3 次元 dram- プロセッサ積層実装を 対象としたオンチップ・メモリ・...

39
3 次次 DRAM- 次次次次次次次次次次 次次次次次次次次次次 次次次次 ・・ 次次次次次次次次次次次次次 ○ 次次次次† 次次次次† 次‡ 次次次次‡ 次次次次‡ † 次次次次次次次 次次次次次次次次次 ‡ 次次次次次次次 次次次次次次次次次次次 1

Upload: elie

Post on 23-Feb-2016

71 views

Category:

Documents


0 download

DESCRIPTION

3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価. ○橋口慎哉 †  小野貴継 † (現 ‡ )    井上弘士 ‡  村上和彰 ‡ † 九州大学大学院 システム情報科学府 ‡ 九州大学大学院 システム情報科学研究院. 発表手順. 研究背景 研究目的 ハイブリッド・キャッシュ・アーキテクチャ 評価実験 まとめと今後の課題. 研究背景. 3 次元実装技術 グローバル配線長の削減、チップ面積縮小 異なるプロセスを経て製造されたダイ同士の積層 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

3 次元 DRAM- プロセッサ積層実装を対象としたオンチップ・メモリ・アーキテクチャの提案と評価○ 橋口慎哉† 小野貴継†(現‡)   井上弘士‡ 村上和彰‡

† 九州大学大学院 システム情報科学府‡ 九州大学大学院 システム情報科学研究院1

Page 2: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

発表手順• 研究背景• 研究目的• ハイブリッド・キャッシュ・アーキテクチャ• 評価実験• まとめと今後の課題

2

Page 3: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

研究背景• 3 次元実装技術– グローバル配線長の削減、チップ面積縮小– 異なるプロセスを経て製造されたダイ同士の積層

• プロセッサ・ダイと DRAM ダイを積層することによりオンチップ・メモリの大容量化を実現可能 →メモリウォール問題の解決策

3出典:米インテル社

TSV ( Through    Silicon Vias )

Page 4: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

3 次元実装によるキャッシュメモリの大容量化• DRAM スタック法 [Black MICRO’06]– 従来の 2 次元実装プロセッサ(ベースプロセッサ)上に 3 次元実装技術により大容量 DRAM キャッシュを積載    – DRAM キャッシュのタグ RAM として数 MB の容量が必要

ベースプロセッサ(2次元実装) DRAM スタック法(3次元実装)

オフチップメモリアクセス回数削減

Bryan Black et al “Die Stacking (3D) Architecture,” International Symposium on Microarchitecture ,2006 4

下層の SRAM をタグ RAM として使用

Core(s)+ L1(s)

    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

    L2   Cache(SRAM)

Core(s)+ L1(s)

Page 5: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

2060 40

100 80 150200

10050 0

0

1.0

0

1.5

3.0

2.0

2.5

0.5

L2 キャッシュアクセス時間の増加L2 キャッシュミス率の削減率[cc]

性能向上性能低下

性能向上率

[points]

DRAM スタック法の問題点

5

MMAT)MRHT(MRHTAMAT LLLL 2211

Ocean

Choleskyプログラムによっては性能が低下

L1 キャッシュのアクセス時間[cc]

L1 キャッシュミスの割合L2 キャッシュのアクセス時間

[cc]

L2 キャッシュミスの割合主記憶のアクセス時間

[cc]

DRAMスタック法の効果 (?)

Page 6: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

キャッシュ容量とキャッシュミス率の関係

6

2MB 4MB 8MB 16MB 32MB 64MB 128MB0

10

20

30

40

50

60

L2キャッシュ容量

L2キャッシュミス率

[%]

あまり低下しない

大きく低下するあまり低下しない

あまり低下しない大きく低下する

大きく低下する

FFT

LU

Cholesky

FMM

RaytraceBarnes

Ocean

WaterSpatial

Page 7: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

プログラム実行中の適したキャッシュ容量の変化

7

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 961010

50

100

150

200

250

300

350

2MB(12cc) 32MB(60cc)

区間

L1ミスペナルティ[

cc]

Ocean

L1 ミスペナルティ =HTL2+MRL2×MMAT( 300cc )適したキャッシュ容量:大

適したキャッシュ容量:小

Page 8: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

研究のねらい• 着眼点– 大容量 DRAM キャッシュの活用により必ずしも性能が向上するとは限らない– 適したキャッシュ容量はプログラム間、ならびにプログラム内で変化

• 研究目的– DRAM スタック法の問題点を解決したメモリ・アーキテクチャの提案と評価– 「大容量かつ低速キャッシュ」ならびに「小容量かつ高速キャッシュ」を同一アーキテクチャで実現

8

Page 9: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

ハイブリッド・キャッシュ搭載プロセッサ• プログラム間(中)の適したキャッシュ容量の変化に応じて下層 SRAM キャッシュの動作モードを切り替える

9

    L2   TagRAM(SRAM)

     L2  Cache(SRAM)

切り替え

未使用

キャッシュモード(高速かつ小容量 L2 キャッシュ) タグモード(低速かつ大容量 L2 キャッシュ)

L2 Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

  Cache(SRAM)

L2 Cache(DRAM)

Core(s)+ L1(s)ハイブリッド・キャッシュ

Page 10: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

ハイブリッド・キャッシュ実現への課題• タグ情報のマッピング– DRAM キャッシュのタグ情報はハイブリッド・キャッシュのデータアレイに格納– ハイブリッドキャッシュのライン数より多い DRAMのタグ情報をどのようにマッピングするか?

• ハードウェア・サポート– ハイブリッド・キャッシュ内のタグ情報をどのようにして読みだすか?

• 動作モードの決定アルゴリズム– いつ、何に基づき動作モードを決定するか?

10

Page 11: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

2 ウェイ・セットアソシアティブSRAM キャッシュ

1 Way

1 Way2 ウェイ・セットアソシアティブ

DRAM キャッシュ

キャッシュ・モード時データが格納される領域

キャッシュ・モード時タグが格納される領域

デコーダ

タグ情報のマッピング

11

    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

Core(s)+ L1(s)

タグタグ

Page 12: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

MUX1 = =

Hit/Miss(SRAM)

Data(SRAM)

64 ビットアドレス(物理アドレス)インデックスフィールドタグフィールド オフセットフィールド

W・LClgI

SS

SS

WLClgI

DD

DD ・

IS

I-Llg-64 SS

LSLS

IS

11

1

LS

下層 SARM (容量:  ラインサイズ:   連想度:   )LS

CS

WSデコーダ

Llg S

I-Llg-64 SS

I-Llg-64 SS

I-Llg-64 SS

通常のキャッシュ構成

12

.

..

Page 13: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

MUX1

MUX3

= =

=

MUX2

Hit/Miss(SRAM)

Data(SRAM)

64 ビットアドレス(物理アドレス)インデックスフィールドタグフィールド オフセットフィールド

=

Hit/Miss(DRAM)

Data(DRAM)

W・LClgI

SS

SS

WLClgI

DD

DD ・

IS

I-Llg-64 DD

I-Llg-64 SS

ID

LS

LDLD

LS

IS

ID

1 1

11

1

1

LD

LS

下層 SARM (容量:  ラインサイズ:   連想度:   ) 上層 DARM (容量:  ラインサイズ:   連想度:   )LD

LS

CDWD

CS

WSデコーダ

WL・CWL・Clg

DDS

SSD

・・

Llg S

Llg D

I-Llg-64 SS

I-Llg-64 SS

I-Llg-64 DD

I-Llg-64 DD

I-Llg-64 SS

I-Llg-64 DD

ハードウェア・サポート

追加HW

追加HW

追加HW

追加HW

追加HW

13

.. .

Page 14: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

ハイブリッド・キャッシュ搭載プロセッサの利点・欠点○DRAM スタック法より高性能、もしくは同性能– 高速小容量の L2 キャッシュと低速大容量の L2キャッシュを選択的に活用○消費エネルギーの削減– キャッシュ・モード時、上層 DRAM は動作しない

× 下層ダイの面積増加– マルチプレクサ等の追加→無視できる程に小さい– 上層 DRAM キャッシュに関するすべてのタグ情報をハイブリッド・キャッシュに格納できない場合、メモリアレイを拡大する必要がある

14

Page 15: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

動作モードの切り替え• 静的切り替え

– プログラム実行前により高性能な動作モードを決定する– プログラム実行中に動作モードの切り替えは行わない

• 動的切り替え– プログラム実行中に動作モードを切り替える– 動作モード切り替えタイミングの決定はプログラム実行前・実行中のいずれか

15

Ocean

2MB 4MB 8MB 16MB 32MB 64MB 128MB05

101520253035404550

L2キャッシュ容量

L2キャッシ

ュミス率

[%] FFT

FMM

Barnes

キャッシュ・モード

タグ・モード

キャッシュ・モード

1 8 15 22 29 36 43 50 57 64 71 78 85 92 990

50100150200250300350

2MB(12cc) 32MB(60cc)

区間

L1ミス

ペナルテ

ィ[cc

]

キャッシュ・モード

タグ・モード

Page 16: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~評価対象モデル~

2D-BASE( = ベースプロセッサ)

    L2    Cache(SRAM)

Core(s)+ L1(s)

3D-CONV( =DRAM スタック法)

Core(s)+ L1(s)

    L2   TagRAM(SRAM)

L2 Data Cache  (DRAM)

    L2   TagRAM(SRAM)

L2 Data Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用

    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC動的切り替え: 3D-HYBRID-DYNAMIC 16

Page 17: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

L1

L2キャッシュ

コア

主記憶

オンチップ

評価実験~実験環境~• プロセッサシミュレータ: M5• ベンチマークプログラム: SPEC CPU 2000 、 Splash2 から選択• 評価対象

– 2D-BASE– 3D-CONV– 3D-HYBRID-STATIC– 3D-HYBRID-DYNAMIC

• 評価指標: AMAT

17アクセス時間: 300clock

cycles

L1

L2キャッシュ

コア

主記憶

オンチップ 2D-BASEキャッシュ・モード 3D-CONVタグ・モード

どちらのモードが高性能となるか実行前に既知であるとする切り替える適切なタイミングは既知とし、かつ切り替えによるオーバーヘッドはなしと仮定

容量: 2MBアクセス時間:12clock cycles

容量: 32MBアクセス時間: 60 clock cycles

容量 :32KBアクセス時間: 1clock cycle

Page 18: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

18

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

0.51

1.52

2.53

3.54

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

Page 19: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

19

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

0.51

1.52

2.53

3.54

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

2D-BASE

    L2    Cache(SRAM)

Core(s)+ L1(s)

3D-CONV

Core(s)+ L1(s)

    L2   TagRAM(SRAM)

L2   Cache  (DRAM)

3D-CONV で性能が低下するプログラムが複数存在する

Page 20: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

20

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

0.51

1.52

2.53

3.54

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

2D-BASE

    L2    Cache(SRAM)

Core(s)+ L1(s)

3D-CONV

Core(s)+ L1(s)

    L2   TagRAM(SRAM)

L2   Cache  (DRAM)    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC

3D-CONV で性能が低下するプログラムは 3D-HYBRID-STATIC と 2D-BASE が同じ性能となっている

Page 21: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

21

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

0.51

1.52

2.53

3.54

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

2D-BASE

    L2    Cache(SRAM)

Core(s)+ L1(s)

3D-CONV

Core(s)+ L1(s)

    L2   TagRAM(SRAM)

L2   Cache  (DRAM)    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC

2D-BASEや 3D-CONV と比較して 3D-HYBRID-DYNAMICの性能が大きく向上するプログラムがいくつか存在する

Page 22: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

22

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

0.51

1.52

2.53

3.54

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC

    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC

3D-HYBRID-STATIC と」 3D-HYBRID-DYNAMIC の性能がほぼ変わらないプログラムが複数存在する

Page 23: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

考察

23

181.mcfや Ocean以外のプログラムの多くは 3D-HYBRID-DYNAMIC の 3D-HYBRID-STATIC に対する性能向上が小さい

1 40 79 118 157 196 235 274 313 3520

100200300

171.swim

キャッシュ・モードタグ・モード

区間L1ミスペナルティ

プログラム実行の大部分でキャッシュ・モードが高性能となるかタグ・モードが高性能となるため

1 51 1011512012513013514014515010

20

40

60

80

179.art

2MB 32MB

区間L1ミスペナルティ

Page 24: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

まとめと今後の課題• まとめ– 高速かつ大容量なメモリを実現するハイブリッド・キャッシュを提案– 静的切り替えは DRAM スタック法に対し平均 35% の性能向上を達成– 動的切り替えはベースプロセッサに対し最大 115% の性能向上を達成

• 今後の課題– 動作モード決定アルゴリズムの考案( OS サポート等)

• 何か良いアイデアありませんでしょうか?– マルチコア時の性能評価– 消費エネルギーの評価 24

Page 25: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

ご清聴ありがとうございました

25

Page 26: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

backslide

26

Page 27: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

MUX1

MUX3

= =

=

MUX2

Hit/Miss(SRAM)

Data(SRAM)

64 ビットアドレス(物理アドレス)6

インデックスフィールドタグフィールド オフセットフィールド

=

Hit/Miss(DRAM)

Data(DRAM)

6下層 SARM (容量: 4MB   ラインサイズ: 64B  連想度:8 ) 上層 DARM (容量: 32MB   ラインサイズ: 64B  連想度:

16 )

デコーダ

264B

1

64B 64B64B

64B

64B

1 1

1 11

45 1343 15

13

43

45

1545

45

43 43

ID = 43IS = 45

パラメータ代入後(一例)

27

Page 28: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

ハイブリッド・キャッシュの動作条件

28

)WL

CWL

C ( IIDD

D

SS

SDS

L)IlgLlg(64WCWC SDD

DS

SD

•下層 SRAM と上層 DRAM の連想度が2のべき乗インデックスの分割を可能にするため• 

• タグモード動作時、ハイブリッド・キャッシュの 1セットにアクセスを限定するため

上層 DRAM のすべてのタグをハイブリッド・ キャッシュに格納するため

Page 29: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

29

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

0.51

1.52

2.53

3.54

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

3D-HYBRID-DYNAMIC は 2D-BASE と比較し性能が平均 38% 向上               3D-CONV と比較し性能が平均 43% 向上

38% 向上

Page 30: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

研究のねらい• 着眼点プログラムによって、またプログラム実行中にミス率が変化• 目的

DRAM スタック法の問題点を解決する高速かつ大容量なメモリ・アーキテクチャの提案と評価30

2MB 4MB 8MB 16MB 32MB 64MB 128MB05

101520253035404550

L2キャッシュ容量

L2キャ

ッシュミ

ス率[%

] FFT

FMM

Barnes

1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 970

50100150200250300350

2MB(12cc) 32MB(60cc)

区間

L1ミス

ペナルティ[

cc]

L1 ミスペナルティ =HTL2+MRL2×MMAT

小さなキャッシュ容量で十分

大きなキャッシュ容量が必要

さらに大きなキャッシュ容量が必要

( 300cc )

Page 31: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

プログラム実行中の適したキャッシュ容量の変化

31

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 961010

50

100

150

200

250

300

350

2MB(12cc) 32MB(60cc)

区間

L1ミスペナルティ[

cc]

Ocean

Page 32: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

ハイブリッド・キャッシュ搭載プロセッサ• プログラムのメモリ参照の振る舞いに応じて下層

SRAM キャッシュの動作モードを切り替える– 必要なキャッシュ容量小・・・「キャッシュ・モード」

積載された DRAM は使用せず、下層 SRAM は通常の L2 キャッシュ– 必要なキャッシュ容量大・・・「タグ・モード」

積載された DRAM は L2 キャッシュ、下層 SRAM のデータアレイにタグを格納

    L2   TagRAM(SRAM)

   L2  Cache(SRAM)

切り替え

未使用

キャッシュモード(高速かつ小容量 L2 キャッシュ) タグモード(低速かつ大容量 L2 キャッシュ)

L2 Cache  (DRAM)

33

Core(s)+ L1(s)

Core(s)+ L1(s)

Page 33: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

各切り替えの特徴性能向上 面積オーバー

ヘッド入力サイズが変化してもよいか

静的切り替え ○ ○ ×

動的切り替え ◎ △ (※ 1)

△ (※ 2)

34

※1 、動作切り替えタイミングの決定を HW で実現する場合、× それ以外なら○※2 、動作切り替えタイミングの決定をプログラム実行中に場合、○ それ以外なら ×

Page 34: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

各切り替えの利点・欠点• 静的切り替え〇動作モード切り替えに要するオーバーヘッド小× 実行プログラムの入力データによって適した動作モードが異なる場合、性能が向上するとは限らない

• 動的切り替え○ プログラム実行中におけるメモリ参照の振る舞いにも対応が可能 →静的切り替えより性能が向上する可能性○ 実行中に切り替えタイミングを決定する場合、実行プログラムの入力データによって適した動作モードが異なっても、対応が可能× 動作モード切り替えに要するオーバーヘッド大× 実行中に切り替えタイミングを決定する場合、専用回路の追加に伴う面積増大 35

Page 35: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

36

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

1

2

3

4

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

3D-CONV で性能が低下するプログラムが複数存在する

2D-BASE( = ベースプロセッサ)

    L2    Cache(SRAM)

Core(s)+ L1(s)

3D-CONV( =DRAM スタック法)

Core(s)+ L1(s)

    L2   TagRAM(SRAM)

L2 Data Cache  (DRAM)

Page 36: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

37

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

1

2

3

4

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

2D-BASE( = ベースプロセッサ)

    L2    Cache(SRAM)

Core(s)+ L1(s)

3D-CONV( =DRAM スタック法)

Core(s)+ L1(s)

    L2   TagRAM(SRAM)

L2 Data Cache  (DRAM)

    L2   TagRAM(SRAM)

L2 Data Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用

    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC

3D-CONV で性能が低下するプログラムは 2D-BASE と同じ性能となっている

Page 37: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

評価実験~実験結果~

38

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

1

2

3

4

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

•181.Mcfや Ocean は 3D-HYBRID-STATIC に対し 3D-HYBRID-DYNAMIC の性能が大きく向上•3D-HYBRID-DYNAMIC は 3D-HYBRID-STATIC に対し性能向上は平 均わずか 5%

    L2   TagRAM(SRAM)

L2 Data Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用

    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC

    L2   TagRAM(SRAM)

L2 Data Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用

    L2    Cache(SRAM)

動的切り替え: 3D-HYBRID-DYNAMIC

Page 38: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

39

171.swim

179.art

181.mcf

183.equake

188.ammp

256.bzip2

CholeskyFM

MOce

an

WaterSp

atial

Averag

e0

0.51

1.52

2.53

3.54

2D-BASE 3D-CONV3D-HYBRID-STATIC 3D-HYBRID-DYNAMIC

ベンチマークプログラム

性能向上比

    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-STATIC

    L2   TagRAM(SRAM)

L2 Cache  (DRAM)

Core(s)+ L1(s)

Core(s)+ L1(s)

未使用    L2    Cache(SRAM)

静的切り替え: 3D-HYBRID-DYNAMIC

評価実験~実験結果~

Page 39: 3 次元 DRAM- プロセッサ積層実装を 対象としたオンチップ・メモリ・ アーキテクチャの提案と評価

プログラム実行中の L1 ミスペナルティの変化~ FMM~

40

1 10 19 28 37 46 55 64 73 82 91 1001091181271361451541630

50

100

150

200

250

300

350

FMM

キャッシュ・モード タグ・モード

区間

L1ミスペナルテ