high-performance low-power cache memory architectures

171
High-Performance Low-Power High-Performance Low-Power Cache Memory Architectures Cache Memory Architectures 井井 井井 ( 井井井 / 井井井井井井井井井井井井井 井井井井井井井 ) 井井井井井井井 井井井井井井井井井井井 井井井井井井 井井井井井井 3 井

Upload: brian-russo

Post on 03-Jan-2016

34 views

Category:

Documents


0 download

DESCRIPTION

High-Performance Low-Power Cache Memory Architectures. ( 高性能 / 低消費電力キャッシュメモリ・アーキテクチャ ). 九州大学大学院 システム情報科学研究科 情報工学専攻 博士後期課程 3 年. 井上 弘士. 論文の構成. 第 1 章:背景と目的 第 2 章:メモリシステム性能と消費電力 第 3 章:ウェイ予測セット・アソシアティブ・キャッシュ 第 4 章:ヒストリ・ベース・タグ比較キャッシュ 第 5 章:可変ラインサイズ・キャッシュ 第 6 章:まとめと今後の課題. 演算処理. データの記憶. +. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: High-Performance Low-Power  Cache Memory Architectures

High-Performance Low-Power High-Performance Low-Power Cache Memory ArchitecturesCache Memory Architectures

井上 弘士

( 高性能 / 低消費電力キャッシュメモリ・アーキテクチャ )

九州大学大学院 システム情報科学研究科 情報工学専攻博士後期課程 3 年

Page 2: High-Performance Low-Power  Cache Memory Architectures

論文の構成

第 1 章:背景と目的第 2 章:メモリシステム性能と消費電力第 3 章:ウェイ予測セット・アソシアティブ・キャッシュ第 4 章:ヒストリ・ベース・タグ比較キャッシュ第 5 章:可変ラインサイズ・キャッシュ第 6 章:まとめと今後の課題

Page 3: High-Performance Low-Power  Cache Memory Architectures

はじめにコンピュータ・システムの高性能化

CPU 性能 メモリシステム性能

演算処理 データの記憶

CPU DRAM+

Page 4: High-Performance Low-Power  Cache Memory Architectures

プロセッサーメモリ間性能差の隠蔽

オンチップ・キャッシュの搭載

CPU DRAM+

演算処理 データの記憶

Cache Memory

データの記憶

メモリ参照の時間的 / 空間的局所性を活用

Page 5: High-Performance Low-Power  Cache Memory Architectures

キャッシュ・メモリとは?

CPU Main Memory

CPU Cache Main Memory

Page 6: High-Performance Low-Power  Cache Memory Architectures

メモリ参照の局所性時間的局所性:メモリ上のある項目が参照されると、間もなくそれが再び参照される確率が高い、という性質空間的局所性:メモリ上のある項目が参照されると、その近くの項目も間もなく参照される確率が高い、という性質 ヘネシー&パターソン コンピュータ・アーキテクチャ

CPU について調べたい!

並列

処理

マシ

ン 

富田

・末

吉 

マイ

クロ

・コ

ンピ

ュー

タ 

田丸

・安

浦 

スー

パス

カラ

・プ

ロセ

ッサ

村上

 監

Page 7: High-Performance Low-Power  Cache Memory Architectures

キャッシュ・メモリの利点

CPU CacheCache Main Memory小容量

高速アクセス低消費エネルギ

小容量高速アクセス

低消費エネルギ

大容量低速アクセス

高消費エネルギ

メモリ参照の局所性により、多くのメモリアクセスがキャッシュ・メモリで完結!

Page 8: High-Performance Low-Power  Cache Memory Architectures

ダイレクト・マップ・キャッシュMemory

000000000100010000110010000101001100011101000010010101001011011000110101110011111000010001100101001110100101011011010111

MemoryAddress

TagIndex

Cache

000001010011100101110111

Tag Index Offset

CPU から発行されたメモリ参照アドレス

=? MUX

一致ならヒット!

IndexTag Line

Page 9: High-Performance Low-Power  Cache Memory Architectures

ダイレクト・マップ・キャッシュ

CPU

CacheMain Memory

マイクロ・コンピュータ 田丸・安浦 著

スーパスカラ・プロセッサ

村上 監訳

スーパスカラについて調べたい!

動作原理に関する本の場所

並列処理マシン 富田・末吉 著

並列処理に関する本の場所

回路設計に関する本の場所

OS に関する本の場所

Tag :本の名前Index :分野

Page 10: High-Performance Low-Power  Cache Memory Architectures

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

Cache00011011

Memory000 00000 01000 10000 11001 00001 01001 10001 11010 00010 01010 10010 11

MemoryAddress

010 01010 10010 11

010 01

Tag Index

00011011

=? MUX

Tag Index Offset

Index

=? MUX

MUX

一致ならヒット!

CPU から発行されたメモリ参照アドレス

Tag

Page 11: High-Performance Low-Power  Cache Memory Architectures

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

CPU

Main Memory

Tag :本の名前Index :分野

Cache

並列処理マシン 富田・末吉 著

スーパスカラ・プロセッサ

村上 監訳

動作原理、または、並列処理に関する本の場所

回路設計、または、 OS に関する本の場所

マイクロ・コンピュータ 田丸・安浦 著

スーパスカラについて調べたい!

Page 12: High-Performance Low-Power  Cache Memory Architectures

本研究の動機 (1/2)

SPECint92 (22%) SPECfp92 (32%)

Database (77%) Sparse (73%)From D. Patterson et al., (IEEE Micro)

Processor

Fraction of time spent in

I-Cache MissesD-Cache MissesL2 Cache MissesL3 Cache Misses

性能差は十分隠蔽できているのか?

Alpha 21164

Page 13: High-Performance Low-Power  Cache Memory Architectures

本研究の動機 (1/2)

SPECint92 (22%) SPECfp92 (32%)

Sparse (73%)From D. Patterson et al., (IEEE Micro)

Alpha 21164

Processor

Fraction of time spent in

I-Cache MissesD-Cache MissesL2 Cache MissesL3 Cache Misses

性能差は十分隠蔽できているのか?NO!

Database (77%)

Page 14: High-Performance Low-Power  Cache Memory Architectures

本研究の動機  (2/2)

高性能化だけで十分なのか?NO!

DEC 21164 CPU* StrongARM SA-110 CPU* Bipolar ECL CPU**

25% 43% 50%

チップ全体の消費電力においてキャッシュが占める割合

* Kamble et. al., “Analytical energy Dissipation Models for Low Power Caches”, I S LPED’97** Joouppi et. al., “A 300-MHz 115-W 32-b Bipolar ECL Microprocessor” ,IEEE Journal of Solid-State Circuits’93

•携帯システムにおけるバッテリ駆動時間の延長•高性能システムにおけるチップ発熱の抑制

Page 15: High-Performance Low-Power  Cache Memory Architectures

本研究の目的

高性能と低消費エネルギを両立できるキャッシュ・アーキテクチャを考案

→ キャッシュがシステム性能に与える影響は大きい

→ キャッシュがシステム消費エネルギに与える影響は大きい

→ キャッシュ・ヒット率の向上を目的として、キャッシュ・サイズは年々増加傾向にある

→ プロセッサー主記憶間の性能差は拡大を続けている

Page 16: High-Performance Low-Power  Cache Memory Architectures

対象とするアプリケーション組み込みシステム 汎用システム

電子レンジ

ポット

携帯電話ラップトップ PC

デスクトップ PC

ワークステーション携帯電話

ラップトップ PC

デスクトップ PC

ワークステーション

→ メモリ参照の振る舞いを静的に予測しにくい

→ オブジェクト・コードの互換性を保つことは重要

Page 17: High-Performance Low-Power  Cache Memory Architectures

本研究における戦略 (1/3)

目標:高性能かつ低消費エネルギなメモリシステムを     構築するためのキャッシュ・アーキテクチ

ャを実現

手段:不必要な処理を削除

How?

Page 18: High-Performance Low-Power  Cache Memory Architectures

本研究における戦略 (2/3)

手段:ハードウェアによる動的最適化

How?

要求:オブジェクト・コードの互換性を保ち、かつ、

      様々なプログラム特性に対応

Page 19: High-Performance Low-Power  Cache Memory Architectures

本研究における戦略 (3/3)

1. メモリ参照パタン ( ヒストリ )を採取

動的最適化により無駄な処理を削除

2. キャッシュ内部処理結果を予測3. 必要のない処理を削除

How?

Predict and Eliminate!

Page 20: High-Performance Low-Power  Cache Memory Architectures

提案キャッシュ・アーキテクチャウェイ予測セット・アソシアティブ・キャッシュ ( 第 3 章 )

