温度を考慮した3次元積層LSI向け 低消費エネルギーL2キャッシュの提案 ○阿部 祐希† 花田 高彬† 井上 弘士‡ 村上 和彰‡ †九州大学大学院 システム情報科学府 ‡九州大学大学院 システム情報科学研究院 1 発表の流れ • 研究背景 – 3次元積層L2キャッシュのリーク消費電力増加 • 研究目的 • 提案手法 – 温度を考慮したリーク消費電力削減手法 • 有効性評価 • まとめ 2 発表の流れ • 研究背景 – 3次元積層L2キャッシュのリーク消費電力増加 • 研究目的 • 提案手法 – 温度を考慮したリーク消費電力削減手法 • 有効性評価 • まとめ 3 キャッシュメモリの容量増加 • 近年のマイクロプロセッサは大容量キャッシュメモリを搭載 • キャッシュメモリ容量増加による利点/問題点 – 利点 • 多くのデータをキャッシュ内に格納可能 – メモリウォール問題の緩和 – 問題点 L3キャッシュ 16MB • キャッシュメモリの占めるチップ内面積の増加 • アクセスレイテンシの増加 • 消費エネルギー増加 チップ写真:Intel Core i7[1] [1]http://journal.mycom.co.jp/photo/news/2009/09/08/109/images/001l.jpg 4 3次元積層L2キャッシュ • 3次元実装技術 – グローバル配線長の削減,チップ面積縮小 – ダイ同士をTSVなどの層間接続による高いバンド幅を実現 した積層 • TSV(Through-Silicon-Via):層間金属柱 • オンチップメモリの大容量化を実現 出典: 米インテル社 3次元積層プロセッサ [2]Bryan Black et al “Die Stacking (3D) Architecture,” International Symposium on Microarchitecture ,2006 5 3次元積層キャッシュにおける リーク消費電力削減手法(関連研究) • リーク消費電力を削減することで,温度低減を達成 • キャッシュメモリの一部の電源を遮断してリーク消費電力削減 – 電源遮断ポリシー • キャッシュミス率に大きな影響を与えない範囲で,バンクの電源を遮 断し,リーク消費電力を削減 性能と消費電力密度のトレードオフ – バンクごとにリーク消費電力が異なることを考慮していない [3]Guangyu et al ``Exploration of 3D Stacked L2 Cache Design for High Performance and Efficient Thermal Control” ISLPED’09 ポスター発表 6 積層L2キャッシュにおける温度上昇問題 ~コアからL2キャッシュへ熱の伝導~ • 積層L2キャッシュは平面実装時よりも高温 – 理由:下層コアの熱が上層の積層L2キャッシュに伝送するため 文献[1]の温度解析シミュレーション結果 59℃ フロアプラン フロアプラン 88.35℃ 88.43℃ 上層L2キャッシュレイヤー [2]Bryan Black et al “Die Stacking (3D) Architecture,” International Symposium on Microarchitecture ,2006 7 プログラムによる積層L2キャッシュの 温度分布変化 • 一般にコアの内部温度分布は実行プログラムに依存[4] FPAdd 64.3℃ 文献[4]における1コア平面実装ピーク 温度シミュレーション結果 ホットスポット 172.mgrid FPAdd 95.2℃ Icache 164.gzip ホットスポット IntReg 97.0℃ IntReg 82.4℃ Icache Dcache 熱 コアフロアプラン Dcache 実行プログラムによってL2キャッシュのホットスポットの位置が変化し, リーク消費電力分布も変化する [4]Joonho Kong et al “On the Thermal Attack in Instruction Caches” Transactions on Dependable and Secure Computing 2009 8 発表の流れ • 研究背景 – 3次元積層L2キャッシュのリーク消費電力増加 • 研究目的 • 提案手法 – 温度を考慮したリーク消費電力削減手法 • 有効性評価 • まとめ 9 研究目的と着眼点 • 研究目的 – 3次元積層L2キャッシュの消費エネルギー削減 • 着眼点 – バンクの電源を遮断を行った際に増加する消費 エネルギーが存在(関連研究と同様) – プログラムによって異なるL2キャッシュの温度 分布(関連研究と異なる) 10 提案手法 温度を考慮したバンクの電源遮断による リーク消費電力削減手法 • 電源遮断順:高温バンクから電源を遮断 – 温度上昇→リーク消費電力増大 • 電源遮断数:性能に影響を与えない範囲で消費エネルギー を削減可能な遮断数を選択 – 今回は消費エネルギーモデルを元に決定 詳細な稼働バンク決定法は検討中 消費エネルギーモデル • 動的消費エネルギー – (アクセス回数)×(アクセス当たりの消費エネルギー) • 静的消費エネルギー – (実行時間)×(リーク消費電力) • L2キャッシュはSRAMで構成 L2キャッシュのリーク消費エネルギー 温度により 変化 電源遮断 バンク EL 2 _ leak T i 1 PLeak _ bank _ i n • T:実行時間 • 𝑃𝐿𝑒𝑎𝑘_𝑏𝑎𝑛𝑘_𝑖 : 𝑖バンクでのリーク消費電力 12 増加する消費エネルギーを考慮した 稼働バンク数選択 リーク消費電力削減: Pleak 稼働バンク数減少 が与える影響 ミス率増加による • 動的消費エネルギー増加:Edynamic • 実行時間増加: T E Pleak T Edynamic 主記憶アクセス数 増加のため L2キャッシュミス率 稼働バンク数は実行プログラムによって適切に選択する必要 256.bzip2 175.vpr 1 0.8 0.6 0.4 0.2 0 稼働バンク数減少→ キャッシュミス率増加度大 1 2 3 4 5 6 7 8 9 10111213141516 稼働バンク数 稼働バンク数→ キャッシュミス率増加度小 13 発表の流れ • 研究背景 – 3次元積層L2キャッシュのリーク消費電力増加 • 研究目的 • 提案手法 – 温度を考慮したリーク消費電力削減手法 • 有効性評価 • まとめ 14 ベンチマークプログラムを用いた 有効性評価 • 目的 – 提案手法のED積削減効果の見積り評価 • ED積=(消費エネルギー)×(実行時間) • 比較対象 – 三次元積層時全L2キャッシュバンク稼働状態(従来手法) – 高温バンクから電源遮断を行う手法(提案手法) • 消費エネルギー評価対象 – L1キャッシュ,L2キャッシュ,主記憶 オフチップ主記憶 DRAM アクセス時間:191cc L1キャッシュ 容量:32KB, 連想度2 アクセス時間:1cycle L2キャッシュ(UCA) 容量:2MB,16バンク(連想度16 ) アクセス時間:11cycle 実行中のバンク切り替えは無 コアモデル:Alpha21364 動作周波数:1.2Ghz マルチプログラム実行 実行中はプログラムの切換無 実行命令数:1億命令 ベンチマーク:specCPU2000 15 消費エネルギー評価方法 • 消費エネルギー評価 – 静的消費エネルギー • (リーク消費電力)×(実行時間) マルチコア マルチコアシ シミュレータ: ミュレータ:M5 M5 – 動的消費エネルギー • (アクセス当たりの消費エネルギー)×(アクセス回数) 温度における仮定 Cacti6.0による実験結果 単位アクセス当たりの 消費エネルギー(nJ) 静的消費 電力(mW) L1キャッシュ 0.39 温度により変化 L2キャッシュ 1.46 温度により変化 主記憶 7.92 32.4 文献[4]を参考に単一 文献[3]を参考に単一 プログラム実行での ピーク温度が上層 ピーク温度が上層バ バンクの温度と仮定 ンクの温度に対応 (1回のリフレッシュに消費するエネルギー) /(リフレッシュレート) [4]Joonho Kong et al “On the Thermal Attack in Instruction Caches” Transactions on Dependable and Secure Computing 2009 16 実行プログラムの選択 • プログラムの特徴によって分類 – 提案方式の影響が大きいと考えられるパラメータによって 分類 • センシティビティ(稼働バンク数減→キャッシュミス率増加度) • コア内部の温度(稼働バンクのリーク消費電力) L2キャッシュミス率 マルチプログラム 実行を行った際も 同じ傾向が出現と 予測 256.bzip2 1 0.8 0.6 0.4 0.2 0 センシティビティ 175.vpr 大きい 小さい 平均的 179.art 175.vpr 188.ammp 301.apsi 局所的 171.swim 181.mcf 256.bzip2 164.gzip センシティ ビティ大 温 度 1 3 センシティ ビティ小 5 7 9 11 13 15 稼働バンク数 17 評価結果 稼働バンク数 従来手法 全バンク稼働 提案手法 提案手法(ED積最小) 1.2 ED積比 1 11 11 8 8 0.8 0.6 0.4 0.2 0 平均的 局所的 コア内部温度 小さい 大きい センシティビティ どの実行プログラム群でも稼働バンクを選択す ることでED積削減効果を確認 18 コアの内部温度における比較 ~局所的~ 全バンク稼働 従来手法 ED積比 1 11 11 8 0.8 0.6 0.4 局所的 平均的 2 実行時間比 1.2 提案手法 提案手法(ED積最小) 2.5 1.5 1 0.5 0.2 0 0 平均的 局所的 コア内部温度 1 3 5 7 9 11 13 15 小さい 大きい センシティビティ 稼働バンク数 稼働バンク数減少により実行時間増加小 ⇒ED積削減効果が大きく得られた 19 コアの内部温度における比較 ~平均的~ 全バンク稼働 従来手法 提案手法 提案手法(ED積最小) 2.5 ED積比 1 11 2 8 0.8 0.6 0.4 実行時間比 1.2 11 局所的 平均的 1.5 1 0.5 0.2 0 0 平均的 局所的 コア内部温度 1 3 小さい 5 7 9 11 13 15 大きい 稼働バンク数 センシティビティ 稼働バンク数減少により実行時間増加大 ⇒ED積削減効果が大きく得られなかった 20 センシティビティにおける比較 従来手法 全バンク稼働 提案手法 提案手法(ED積最小) 削減効果大 1.2 11 ED積比 1 削減効果小 8 0.8 0.6 0.4 0.2 0 平均的 局所的 コア内部温度 小さい 大きい センシティビティ 予想では センシティビティ小⇒消費エネルギー削減効果大 結果では センシティビティ大⇒消費エネルギー削減効果大 21 予測と評価結果が異なる理由 マルチプログラム実行時 センシティビティ大のプログラム群 センシティビティ小のプログラム群 1 0.8 0.6 0.4 0.2 0 1 3 5 7 9 11 13 15 稼働バンク数 L2キャッシュミス率 L2キャッシュミス率 1コア実行時におけるセンシティビティの傾向から 提案手法に適したプログラム群を予測したため 1コア実行時 センシティビティ大 センシティビティ小 1 0.8 0.6 0.4 0.2 0 1 3 5 7 9 11 13 15 稼働バンク数 • 稼働バンク数減少によるL2ミス率の増加度”小”⇒ED積削減効果”大” – 予測:1コア実行時の傾向より、センシティビティ小なプログラム群が良い傾向を 示す – 評価結果:センシティビティ大なプログラム群を実行した場合,L2ミス率はバンク 数に依らず飽和しており,センシティビティの小さい傾向を示した 22 発表の流れ • 研究背景 – 3次元積層L2キャッシュのリーク消費電力増加 • 研究目的 • 提案手法 – 温度を考慮したリーク消費電力削減手法 • 有効性評価 • まとめ 23 まとめ • 温度を考慮した3次元積層LSI向け低消費エネ ルギーL2キャッシュの提案 – 問題点:L2キャッシュにおけるリーク消費電力増加 – 注目点:バンクごとの温度の差異を考慮 • 有効性評価結果 – ED積が28%削減可能 • 今後の課題 – 過渡温度解析 – 詳細な稼働バンクの切り替え方式の考案 24 ご清聴ありがとうございました 25 Back slide 26 考察 ~センシティビティ大~ E_L1_s ミス率増加度小→ E_MM_s 動的消費エネルギー増加小 E_L2_s 0.8 0.6 0.4 0.2 1 ミス率増加→ 0 実行時間増加小 0.8 16 14 12 10 8 6 4 稼働バンク数 0.6 2 2.5 0.4 0.2 0 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 稼働バンク数 実行時間 消費エネルギー比 1.2 1 L2ミス率 E_L1_d E_MM_d E_L2_d L2リーク消費エネルギー 削減効果大 2 1.5 1 0.5 0 16 14 12 10 8 6 4 2 稼働バンク数27 考察 ~センシティビティ小~ 1 L2ミス率 E_L1_s 0.8 ミス率増加度大→ 動的消費エネルギーの増加度 E_MM_s 動的消費エネルギーの増加度 0.6 大 E_L2_s 大 0.4 0.2 1 0.8 0.6 0 16 14 12 10 8 6 4 ミス率増加→ 稼働バンク数 2.5 実行時間増加大 0.4 0.2 0 2 2 実行時間 消費エネルギー比 1.2 E_L1_d E_MM_d E_L2_d 1.5 1 16151413121110 9 8 7 6 5 4 3 2 1 0.5 稼働バンク数 0 L2リーク消費エネルギー 16 14 12 10 8 6 4 2 削減効果小 28 稼働バンク数 1.2 E_L1_s E_MM_s E_L2_s 消費エネルギー 1 0.8 0.6 0.4 0.2 0 1 3 5 7 9 11 13 15 稼働バンク数 2.5 2 1.5 1 0.5 0 リーク消費電力mW) E_L1_d E_MM_d E_L2_d 実行時間 考察 ~平均的~ 1 3 5 7 9 11 13 15 稼働バンク数 120 100 80 60 40 20 0 1 3 5 7 9 11 13 15 稼働バンク(低温順) リーク消費電力が増大しているバンクの電源を遮断したため,実行 時間が増加した場合でもED積削減効果が得られた 29 E_L1_s E_MM_s E_L2_s 1 120 100 80 60 40 20 0 16151413121110 9 8 7 6 5 4 3 2 1 バンクID(高温順) 0.8 2.5 0.6 2 実行時間 消費エネルギー比 1.2 E_L1_d E_MM_d E_L2_d リーク消費電力(mW) 考察 ~局所的に高温~ 0.4 0.2 1.5 1 0.5 0 0 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 稼働バンク数 16151413121110 9 8 7 6 5 4 3 2 1 稼働バンク数 実行時間が増加しない範囲でリーク消費電力が増大している多くの バンクの電源を遮断可能なためED積削減効果大 30 コアの内部温度における比較 局所的 平均的 実行時間 2 1.5 1 0.5 0 1 2 3 4 5 6 7 8 9 10111213141516 稼働バンク数 120 リーク消費電力(mW) 2.5 100 局所的 平均的 80 60 40 20 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 稼働バンク(低温順) 実行時間があまり増加しない範囲で高温化しているバンクを 遮断可能なためED積削減効果大 31 提案手法 1. コアにプログラムが割り当てられた際に休止バンクを決定 – – 2. 3. 新しく実行されるプログラムの情報 それまで実行されていたプログラムそれぞれの情報 休止バンク内のライトバック対象データを主記憶へ書き戻す バンクの電源のON,OFF 事前実行情報 電源遮断 バンク コアの温度分布 L2要求容量情報 稼働バンク数・L2ミス率 L2要求容量情報 バンクの温度情報 バンクの温度情報 実行プログラム A C 事前実行情報 実行プログラム B D 対象アーキテクチャ マルチプログラム実行 新プログラム E 32 提案手法の動作例 • キャッシュミス率とバンクの温度を考慮して電源遮 断を行う • 設計選択肢 – 静的決定(コアに新しいプログラムが割り当てられた際に 電源切り換え) • プロファイル情報によりL2キャッシュ温度、キャッシュミス率を予測 – 動的決定(プログラム実行中に電源切り換え) • 温度センサーによってL2キャッシュ温度情報を取得 • 追加ハードウェアによってキャッシュミス率を予測 33 静的消費エネルギーと動的消費エネ ルギーの割合(平均的高温) 消費エネルギー比 1.5 1 E_d E_s 0.5 0 16 14 12 10 8 6 稼働バンク数 4 2 34 温度分布 平均的高温 局所的高温 72 72 78 78 74 80 79 74 69 71 69 73 74 67 71 71 69 70 69 71 85 77 74 78 73 71 75 71 97 80 68 73 68 75 80 70 72 72 71 96 82 79 82 74 72 70 71 70 71 69 71 72 73 71 73 71 74 73 75 72 63 69 63 64 67 64 97 80 63 69 63 75 81 74 74 83 64 66 64 70 97 79 74 80 82 75 82 69 96 81 74 74 82 78 80 84 75 86 72 97 82 78 81 73 67 67 67 67 73 69 74 70 72 73 73 68 76 72 77 75 95 90 85 80 75 70 65 60 - 99 94 89 84 79 74 69 64 リーク消費電力(mW) 120 100 局所的 平均的 80 60 40 20 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 稼働バンク(低温順) 35
© Copyright 2024 ExpyDoc