・不必要なウェイアクセスを削除

ヒストリ・ベース・タグ比較キャッシュ ( 第 4 章 )

・不必要なタグ比較処理を削除

動的可変ラインサイズ・キャッシュ ( 第 5 章 )

・不必要なデータ・リプレイスを削除

Page 21: High-Performance Low-Power  Cache Memory Architectures

メモリシステム性能と消費エネルギ

平均メモリアクセス時間 (AMAT)= TCache + CMR * 2 * TMainMemory

平均メモリアクセス消費エネルギ (AMAE)= ECache + CMR * 2 * EMainMemory

Page 22: High-Performance Low-Power  Cache Memory Architectures

提案キャッシュの効果

MainMemory

Time Energy

Cache

Time EnergyCMR

WPWP

HTCHTC

DVLSDVLS

WP: ウェイ予測セット・アソシアティブ・キャッシュHTC: ヒストリ・ベース・タグ比較キャッシュDVLS: 動的可変ラインサイズ・キャッシュ

Page 23: High-Performance Low-Power  Cache Memory Architectures

第 3 章

ウェイ予測セット・アソシアティブウェイ予測セット・アソシアティブキャッシュ・アーキテクチャキャッシュ・アーキテクチャ

MainMemory

Time Energy

Cache

Time EnergyCMR

10% 70%従来型 4 ウェイ SA キャッシュと比較

Page 24: High-Performance Low-Power  Cache Memory Architectures

従来型キャッシュの動作

Step3. タグ比較一致(ヒット) 不一致(ミス)

Step4.参照データをサービス後、 アクセスを終了

Step4.アクセスを終了後、 ラインのリプレイス

Step1. アドレス・デコード

Step2.全ウェイにおけるタグと ラインを同時読み出し

タグ・サブアレイ ライン・サブアレイウェイ 0 1 2 3

タグ

Page 25: High-Performance Low-Power  Cache Memory Architectures

各キャッシュの動作ー従来型-

CPU Cache

並列処理マシン 富田・末吉 著

スーパスカラ・プロセッサ

村上 監訳

動作原理、または、並列処理に関する本の場所スーパスカラについて調べたい!

Way-0 Way-1

本の確認(タグ比較)

本を開く(ライン読出し)

本の確認(タグ比較)

本を開く(ライン読出し)

これだ!

Page 26: High-Performance Low-Power  Cache Memory Architectures

不一致(ミス)

段階型キャッシュの動作ライン読み出しを遅らせることによる省エネルギー化

フェーズ 1

性能を犠牲にする事で性能を犠牲にする事で低消費エネルギー化を達成低消費エネルギー化を達成

Step1. 参照アドレスのデコード

Step2.全ウェイにおけるタグ読み出し

Step3. タグ比較

Step4. アクセス終了後、 ラインのリプレイス

一致(ヒット)

Step4.ヒットしたラインだけを読み出しフェーズ2

Step5.参照データをサービス後、 アクセスを終了

Page 27: High-Performance Low-Power  Cache Memory Architectures

CPU Cache

並列処理マシン 富田・末吉 著

スーパスカラ・プロセッサ

村上 監訳

動作原理、または、並列処理に関する本の場所スーパスカラについて調べたい!

Way-0 Way-1

本の確認(タグ比較)

本の確認(タグ比較)

本を開く(ライン読出し)

これだ!

各キャッシュの動作ー段階型-

Page 28: High-Performance Low-Power  Cache Memory Architectures

WP キャッシュー基本概念ー

段階型キャッシュ → ヒット時の性能を犠牲に!

高性能 / 低消費エネルギー化を実現するためには…•タグとラインの同時読み出しによる高速化

•無駄なウェイ・アクセスの回避による省エネルギー化

の相反する要求を同時に満足する必要あり!

従来型〇 段階型 ×

従来型 × 段階型〇

キャッシュ・アクセス前に、参照データが存在するウェイを予測ウェイ予測型キャッシュウェイ予測型キャッシュ

Page 29: High-Performance Low-Power  Cache Memory Architectures

WP キャッシュ -基本動作ー

フェーズ 2

フェーズ 1 不一致

Step1. 参照アドレスのデコード

Step2.予測されたウェイに対応する タグとラインの同時読み出し

Step3. タグ比較一致(予測ヒット)

Step0.ウェイ予測

Step4.終了Step4.残りウェイのタグと ラインの同時読み出し

Step5. タグ比較一致(予測ミス)

Step6.終了不一致(キャッシュ・ミス)

Step6.終了後、リプレイス

タグ比較とは独立にウェイを選択

Page 30: High-Performance Low-Power  Cache Memory Architectures

WP キャッシュ -ウェイ予測ー

ウェイ予測型キャッシュの有効性は予測ヒット率に依存多くのプログラムには高いメモリ参照局所性

ウェイ予測に MRU(Most Recently Used) アルゴリズムを採用

各セットにおいて、前回のアクセスが•予測ヒットもしくは予測ミス → 参照データが存在したウェイ•キャッシュ・ミス → リプレイス対象となったウェイを次回の予測ウェイとする

セット S

参照セット S

予測ウェイ(見込みウェイ)

時間

ウェイ2 ウェイ2

T T+n

Page 31: High-Performance Low-Power  Cache Memory Architectures

CPU Cache

並列処理マシン 富田・末吉 著

スーパスカラ・プロセッサ

村上 監訳

動作原理、または、並列処理に関する本の場所スーパスカラについて調べたい!

Way-0 Way-1

本の確認(タグ比較)

本を開く(ライン読出し)前回、 Way-

0 においていたので、こ

れだ!

各キャッシュの動作ーウェイ予測型-

Page 32: High-Performance Low-Power  Cache Memory Architectures

CPU Cache

並列処理マシン 富田・末吉 著

スーパスカラ・プロセッサ

村上 監訳

動作原理、または、並列処理に関する本の場所スーパスカラについて調べたい!

Way-0 Way-1

本の確認(タグ比較)

本を開く(ライン読出し)前回、 Way-

1 においていたので、こ

れだ!

各キャッシュの動作ーウェイ予測型-

あ、違った!

Page 33: High-Performance Low-Power  Cache Memory Architectures

CPU Cache

並列処理マシン 富田・末吉 著

スーパスカラ・プロセッサ

村上 監訳

動作原理、または、並列処理に関する本の場所スーパスカラについて調べたい!

Way-0 Way-1

本の確認(タグ比較)

本を開く(ライン読出し)じゃ、こち

らを探そう!

各キャッシュの動作ーウェイ予測型-

Page 34: High-Performance Low-Power  Cache Memory Architectures

WP キャッシュ -内部構成ー

Status Tag Line

Access Control

ウェイ予測フラグ

way0 way1 way2 way3

2bits

ウェイ予測回路

MUX Drive

Tag Index OffsetReference-Address

Page 35: High-Performance Low-Power  Cache Memory Architectures

段階型

ウェイ予測型

平均 Ecache4 Etag + 4 Edata

従来型

平均所要クロック1

平均 Ecache4 Etag + 1 Edata * ヒット率

1 + 1 * ヒット率平均所要クロック

(1 Etag + 1 Edata)* 予測ヒット率 + (4 Etag + 4 Edata)*(1 -予測ヒット率 )

1+ 1*(1-予測ヒット率 )平均所要クロック

平均 Ecache

理論的評価 (1/2)

Page 36: High-Performance Low-Power  Cache Memory Architectures

理論的評価 (2/2)

最善ケース 最善ケース (予測ヒット率=(予測ヒット率= 100%100% )) : 性能低下を伴うこと無く : 性能低下を伴うこと無く 75%75% の省エネルギー化の省エネルギー化最悪ケース最悪ケース(予測ヒット率=(予測ヒット率= 0%0% )) : 2倍の性能低下を伴い、かつ、省エネルギー効果なし : 2倍の性能低下を伴い、かつ、省エネルギー効果なし

従来型と比較して

Energy(Etag = 0.078Edata)

Performance

従来型段階型ウェイ予測型

(# o

f Eda

ta)

Page 37: High-Performance Low-Power  Cache Memory Architectures

実験的評価 ーウェイ予測ヒット率ー

PHR (%)PMR (%)CMR (%)PHR (%)PMR (%)CMR (%)099.go 94.55 4.04 1.41 81.31 17.45 1.24124.m88ksim 95.76 4.05 0.19 95.47 3.63 0.91126.gcc 92.32 5.09 2.59 87.4 9.59 3.01129.compress 99.98 0.02 0 91.64 3.63 4.73130.li 97.28 2.71 0 92.82 3.91 3.27132.ijpeg 99.74 0.25 0.01 92.6 6.38 1.02134.perl 94.93 4.65 0.42 92.64 5.78 1.58147.vortex 91.65 7.11 1.25 89.38 9.16 1.46101.tomcatv 91.61 7.3 1.09 87.96 9.96 2.08102.swim 97.96 2.04 0 50.27 31.71 18.03103.su2cor 96.48 3.23 0.28 85.22 8.14 6.64104.hydro2d 98.28 1.43 0.29 89.41 3.55 7.04Average 95.873.49 0.6286.34 9.41 4.25

BenchmarksI-Cache D-Cache

Page 38: High-Performance Low-Power  Cache Memory Architectures

実験的評価 ー性能と消費エネルギ (1/2) ー

0

0.5

1

1.5

2

0

0.1

0.2

0.3

0.4

Nor

mal

ized

Tca

che

Nor

mal

ized

Eca

che

124.m88ksim 129.compress 132.ijpeg 102.swim 102.swim 104.hydro2d099.go 126.gcc 130.li 134.perl 101.tomcatv 103.su2cor

段階型 ウェイ予測型Instruction Cache

Page 39: High-Performance Low-Power  Cache Memory Architectures

0

0.5

1

1.5

2

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

段階型 ウェイ予測型Data Cache

Nor

mal

ized

Tca

che

Nor

mal

ized

Eca

che

実験的評価 ー性能と消費エネルギ (2/2) ー

124.m88ksim 129.compress 132.ijpeg 102.swim 102.swim 104.hydro2d099.go 126.gcc 130.li 134.perl 101.tomcatv 103.su2cor

Page 40: High-Performance Low-Power  Cache Memory Architectures

おわりに (1/2)

ウェイ予測セット・アソシアティブ・キャッシュの提案1. メモリ参照パタンをウェイ予測テーブルに記録2. 参照データを有するウェイを予測3. 無駄なウェイアクセスを回避し省エネルギ化を達成

CMR = 0.02TMainMemory = 10*TCacheEMainMemory = 10*ECache

72%72%AMAE = ECache + CMR * 2 * EMainMemory51%51%

5%5%AMAT = TCache + CMR * 2 * TMainMemory4%4%

従来型 4 ウェイ SA データキャッシュと比較(124.m88ksim)

Page 41: High-Performance Low-Power  Cache Memory Architectures

おわりに (2/2)

ウェイ予測テーブル・アクセスに伴う性能オーバヘッドを評価ウェイ予測テーブル・アクセスに伴う消費エネルギ・オーバヘッドを評価キャッシュ・サイズ、ライン・サイズ、連想度が与える影響を調査ウェイ予測テーブル・サイズが与える影響を調査

Page 42: High-Performance Low-Power  Cache Memory Architectures

第 4 章

ヒストリ・ベース・タグ比較キャッシュヒストリ・ベース・タグ比較キャッシュアーキテクチャアーキテクチャ

MainMemory

Time Energy

Cache

Time EnergyCMR

30% サブバンキング手法を用いた従来型 DM キャッシュと比較

Page 43: High-Performance Low-Power  Cache Memory Architectures

従来型キャッシュ

Tag LineTag Index Offset

タグメモリ データメモリReference-address

Hit? Word Data

MUX

Direct-Mapped Cache

ECache = Etag + Edata

Page 44: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  用語の定義  -

動的基本ブロック

分岐先アドレス

条件不成立の分岐命令

条件成立の分岐命令

( 静的 )基本ブロック

動的基本ブロック

•1個以上の連続した静的基本ブロックで構成•サイズはブロック中の条件付分岐命令に依存•先頭はある分岐命令の分岐先アドレス•最終は次に出現する taken 分岐命令のアドレス

実行フロー

Page 45: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  コンセプト (1/2)   -

命令キャッシュ・アクセスでは極めて高いヒット率→ほとんどのタグ比較結果は一致

従来のキャッシュではアクセスごとにタグ比較を実行

タグ比較を行う事無しに参照命令がキャッシュ中に存在するか否かを判定可能?

→ タグ比較に要するエネルギーを毎サイクル消費

にも関わらず...

→ タグ比較処理を省略して低消費電力化を実現!

Page 46: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  コンセプト  (2/2)   -

事実 1 :命令キャッシュのヒット率は極めて高い→ キャッシュ内容の更新は稀にしか発生しない

事実 2 :プログラムはループ構造に基づく→ 動的基本ブロックは繰り返し実行される

ある動的基本ブロックの実行において、•過去に実行された事があり、かつ、•その時から現在までに 1度もミスが発生していないならば、タグ比較処理を省略可能!

Page 47: High-Performance Low-Power  Cache Memory Architectures

従来型とヒストリ・ベース型の比較ー従来型ー

CPUCache

マイクロ・コンピュータ 田丸・安浦 著

動作原理について調べ

たい!

動作原理に関する本の場所 本の確認(タグ比較)

本を開く(ライン読出し)

CPU Cache

マイクロ・コンピュータ 田丸・安浦 著

もう1度、動作原理について調べ

たい!

動作原理に関する本の場所 本の確認(タグ比較)

本を開く(ライン読出し)

Page 48: High-Performance Low-Power  Cache Memory Architectures

従来型とヒストリ・ベース型の比較ーヒストリ・ベース型ー

CPUCache

マイクロ・コンピュータ 田丸・安浦 著

動作原理について調べ

たい!

動作原理に関する本の場所 本の確認(タグ比較)

本を開く(ライン読出し)

CPU Cache

マイクロ・コンピュータ 田丸・安浦 著

もう1度、動作原理について調べたい!さっき調べたから、まだあるはずだ!

もう1度、動作原理について調べたい!さっき調べたから、まだあるはずだ!

動作原理に関する本の場所 本を開く(ライン読出し)

X

Page 49: High-Performance Low-Power  Cache Memory Architectures

?

1. 時刻 T にて動的基本ブロック A を実行•タグ比較を実行•実行足跡を残すA $

ヒストリ・ベース・タグ比較-  実行履歴  -

2 . キャッシュ・ミスが発生したら全ての足跡を消去

3 . 時刻 T+x にて動的基本ブロック A を再度実行

•足跡が残っていればタグ比較を省略

AA $

Page 50: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  実行足跡の記録  -

BTB(Branch Target Buffer) を利用して実行足跡を記録

Branch Inst. Addr. Target Address

Branch Inst. Addr. Target Address

BTB

EFT EFN

Top

Tail

Not-taken

$

TCO

Tag-Comparisonis Omitted

Prediction Result

Page 51: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

1-C

実行フロー

BTB 内部状態

時刻( インタレーション番号 - 分岐命令のアドレス )

BTB エントリ ( 分岐命令 )

Page 52: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

Performing!

Page 53: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Performing!

Page 54: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Performing!

Page 55: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Performing!

Page 56: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Omitting!

Page 57: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Omitting!

Page 58: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Omitting!

Page 59: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Omitting!

Page 60: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Performing!

Page 61: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-D

Performing!

Page 62: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-D

Performing!

Page 63: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-D

Branch-D

EFN of Branch-C

Performing!

Page 64: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-D

Branch-D

EFN of Branch-C

Omitting!

Page 65: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-C5-D

EFN of Branch-C

Omitting!Branch-D

Branch-D

Branch-D

Page 66: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-C5-D

EFN of Branch-C

Omitting!Branch-D

Branch-D

Branch-D

Page 67: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-C5-D

Branch-C6-C

EFN of Branch-C

Omitting!Branch-D

Branch-D

Branch-D

Branch-D

Page 68: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-C5-D

Branch-C6-C

EFN of Branch-C

Omitting!Branch-D

Branch-D

Branch-D

Branch-D

Page 69: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-C5-D

Branch-C6-C

Branch-C6-D

EFN of Branch-C

Omitting!Branch-D

Branch-D

Branch-D

Branch-D

Branch-D

Page 70: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-C5-D

Branch-C6-C

Branch-C6-D

EFN of Branch-C

Branch-D

Branch-D

Branch-D

Branch-D

Branch-D

Omitting!

Page 71: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  動作例  -

Branch-C7-B

Top

Branch to F

Branch to A

Branch to A

Top

A

B

C

D

F

1234 567

IterationCount

EFT EFN TCO

Branch-C1-C

Branch-C2-C

Branch-C3-C

Branch-C4-C

Branch-C4-D

Branch-C5-C

Branch-C5-D

Branch-C6-C

Branch-C6-D

EFN of Branch-C

Branch-D

Branch-D

Branch-D

Branch-D

Branch-D

Branch-D

Branch-B

Performing!

Page 72: High-Performance Low-Power  Cache Memory Architectures

命令キャッシュ・サイズ:命令キャッシュ連想度:

命令キャッシュ・ラインサイズ:分岐予測機構:

BPT総エントリ数:BTB総エントリ数:

RAS(Return Address Stack) :

32 KBダイレクト・マップ32 B2ビット・カウンタ20482048 (512 セットの 4 ウェイ )8

評価ーハードウェア構成ー

Page 73: High-Performance Low-Power  Cache Memory Architectures

評価-  実験結果   -

No

rma

lize

d T

ota

l Cou

nt o

f T

ag-

Com

pari

son

s

0

0.2

0.4

0.6

0.8

1

099.go 129.compress 130.li 134.perl 102.swim 110.applu 141.apsi124.m88ksim 126.gcc 132.ijpeg 147.vortex 107.mgrid 125.turb3d

FP Programs

Integer Programs

Page 74: High-Performance Low-Power  Cache Memory Architectures

おわりに (1/2)

ヒストリ・ベース・タグ比較・キャッシュの提案

1. プログラム実行の足跡を BTB に記録2. 参照データのキャッシュ滞在状況を予測3. 無駄なタグ比較を回避し省エネルギ化を達成

CMR = 0.009TMainMemory = 10*TCacheEMainMemory = 10*ECache

30%30%AMAE = ECache + CMR * 2 * EMainMemory25%25%

AMAT = TCache + CMR * 2 * TMainMemory

従来型サブバンク DM キャッシュと比較(107.mgrid)

Page 75: High-Performance Low-Power  Cache Memory Architectures

おわりに (2/2)

関連技術 ( インターライン・タグ比較方式 ) との比較BTB アクセスにおける消費エネルギ・オーバヘッドを評価キャッシュ・サイズ、 BTB連想度が与える影響を調査

Page 76: High-Performance Low-Power  Cache Memory Architectures

第 5 章

動的可変ラインサイズ・キャッシュ動的可変ラインサイズ・キャッシュアーキテクチャアーキテクチャ

MainMemory

Time Energy

Cache

Time EnergyCMR

37%従来型 DM キャッシュと比較 52%

Page 77: High-Performance Low-Power  Cache Memory Architectures

高メモリバンド巾の活用

ラインサイズミス・ペナルティ

ラインサイズミス・ペナルティ

Processor Cache

Main Memory

(On-Chip SRAM)

(Off-Chip DRAM)

Processor Cache

(On-Chip SRAM)

Main Memory(Off-Chip DRAM)

AMAT = TCache + CMR * 2 * TMainMemoryTMainMemory = TDRAM + LineSize/BandWidth

Page 78: High-Performance Low-Power  Cache Memory Architectures

つまり...

CPU Cache Main Memory

CPU Cache Main Memory

Page 79: High-Performance Low-Power  Cache Memory Architectures

ラインサイズ vs. ミス率メモリ参照の空間的局所性が高いプログラム

プリフェッチ効果によるヒット率の向上

14.012.010.08.06.04.02.00.0

16 32 64 128 256

104.hydro2d072.sc

052.alvinn

Mis

s R

ate

(%)

Line Size [byte]

メモリ参照の空間的局所性が低いプログラム頻繁なコンフリクト発生によるヒット率の低下

14.012.010.08.06.04.02.00.0

16 32 64 128 256

Mis

s R

ate

(%)

Line Size [byte]

134.perl099.go

Page 80: High-Performance Low-Power  Cache Memory Architectures

つまり...ーラインサイズが小さい場合ー

Cache Main Memory

スーパスカラ・プロセッサ

スーパスカラについて調べたい!

並列処理マシン

回路設計

OS

マイクロ・コンピュータ 

レイアウト技術

スーパスカラ・プロセッサOS

スーパスカラについて調べたい!

マイクロ・コンピュータ 

スーパスカラ・プロセッサ

HIT!

MISS!

並列処理ついて調べたい! スーパスカラ・プロセ

ッサ

MISS! 並列処理マシン

Page 81: High-Performance Low-Power  Cache Memory Architectures

つまり...ーラインサイズが大きく、空間的局所性が高い場合ー

Cache Main Memory

スーパスカラ・プロセッサ

スーパスカラについて調べたい!

並列処理マシン

回路設計

OS

マイクロ・コンピュータ 

レイアウト技術

スーパスカラ・プロセッサ

並列処理マシン

並列処理ついて調べたい! スーパスカラ・プロセ

ッサ並列処理マシンHIT!

スーパスカラについて調べたい! スーパスカラ・プロセ

ッサ

HIT! 並列処理マシン

MISS!

Page 82: High-Performance Low-Power  Cache Memory Architectures

つまり...ーラインサイズが大きく、空間的局所性が低い場合ー

Cache Main Memory

スーパスカラ・プロセッサ

スーパスカラについて調べたい!

並列処理マシン

回路設計

OS

マイクロ・コンピュータ 

レイアウト技術

スーパスカラ・プロセッサ

並列処理マシン

スーパスカラについて調べたい! スーパスカラ・プロセ

ッサ

MISS! 並列処理マシン

OS について調べたい!

OS

レイアウト技術

MISS!

MISS!

Page 83: High-Performance Low-Power  Cache Memory Architectures

高メモリバンド巾活用の問題点DRAM/ ロジック混載 LSI の特徴である高メモリバンド巾を活用するにはラインサイズを拡大する必

要あり !

低い空間的局所性

AMAE = ECache + CMR * 2 * EMainMemory

AMAT = TCache + CMR * 2 * TMainMemory

不必要なデータ・リプレイスによるヒット率の低下

Page 84: High-Performance Low-Power  Cache Memory Architectures

従来の解決方法セット・アソシアティブ方式の採用により

コンフリクト・ミスを削減

AMAE = ECache + CMR * 2 * EMainMemory

AMAT = TCache + CMR * 2 * TMainMemory

Page 85: High-Performance Low-Power  Cache Memory Architectures

動的可変ラインサイズ・キャッシューコンセプト-

A B C DE

A B C D A B C D

高い局所性低い局所性

最小ライン 中間ライン 最大ライン

D-VLSCache

Main Memory

サブアレイ

実行中に空間的局所性の度合いを予測し、ラインサイズを動的に変更

Page 86: High-Performance Low-Power  Cache Memory Architectures

つまり...

CPU Cache Main Memory

空間的局所性の度合いが低い場合

CPU Cache Main Memory

空間的局所性の度合いが高い場合

Page 87: High-Performance Low-Power  Cache Memory Architectures

AMAE = ECache + CMR * 2 * EMainMemory

AMAT = TCache + CMR * 2 * TMainMemory

動的にラインサイズを変更し、無駄なデータリプレイスメントを回避

動的可変ラインサイズ・キャッシュー狙い-

Page 88: High-Performance Low-Power  Cache Memory Architectures

動的可変ラインサイズ・キャッシュー用語の定義-

Main Memory

Y C D

サブラインサブライン ラインライン

セクタセクタ

参照セクタ参照セクタ参照サブライン参照サブライン

隣接サブライン隣接サブライン

メモリメモリセクタセクタ

現在のメモリ参照Ref. YRef. CRef. B

B

A C DB

Y

Cache

1. 参照サブラインを除く参照セクタ内のサブライン

2. 参照サブラインと同一メモリセクタに属するサブライン .

3. キャッシュ滞在中、少なくとも 1 回は参照されたサブライン

Y, C and D

C and D

C

Page 89: High-Performance Low-Power  Cache Memory Architectures

動的可変ラインサイズ・キャッシュー内部構成-

ダイレクト・マップ DVLS キャッシュ(ラインサイズは 32バイト、 64バイト、 128バイトで可変)

Reference Flag Tag Line

Line-SizeDeterminer

MUX Drive

Tag Index OffsetLoad/Store Data

Main Memory

Line-SizeSpecifier

32B 32B 32B 32B

SA

SA:SubArray

Page 90: High-Performance Low-Power  Cache Memory Architectures

動的可変ラインサイズ・キャッシューラインサイズ決定アルゴリズム-

中間ライン

最小ライン 最大ライン

Other Patterns Other Patterns

Other Patterns 参照セクタ

参照サブライン、又は、隣接サブライン

Initial

Line-Size Specifier

Page 91: High-Performance Low-Power  Cache Memory Architectures

評価ーキャッシュ・ミス率 (1/2) ー

No

rma

lize

d C

ach

e M

iss

Ra

tes

to th

e R

esu

lt o

f Be

st F

ixe

d-L

ine-

Siz

e

0.5

1

1.5

2

099.go 126.gcc 132.ijpeg 147.vortex 102.swim 104.hydro2d124.m88ksim 130.li 134.perl 101.tomcatv 103.su2cor

2.9FIX32FIX64FIX128DVLS128-32

Page 92: High-Performance Low-Power  Cache Memory Architectures

評価ーキャッシュ・ミス率 (2/2) ー

No

rma

lize

d C

ach

e M

iss

Ra

tes

to 1

6K

B F

IX12

8

0

0.2

0.4

0.6

0.8

1

099.go 126.gcc 132.ijpeg 147.vortex 102.swim 104.hydro2d124.m88ksim 130.li 134.perl 101.tomcatv 103.su2cor

1.04

MIX-IntFp

32KB FIX12816KB DVLS128-32

Page 93: High-Performance Low-Power  Cache Memory Architectures

評価ー平均ライン・サイズー

Ave

rag

e C

ach

e L

ine

-Siz

e [b

yte

]

0

32

64

96

128

099.go 126.gcc 132.ijpeg 147.vortex 102.swim 104.hydro2d124.m88ksim 130.li 134.perl 101.tomcatv 103.su2cor MIX-IntFp

16KB DVLS128-32

Page 94: High-Performance Low-Power  Cache Memory Architectures

評価ー主記憶消費エネルギー

Nor

mal

ized

CM

R*2*

EMai

nMem

ory

to 1

6KB

FIX1

28

0

0.2

0.4

0.6

0.8

1

099.go 126.gcc 132.ijpeg 147.vortex 102.swim 104.hydro2d124.m88ksim 130.li 134.perl 101.tomcatv 103.su2cor MIX-IntFp

32KB FIX12816KB DVLS128-32

Page 95: High-Performance Low-Power  Cache Memory Architectures

おわりに (1/2)

動的可変ラインサイズ・キャッシュの提案1. アクセス・パタンを参照フラグに記録2. 空間的局所性の度合いを予測しラインサイズを変更

3. 無駄なデータ・リプレイスメントを回避し、高性能化と低消費エネルギ化を達成

CMR = 0.06TMainMemory = 10*TCacheEMainMemory = 10*ECache

37%37%AMAE = ECache + CMR * 2 * EMainMemory34%34%

AMAT = TCache + CMR * 2 * TMainMemory

従来型 DM キャッシュと比較(MIX-IntFp)

37%37% 52%52%

20%20%

Page 96: High-Performance Low-Power  Cache Memory Architectures

おわりに (2/2)

他の従来型キャッシュ ( セット・アソシアティブ方式 ) との比較静的可変ラインサイズ・キャッシュに関する評価ハードウェア・コストに関する評価キャッシュ・サイズが与える影響を調査オンチップ DRAM の性能 / 消費エネルギ特性が与える影響を調査ラインサイズ指定フラグ・テーブルのサイズが与える影響を調査

Page 97: High-Performance Low-Power  Cache Memory Architectures

第 6 章

まとめと今後の課題

Page 98: High-Performance Low-Power  Cache Memory Architectures

本論文では (1/2)

動的適応可能な高性能 / 低消費電力キャッシュ・アーキテクチャ

• ウェイ予測セット・アソシアティブ・キャッシュ• ヒストリ・ベース・タグ比較キャッシュ• 動的可変ラインサイズ・キャッシュ

1. メモリ参照パタン ( ヒストリ ) を採集2. キャッシュ内部処理結果を予測3. 必要のない処理を削除

Page 99: High-Performance Low-Power  Cache Memory Architectures

本論文では (2/2)

WP

HTC

DVLS

ECache 無駄なウェイ・アクセス

EMainMemoryCMR

ECache 無駄なタグ比較

無駄なデータ・リプレイス

削減項目 削除対象となる処理

AMAE = ECache + CMR * 2 * EMainMemory

AMAT = TCache + CMR * 2 * TMainMemory

Page 100: High-Performance Low-Power  Cache Memory Architectures

提案キャッシュの組み合わせ (1/2)

WP: ウェイ予測セット・アソシアティブ・キャッシュHTC: ヒストリ・ベース・タグ比較キャッシュDVLS: 動的可変ラインサイズ・キャッシュDM: ダイレクト・マップ方式SA: セット・アソシアティブ方式

Instruction

DM SA

WPWP

HTCHTC

DVLSDVLS

Data

DM SA

Page 101: High-Performance Low-Power  Cache Memory Architectures

MainMemory

Time Energy

Cache

Time EnergyCMR

WP+DVLSWP+DVLS

HTC+DVLSHTC+DVLS

WP: ウェイ予測セット・アソシアティブ・キャッシュHTC: ヒストリ・ベース・タグ比較キャッシュDVLS: 動的可変ラインサイズ・キャッシュ

I- or D-Cache

I-Cache

提案キャッシュの組み合わせ (2/2)

Page 102: High-Performance Low-Power  Cache Memory Architectures

今後の研究課題 大規模化、複雑化するオンチップ・キャッシュ

• 大容量化と高速化の両立 ( 高性能 )• メモリセル・リーク電流 ( 低消費電力 )• 欠陥救済 ( 低コスト、高信頼性 )• 設計検証(低設計コスト、高信頼性)

最適化アプローチ

HW による動的最適化

SW による動的最適化

SW による静的最適化

本研究

Page 103: High-Performance Low-Power  Cache Memory Architectures

Buck Up Slides(Introduction)

Page 104: High-Performance Low-Power  Cache Memory Architectures

プロセッサーメモリ間の性能差CPU60%/yr.

DRAM7%/yr.

1

10

100

10001980

1981

1983

1984

1985

1986

1987

1988

1989

1990

1991

1992

1993

1994

1995

1996

1997

1998

1999

2000

1982

Per

form

ance

Year

Performance GapPerformance Gap

D. Patterson et al.,”A Case for Intelligent RAM,” IEEE Micro, vol.17, no.2, March/April 1997.

Page 105: High-Performance Low-Power  Cache Memory Architectures

提案キャッシュ・アーキテクチャ (2/4)

MainMemory

Time Energy

Cache

Time EnergyCMR

WPWP

HTCHTC

DVLSDVLS

WP: ウェイ予測セット・アソシアティブ・キャッシュHTC: ヒストリ・ベース・タグ比較キャッシュDVLS: 動的可変ラインサイズ・キャッシュ

Page 106: High-Performance Low-Power  Cache Memory Architectures

評価ー WP キャッシュ vs. DVLS キャッシュー

FIX128FIX128

W2FIX128

W4FIX128Double

P128W4

WP128WP128W4W4

DVLSDVLS128-32128-32

Cache Size

#of Ways

Line Size

16KB 16KB 16KB 32KB 16KB 16KB 16KB

1 2 4 1 4 4 1

128B 128B 128B 128B 128B 128B 32,64,128B

TCache

TMainMemory

1.000 1.470 1.883 1.195 1.000

10.000

3.7661.883

1.8833.766

ECache

EMainMemory

1.000 1.160 1.480 1.838 1.090

10.000 * AverageLineSize/128B

0.3920.029

0.3701.480

Cache HitCache Miss

Prediction HitOthers

P128W4 WP128W4TCache [Tunit] is based on CACTI2ECache [Eunit] is based on Kamble’s paper

Page 107: High-Performance Low-Power  Cache Memory Architectures

評価ー平均メモリアクセス時間ー

No

rma

lize

d A

MA

T to

FIX

128

099.go 124.m88ksim 126.gcc 130.li 132.ijpeg 134.perl 147.vortex0

0.5

1

1.5

2 2.7 2.4 2.5 2.0

FIX128W2FIX128W4FIX128Double

P128W4WP128W4DVLS128-32

Integer Programs

Page 108: High-Performance Low-Power  Cache Memory Architectures

評価ー平均メモリアクセス時間ー

No

rma

lize

d A

MA

T to

FIX

128

052.alvinn 101.tomcatv 103.su2cor 104.hydro2d0

0.5

1

1.5

2 2.7 2.1

FIX128W2FIX128W4FIX128Double

P128W4WP128W4DVLS128-32

Floating-Point Programs

Page 109: High-Performance Low-Power  Cache Memory Architectures

評価ー平均メモリアクセス消費エネルギー

No

rma

lize

d A

MA

E to

FIX

128

099.go 124.m88ksim 126.gcc 130.li 132.ijpeg 134.perl 147.vortex0

0.5

1

1.5 2.7

FIX128W2FIX128W4FIX128Double

P128W4WP128W4DVLS128-32

Integer Programs

Page 110: High-Performance Low-Power  Cache Memory Architectures

評価ー平均メモリアクセス消費エネルギー

052.alvinn 101.tomcatv 103.su2cor 104.hydro2d

Floating-Point Programs

No

rma

lize

d A

MA

E to

FIX

128

0

0.5

1

1.5

FIX128W2FIX128W4FIX128Double

P128W4WP128W4DVLS128-32

Page 111: High-Performance Low-Power  Cache Memory Architectures

評価ー ED 積 (AMAT * AMAE) -

No

rma

lize

d A

MA

E to

FIX

128

099.go 124.m88ksim 126.gcc 130.li 132.ijpeg 134.perl 147.vortex0

0.5

1

1.5 1.5

FIX128W2FIX128W4FIX128Double

P128W4WP128W4DVLS128-32

Integer Programs

Page 112: High-Performance Low-Power  Cache Memory Architectures

評価ー ED 積 (AMAT * AMAE) -

No

rma

lize

d A

MA

E to

FIX

128

0

0.5

1

1.51.6

FIX128W2FIX128W4FIX128Double

P128W4WP128W4DVLS128-32

052.alvinn 101.tomcatv 103.su2cor 104.hydro2d

Floating-Point Programs

1.6

Page 113: High-Performance Low-Power  Cache Memory Architectures

評価ー平均メモリアクセス時間ー

Page 114: High-Performance Low-Power  Cache Memory Architectures

評価ー平均メモリアクセス消費エネルギー

Page 115: High-Performance Low-Power  Cache Memory Architectures

Buck Up Slides(Way-Predicting Set-Associative Cache)

Page 116: High-Performance Low-Power  Cache Memory Architectures

WP キャッシュ -基本概念ー

キャッシュ・アクセス前に、参照データが存在するウェイを予測ウェイ予測型キャッシュウェイ予測型キャッシュ

キャッシュ・ヒットの場合、唯一のウェイのみが参照データを有する

つまり...

残りのウェイ・アクセスは無意味!

Page 117: High-Performance Low-Power  Cache Memory Architectures

評価 ー概要ー

従来型段階型ウェイ予測型

評価対象•キャッシュ・サイズ → 8KB I-Cache, 16KB D-Cache

•ライン・サイズ → 16B•連想度 → 4 キャッシュ・ミス率は同一

評価項目消費エネルギ : キャッシュ・アクセス消費エネルギ (ECache)性能 :キャッシュ・アクセス当たりの平均所要クロック数 (TCache)

ECache = Ntag x Etag + Ndata x Edata

1回のアクセスで読み出されるタグ数

1個のタグ読み出しに要するエネルギー

1個のライン読み出しで消費するエネルギー

1回のアクセスで読み出されるライン数

Page 118: High-Performance Low-Power  Cache Memory Architectures

評価 ー実験環境ー

099.go, 124.m88ksim, 126.gcc, 129.compress,130.li, 132.ijpeg, 134.perl, 147.vortex

101.tomcatv, 102.swim, 103.su2cor, 104.hydro2d

SPECint95

SPECfp95

Benchmarks

BenchmarkProgram

Compile(GNU CC)

ObjectCode

QPT RUN

AddressTrace

CacheSimulator

ObjectCode

UltraSPARC

Page 119: High-Performance Low-Power  Cache Memory Architectures

実験的評価 ー予測ヒット率ー

予測ヒット率予測ミス率キャッシュ・ミス率

Average of all benchmarks

92.2% 87.4%

I-Cache D-Cache

90%以上半分以上のベンチマーク

85%以上半分以上のベンチマーク

残り全てのベンチマーク 102.swim を除く残り全てのベンチマーク

ほぼ全てのベンチマークにおいて、高予測ヒット率を達成!

予測ヒット率

Page 120: High-Performance Low-Power  Cache Memory Architectures

評価 ーキャッシュ消費エネルギ (1/2) ー

0

0.5

1

1.5

2

0

0.1

0.2

0.3

0.4

Nor

mal

ized

Tca

che

Nor

mal

ized

Eca

che

124.m88ksim 129.compress 132.ijpeg 102.swim 103.su2cor 104.hydro2d099.go 126.gcc 130.li 134.perl 101.tomcatv 103.su2cor

Instruction Cache

Page 121: High-Performance Low-Power  Cache Memory Architectures

評価 ーキャッシュ消費エネルギ ー

0

0.5

1

1.5

2

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

124.m88ksim 129.compress 132.ijpeg 102.swim 103.su2cor 104.hydro2d099.go 126.gcc 130.li 134.perl 101.tomcatv 103.su2cor

Data Cache

Nor

mal

ized

Tca

che

Nor

mal

ized

Eca

che

Page 122: High-Performance Low-Power  Cache Memory Architectures

評価 ー実験的評価 (6/6) ー

100

200

0

Nor

mal

ized

Res

ult

s (%

)

Ecache Tcache

100

200

0

Nor

mal

ized

Res

ult

s (%

)

Ecache Tcache

I-Cache D-Cache

28.1%

104.1%

199.4%

35.2%

113.0%

195.8%

Average of all benchmarks

30.3% 29.4%

従来型 段階型 ウェイ予測型

Page 123: High-Performance Low-Power  Cache Memory Architectures

評価 - 定量的評価 (消費エネルギー・オーバヘッ

ド) -ウェイ予測回路の動作単純な組み合わせ回路で実現でき、消費エネルギーは極めて小さい

ウェイ予測テーブルへのアクセス•デコード → アドレス・デコーダによるオーバヘッドは無視できるほど小さい•書込み → 予測ヒットの場合は書込みが発生しない•読み出し → アクセス毎にウェイ予測フラグの読み出しが発生

ウェイ予測テーブルから読み出される信号線の遷移確立を測定

I-Cache で平均 0.4 ビットD-Cache で平均 0.8 ビット

消費エネルギー・オーバヘッドは無視できるほど小さい消費エネルギー・オーバヘッドは無視できるほど小さい

Page 124: High-Performance Low-Power  Cache Memory Architectures

評価 - 定量的評価 (性能オーバヘッド) -ウェイ予測フラグを読み出すための遅延時間

性能オーバヘッドは回避可能性能オーバヘッドは回避可能

命令キャッシュ → 通常、 PC は専用インクリメンタを搭載しており、 参照アドレスが高速に計算される。

データキャッシュ → ALU による参照アドレス計算と ウェイ予測フラグ読み出しの逐次処理

参照アドレス生成 + ウェイ予測フラグ読み出し

Page 125: High-Performance Low-Power  Cache Memory Architectures

Buck Up Slides(History-based Tag-Comparison Cache)

Page 126: High-Performance Low-Power  Cache Memory Architectures

低消費電力キャッシュ-   Esram_tag/data の削減  -

メモリ階層 (L0 キャッシュ ) の追加

L1 Cache

L0 CacheProcessor

•フィルタ・キャッシュ•S- キャッシュ•ブロック・バッファリング

キャッシュ・モジュールの分割Cache•MDM キャッシュ

マルチプル・アクセス・キャッシュ•MRU キャッシュ•ハッシュ・リハッシュ・キャッシュ

Sequential Way-Access

way

0

way

1

way

2

way

3

Page 127: High-Performance Low-Power  Cache Memory Architectures

低消費電力キャッシュ-   Esram_data の削減  -

水平方向へのメモリ分割•キャッシュ・サブバンキング

シーケンシャル・アクセス•シーケンシャル・アクセス・キャッシュ•パイプライン・キャッシュ

Tag Line

Tag Line

Hit!Miss!

Replace

Page 128: High-Performance Low-Power  Cache Memory Architectures

低消費電力キャッシュ-   Esram_tag の削減  -

条件付きタグ比較 ( タグ比較回数の削減 )

•インターライン・タグ比較

イントラライン・シーケンシャル・フロー連続アドレス、かつ、同一キャッシュ・ライン

イントラライン・ノンシーケンシャル・フロー非連続アドレス、かつ、同一キャッシュ・ライン

インターライン・シーケンシャル・フロー連続アドレス、かつ、異なるキャッシュ・ライン

インターライン・ノンシーケンシャル・フロー非連続アドレス、かつ、異なるキャッシュ・ライン

連続して実行される命令 i と j の関係

インターライン・フロー時のみ命令 j のタグ比較を実行

Page 129: High-Performance Low-Power  Cache Memory Architectures

低消費電力キャッシュ-   Esram_tag 削減の重要性  -

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

8(1) 4(2) 2(4) 1(8)# of words in a Subbank (Total # of Subbanks)

Bre

akd

own

of E

ne

rgy

0%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

8(1) 4(2) 2(4) 1(8)

32-bit CPU 64-bit CPU

Esram_data_bit Esram_tag_bit

Esram_others

This calculation is based on Kamble, et. Al., “Analytical energy Dissipation Models for Low Power Caches”, I S LPED’97

CS = 32 KBL S = 32 B

CS = 64 KBLS = 64 B

CS: Cache SizeLS: Line Size

Page 130: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  基本動作 (1/2)   -

Start

Cache hit?

BTB hit?

RAS?

Taken Prediction?

RCT TCO

1 RCT

Go to start

RCN TCO

1 RCN

0 all RCTs0 all RCNs

N

Y

YN

0 TCOY

N

Y N

BTB アクセス時の動作

Page 131: High-Performance Low-Power  Cache Memory Architectures

ヒストリ・ベース・タグ比較-  基本動作 (2/2)   -

PC復元時の動作

Start

BTB update?

WrongPrediction?

RCN TCO

1 RCN

Go to start

RCT TCO

1 RCT

0 all RCTs0 all RCNs

N

0 TCO

Y

Y N

Replacement?Y

N

1 RCT0 RCN

TCO RCT TCO RCN

Page 132: High-Performance Low-Power  Cache Memory Architectures

評価-  実験環境  -

CacheSimulator

Branch Prediction Table

Branch Target Buffer

Functional Execution

SimpleScalar Processor

SimpleScalarObject Code Address Traces

Report

Total # of tag-comparison

8 integer and 5 FP programs from the SPEC95

Page 133: High-Performance Low-Power  Cache Memory Architectures

評価ー評価対象 (1/2) ー•C-TC (Conventional Tag-Comparison : Base)

•IL-TC (Interline Tag-Comparison)

•H-TC (History-based Tag-Comparison)

•H-TCideal (History-based Tag-Comparison)

•HIL-TC (History-based Interline Tag-Comparison)

→命令フェッチ毎にタグ比較

→ インターライン・フロー時のみタグ比較

→TCOフラグに従ってタグ比較

→ ハードウェア制約を無視した理想的な H-TC→ パーフェクト命令キャッシュ、かつ、フルアソシアティブ BTB

→IL-TC と H-TC の組み合わせ→TCOフラグが 0 、かつ、インターライン・フロー時のみタグ比較

Page 134: High-Performance Low-Power  Cache Memory Architectures

評価-  実験結果 (1/2)   -

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.909

9.go

124.

m88

ksim

129.

com

pres

s

126.

gcc

130.

li

132.

ijpeg

134.

perl

147.

vort

ex

102.

swim

107.

mgr

id

110.

appl

u

125.

turb

3d

141.

apsi

IL-TCH-TCH-TCidealHIL-TC

No

rma

lize

d T

ota

l Cou

nt o

f T

ag-

Com

pari

son

s

Page 135: High-Performance Low-Power  Cache Memory Architectures

評価-  評価対象 (1/2)   -

•C-TC (Conventional Tag-Comparison : Base)

•IL-TC (Interline Tag-Comparison)

•H-TC (History-based Tag-Comparison)

•HIL-TC (History-based Interline Tag-Comparison)

→命令フェッチ毎にタグ比較

→ インターライン・フロー時のみタグ比較

→TCOフラグに従ってタグ比較

→IL-TC と H-TC の組み合わせ→TCOフラグが 0 、かつ、インターライン・フロー時のみタグ比較

Page 136: High-Performance Low-Power  Cache Memory Architectures

評価-  実験結果 (2/2)   -

IL-TC ( インターライン・タグ比較 )

•全てのプログラムにおいて 70% 程度削減H-TC ( ヒストリ・ベース・タグ比較 )

•浮動小数点プログラムにおいて 90~ 99% 削減•幾つかの整数プログラムにおいて 80~ 90% 削減•その他の整数プログラムにおいて低い削減率

H-TCideal ( 理想的なヒストリ・ベース・タグ比較 )•全てのプログラムにおいて高い削減率

HIL -TC (H-TC と IL-TC の組み合わせ )

•全てのプログラムにおいて高い削減率

Page 137: High-Performance Low-Power  Cache Memory Architectures

低消費電力キャッシュ-  インターライン・タグ比較方式  -

インターライン・フロー時のみ命令 j のタグ比較を実行

同一ライン 異なるライン

イントラライン・フローインターライン・フロー

インター・ラインイントラ・ラインThis Work

Our Work

連続して実行される命令 i と j

Page 138: High-Performance Low-Power  Cache Memory Architectures

評価-  実験結果 (1/2)   -

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.909

9.go

124.

m88

ksim

129.

com

pres

s

126.

gcc

130.

li

132.

ijpeg

134.

perl

147.

vort

ex

102.

swim

107.

mgr

id

110.

appl

u

125.

turb

3d

141.

apsi

IL-TCH-TCHIL-TC

No

rma

lize

d T

ota

l Cou

nt o

f T

ag-

Com

pari

son

s

Page 139: High-Performance Low-Power  Cache Memory Architectures

評価-   HW制約による影響 (1/4)

  -

ヒストリ・ベース・タグ比較•BTB リプレイス発生時に全ての実行足跡を消去•キャッシュ・ミス発生時に全ての実行足跡を消去

BTB連想度が与える影響は?キャッシュ・サイズが与える影響は?

132.ijpeg :高い削減率099.go, 126.gcc, 147.vortex :低い削減率

Benchmark programs

Page 140: High-Performance Low-Power  Cache Memory Architectures

評価-   HW制約による影響 (2/4)

  -

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

132.ijpeg 099.go 126.gcc 147.vortex

No

rma

lize

d T

ota

l Cou

nts

of

Ta

g-C

ompa

riso

n

BTB連想度が与える影響 (BTB サイズは一定 )

2way8way32way128way512way2048wayH-TCIdeal

Page 141: High-Performance Low-Power  Cache Memory Architectures

評価-   HW制約による影響 (3/4)

  -

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

132.ijpeg 099.go 126.gcc 147.vortex

No

rma

lize

d T

ota

l Cou

nts

of

Ta

g-C

ompa

riso

n

命令キャッシュ・サイズが与える影響

4 KB8 KB16 KB32 KB64 KB512 KBPerfectH-TCideal

Page 142: High-Performance Low-Power  Cache Memory Architectures

評価-   HW制約による影響 (4/4)

  -

ヒストリ・ベース・タグ比較の効果は命令キャッシュ・サイズに大きく依存

トランジスタ集積度の向上に伴いキャッシュ・サイズは増加傾向

今後の CPU においてヒストリ・ベース・タグ比較方式は有効

Page 143: High-Performance Low-Power  Cache Memory Architectures

評価-  エネルギー・オーバヘッド

(1/4)   -

ヒストリ・ベース・タグ比較方式は BTB 拡張を伴う→ 実行足跡 (RCT および RCNフラグ ) の追加

BTB アクセスにおける消費エネルギー・オーバヘッドの影響は?

•実行足跡の読出し /書込み•実行足跡の一括消去

Page 144: High-Performance Low-Power  Cache Memory Architectures

評価-  エネルギー・オーバヘッド

(2/4)   -

実行足跡の読出し /書込み実行足跡の読出し /書込みは BTB ヒット時のみ発生

分岐命令出現率が 20% 、 BTB ヒット率が 100% と仮定すると...

5命令実行に 1度の実行足跡アクセス(1ビットの読出し、および、書込み )

従来方式では、 1命令実行に 1 回のタグ比較( タグメモリ・アクセスおよび比較 )

Page 145: High-Performance Low-Power  Cache Memory Architectures

評価-  エネルギー・オーバヘッド

(3/4)   -

実行足跡の一括消去

0123456789

10

099.

go

124.

m88

ksim

129.

com

pres

s

126.

gcc

130.

li

132.

ijpeg

134.

perl

147.

vort

ex

102.

swim

107.

mgr

id

110.

appl

u

125.

turb

3d

141.

apsi

0.10.090.080.070.060.050.040.030.020.010.00A

ve. #

of E

rase

d F

oo

tpri

nts

p

er E

rase

-Pro

cess

[bit]

Ave. # o

f Era

sed F

oo

tprints

per I-fetch [b

it]

Page 146: High-Performance Low-Power  Cache Memory Architectures

評価-   HW制約による影響 (4/4)

  -

BTB 拡張に伴うエネルギー・オーバヘッドは無視できる程度に小さい

•BTB における実行足跡の読出し /書込み

•BTB における実行足跡の一括消去

従来のタグ比較方式→命令フェッチ毎にタグ比較 ( タグメモリ・アクセスと比較 )

ヒストリ・ベース・タグ比較方式

→命令フェッチ当たり 0.2ビットの読出し /書込み

→命令フェッチ当たり 0.1ビットの消去

Page 147: High-Performance Low-Power  Cache Memory Architectures

Buck Up Slides(Variable Line-Size Cache)

Page 148: High-Performance Low-Power  Cache Memory Architectures

DRAM/ ロジック混載 LSI

•高オンチップ・メモリバンド巾の活用による高性能化•外部入出力ピン駆動回数の削減による低消費電力化

CPU-主記憶間の I/O ピン削除による恩恵

高性能化と低消費電力化を両立できる夢のデバイス !?

どのようなアプリケーションに対しても有効なのか ?もし有効でないなら、

様々なアプリケーションに対応するには ?

Page 149: High-Performance Low-Power  Cache Memory Architectures

評価 ー実験環境-

CacheSimulatorCacheSimulator

BenchmarkProgram

ObjectCode

ObjectCode

Compile(GNU CC) QPT

RUN AddressTrace

Report(Miss Rate)

ベンチマーク・プログラムSPEC92, SPEC959個の整数プログラム5個の浮動小数点プログラム

Report( Replace Count)

Page 150: High-Performance Low-Power  Cache Memory Architectures

Miss Rate for Benchmarks- Integer Programs -

Page 151: High-Performance Low-Power  Cache Memory Architectures

Miss Rate for Benchmarks- FP Programs -

Page 152: High-Performance Low-Power  Cache Memory Architectures

Miss Rate for Benchmark Sets

Page 153: High-Performance Low-Power  Cache Memory Architectures

Hardware OverheadCacheModel

SRAM [bit] Logic [Tr] Total [Tr]

FIX32

FIX64

FIX128

D-VLSD-VLS128-32LSS1128-32LSS1

D-VLSD-VLS128-32LSS8128-32LSS8

140,288

135,680

133,376

140,800140,800

140,800140,800

8,354

11,310

17,988

33,17233,172

21,20821,208

78,498

79,150

84,676

103,572103,572

91,60891,608

* The area of 2-bits SRAM cell is equal to that of one transistor.* Logic design using VHDL (Synopsys VHDL Compiler)

Page 154: High-Performance Low-Power  Cache Memory Architectures

Hit-Time Overhead

Page 155: High-Performance Low-Power  Cache Memory Architectures

Amount of Spatial Locality at a Cache-Sector

Page 156: High-Performance Low-Power  Cache Memory Architectures

Miss Rate versus Cache Size

Page 157: High-Performance Low-Power  Cache Memory Architectures

Breakdown of Miss Rate

Page 158: High-Performance Low-Power  Cache Memory Architectures

評価概要 ー 比較対照 -以下のキャッシュを搭載したオンチップ・メモリパス

Fix128 : 16KB 従来型ダイレクトマップ(ラインサイズは 128B)Fix128W4 : 16KB 従来型 4 ウェイ・セットアソシアティブ(ラインサイズは 128B)Fix128double : 32KB 従来型ダイレクトマップ(ラインサイズは 128B)D-VLS128-32 : 16KBダイレクトマップ動的可変ラインサイズ(ラインサイズは 32B 、 64B 、および、128B で可変)

Page 159: High-Performance Low-Power  Cache Memory Architectures

実験結果 ー ミス率 -

D-VLS128-32 vs. Fix128double5~ 6個のプログラムにおいて、同程度もしくはそれ以下のミス率

D-VLS128-32 vs. Fix128ほとんどのプログラムにおいてヒット率向上

D-VLS128-32 vs. Fix128W4ほとんどのプログラムにおいて高いミス率

Fix128 のミス率で正規化(全プログラム平均)1.0

0.0

0.60.40.2

0.80.76

0.620.42

1.00 Fix128Fix128W4Fix128doubleD-VLS128-32

Page 160: High-Performance Low-Power  Cache Memory Architectures

実験結果 ー リプレイス・カウント -

リプレイス当たりの平均ラインサイズ(全プログラム平均)

D-VLS128-32 でのリプレイス・カウントLine Size

32 bytes64 bytes128 bytes

AverageLine-Size

026.compress

3,164,502243,97914,498

34.68 B

052.alvinn

11,546,4151,465,880

18,806,730

90.22 B

54.5B

128B128B128B

Ave

. L

ine-

Siz

e

Fix128Fix128W4Fix128doubleD-VLS128-32

Page 161: High-Performance Low-Power  Cache Memory Architectures

性能評価 ー 性能モデル -

( CACTI モデルを使用)

平均メモリアクセス時間( AMAT )メモリシステムが、 CPU からのメモリ参照をサービスする際の平均

遅延時間

AMAT = ヒット時間 + ミス率 ×2×ミス・ペナルティ(= 60 ns)

Fix128Fix128W4Fix128doubleD-VLS128-32

ヒッ

ト時

間 

[ns

]

3.5104.115

8.426

3.510

Page 162: High-Performance Low-Power  Cache Memory Architectures

性能評価 ー 平均メモリアクセス時間 

Fix128double vs. Fix128ヒット時間オーバヘッドは少ないため、約 20% の性能向上

Fix128W4   vs. Fix128ヒット時間オーバヘッドに伴い、約 13% の性能低下

D-VLS128-32 vs. Fix128ヒット時間オーバヘッドはないため、約 20% の性能向上

Fix128 の AMAT で正規化(全プログラム平均)1.5

0.0

1.0

0.50.830.82

1.131.00

Fix128Fix128W4Fix128doubleD-VLS128-32

Page 163: High-Performance Low-Power  Cache Memory Architectures

消費エネルギー評価 ー 消費エネルギー・モデル 

-主記憶アクセスにおける消費エネルギー( E )

E = ∑RepCount(n)×Esubarray×n/32bytesN

N = {n|n = 32bytes, 64bytes, 128bytes}

ラインサイズ n での総リプレイス回

32 バイト DRAM サブアレイに対する 2 回のアクセスで消費されるエネルギー

ラインサイズ n における、リプレイス当たりのオンチップ DRAM 消費エネルギー

ただし、従来型キャッシュにおいて、 RepCount(32bytes) および

RepCount(64bytes) は 0

Page 164: High-Performance Low-Power  Cache Memory Architectures

消費エネルギー評価 ー 消費エネルギー -

Fix128 の E で正規化(全プログラム平均)

Fix128W4   vs. Fix128ヒット率向上により約 60% の低消費エネルギー化

D-VLS128-32 vs. Fix128ヒット向上と選択的活性化により約 70% の低消費エネルギー化

0.32

0.720.42

1.001.0

0.0

0.60.40.2

0.8Fix128Fix128W4Fix128doubleD-VLS128-32

Page 165: High-Performance Low-Power  Cache Memory Architectures

性能 / 消費エネルギー評価 ー  ED 積( AMAT×E ) -

D-VLS128-32 vs. Fix128

72% の ED積削減

Fix128 の ED積で正規化(全プログラム平均)

0.280.530.51

1.001.0

0.0

0.60.40.2

0.8

Fix128W4, Fix128double vs. Fix128高性能化( ×/〇)   低消費エネルギー化(○ /×)

高性能化(〇)   低消費エネルギー化(○)

Fix128Fix128W4Fix128doubleD-VLS128-32

Page 166: High-Performance Low-Power  Cache Memory Architectures

CPU: 22% per year

DRAM: 7% per year

Performance GapPerformance Gap

1

10

100

1000

1975 1980 1985 1990 1995 2000

Fre

qu

ency

(M

Hz)

Year

プロセッサーメモリ間の性能差( 動作周波数 )

Page 167: High-Performance Low-Power  Cache Memory Architectures

動的可変ラインサイズ・キャッシュー効果ー

TMemory = CacheHitTime + MissRate×MissPenaltyEMemory = ECache + MissRate×EMain

ラインサイズの縮小によりコンフリクト・ミスの発生を回避→ アクセス時間オーバヘッドを伴う事無くヒット率を向上

ラインサイズに対応したオンチップ DRAM選択的アクセス→主記憶アクセスにおける消費エネルギーの削減

Page 168: High-Performance Low-Power  Cache Memory Architectures

動的可変ラインサイズ・キャッシュー評価ー

1.5

0.0

1.0

0.50.800.81

1.071.00

Fix128Fix128W4Fix128doubleD-VLS128-32

平均メモリアクセス時間 (AMAT)

0.29

0.58

0.32

1.001.0

0.0

0.60.40.2

0.8Fix128Fix128W4Fix128doubleD-VLS128-32

主記憶アクセス消費エネルギー (CMR×EMain)

Page 169: High-Performance Low-Power  Cache Memory Architectures

Performance Evaluations  -Average memory access time-

13

Page 170: High-Performance Low-Power  Cache Memory Architectures

Energy Evaluations  -Average memory access energy-

14

Page 171: High-Performance Low-Power  Cache Memory Architectures

Total Evaluations  -Energy-Delay Product-

15