260 likes | 425 Views
Rearrangeable NoC: 配線遅延を考慮した分散ルータ アーキテクチャ. 松谷 宏紀 (慶大) 鯉渕 道紘 (NII) 中村 宏 (東大) 天野 英晴 (慶大). M. M. L2$. L2$. M. M. sparc. sparc. sparc. sparc. Cores. Core#0. M. M. L2$. L2$. M. M. Crossbar. L2$. L2$. M. M. その先は?. M. M. Core#1. L2$. L2$. L2 $ nodes. M. M.
E N D
Rearrangeable NoC:配線遅延を考慮した分散ルータアーキテクチャ 松谷 宏紀 (慶大) 鯉渕 道紘 (NII) 中村 宏 (東大) 天野 英晴 (慶大)
M M L2$ L2$ M M sparc sparc sparc sparc Cores Core#0 M M L2$ L2$ M M Crossbar L2$ L2$ M M その先は? M M Core#1 L2$ L2$ L2 $ nodes M M sparc sparc sparc sparc M M Niagara 2 TRIPS (OCN) ??? Many-core architecture キャッシュの面積割合は増える どういうレイアウトが良いの? # of nodes Small Large
M M L2$ L2$ M M sparc sparc sparc sparc Core#0 M M L2$ L2$ M M Crossbar L2$ L2$ M M その先は? M M Core#1 L2$ L2$ M M sparc sparc sparc sparc M M Niagara 2 TRIPS (OCN) ??? Many-core architecture Cores L2 $ nodes キャッシュの面積割合は増える どういうレイアウトが良いの? チップ中央に L2$ nodes # of nodes Small Large
M M L2$ L2$ M M sparc sparc sparc sparc Core#0 M M L2$ L2$ M M Crossbar L2$ L2$ M M その先は? M M Core#1 L2$ L2$ M M sparc sparc sparc sparc M M Niagara 2 TRIPS (OCN) ??? Many-core architecture Cores L2 $ nodes キャッシュの面積割合は増える どういうレイアウトが良いの? チップ外周に L2$ nodes # of nodes Small Large
M M L2$ L2$ M M sparc sparc sparc sparc Core#0 M M L2$ L2$ M M Crossbar L2$ L2$ M M その先は? M M Core#1 L2$ L2$ M M sparc sparc sparc sparc M M Niagara 2 TRIPS (OCN) ??? Many-core architecture Cores キャッシュの面積割合は増える どういうレイアウトが良いの? 局所性を活かした配置 # of nodes Small Large メモリバンド幅の確保 トポロジ,ルーティング,ルータ構造の工夫で !
M M L2$ L2$ M M sparc sparc sparc sparc Cores Core#0 M M L2$ L2$ M M Crossbar L2$ L2$ M M その先は? M M Core#1 L2$ L2$ L2 $ nodes M M sparc sparc sparc sparc M M Niagara 2 TRIPS (OCN) ??? Network topology for many cores # of nodes Small Large
M M M M Cores Core#0 M M M M M M その先は? M M Core#1 L2 $ nodes M M M M TRIPS (OCN) ??? Network topology for many cores Crossbar スループット(高) ノードが多いとコスト(高) # of nodes Small Large
Cores その先は? L2 $ nodes ??? Network topology for many cores Crossbar 2-D mesh スループット(高) ノードが多いとコスト(高) 配置が容易 リンク長(短) ノードが多いと直径 (長) # of nodes Small Large
Network topology for many cores どんなトポロジが良い? メモリバンド幅の確保 小さい diameter 大きい bisection BW Crossbar 2-D mesh ??? スループット(高) ノードが多いとコスト(高) 配置が容易 リンク長(短) ノードが多いと直径 (長) # of nodes Small Large
Network topology for many cores Crossbar 2-D mesh Hypercube ?? スループット(高) ノードが多いとコスト(高) 直径 (短), 帯域 (高) 配置が困難 リンク長(長) 配置が容易 リンク長(短) ノードが多いと直径 (長) # of nodes Small Large
Loooong wires レイアウトの問題: Long wires & delay • 高性能トポロジ • Hypercube • Torus • Flatten butterfly • Fat H-Tree • 配線遅延 • 微細化により増加 • ゲート遅延より深刻 • 配線長の2乗に比例 binary n-cube k-ary n-cube [Kim,ISCA’07] 長~い配線がいっぱい!! Hypercube (binary n-cube)
Loooong wires レイアウトの問題: Long wires & delay • 高性能トポロジ • Hypercube • Torus • Flatten butterfly • Fat H-Tree • 配線遅延 • 微細化により増加 • ゲート遅延より深刻 • 配線長の2乗に比例 binary n-cube k-ary n-cube [Kim,ISCA’07] 長~い配線がいっぱい!! Flatten Butterfly 配線遅延のせいで高性能トポロジは実装(難)これを解決するルータ
70nm semi-global 60FO4s 15FO4s レイアウトの問題: Long wires & delay • 高性能トポロジ • Hypercube • Torus • Flatten butterfly • Fat H-Tree • 配線遅延 • 微細化により増加 • ゲート遅延より深刻 • 配線長の2乗に比例 binary n-cube k-ary n-cube [Kim,ISCA’07] 長~い配線がいっぱい!! 配線長 [mm] vs. 配線遅延 [FO4s] 配線パラメータは [Ho, IEEE Proc’01] より Loooong wires 配線遅延のせいで高性能トポロジは実装(難)これを解決するルータ
RC VA/SA ST RC VA/SA ST 配線遅延を考慮した分散ルータ • オリジナル Network-on-Chip (NoC) リンク On-chip router On-chip router Arbiter Arbiter Crucial wire delay 多量のリピータバッファ リンクエネルギー(増) オンチップルータの機能を分解して, リンク上に分散配置しよう
RC VA/SA ST RC VA/SA ST 配線遅延を考慮した分散ルータ • ルータの機能を分解して, リンク上に分散配置しよう On-chip router On-chip router Arbiter Arbiter Crucial wire delay
RC VA/SA RC VA/SA ST 配線遅延を考慮した分散ルータ • ルータの機能を分解して, リンク上に分散配置しよう Unit On-chip router On-chip router Arbiter Arbiter
VA/SA RC VA/SA ST 配線遅延を考慮した分散ルータ • ルータの機能を分解して, リンク上に分散配置しよう Unit Unit Unit On-chip router Arbiter Arbiter RC ST
VA/SA 配線遅延を考慮した分散ルータ • ルータの機能を分解して, リンク上に分散配置しよう Unit Unit Unit Unit Unit Arbiter RC RC ST 分解された機能は,リピータバッファの置換えに Rearrangeable NoC アーキテクチャの詳細は予稿集を参照 予備評価: リンク長が 5mm のとき, 最大動作周波数が 29.4% 向上
関連研究 • 配線遅延を考慮したリピータ • Elastic interconnects • Adaptive channel buffers [Dally研, ISSCC’01] [Kodi, TC’08] RC,VA,SA,ST RC,VA,SA,ST 値を保持できるバッファ
ST ST RC VA,SA ルータの機能を分解して,リンク上に分散配置 関連研究 • 配線遅延を考慮したリピータ • Elastic interconnects • Adaptive channel buffers • Router micro architecture [Dally研, ISSCC’01] [Kodi, TC’08] RC,VA,SA,ST RC,VA,SA,ST 値を保持できるバッファ ルータ内部をリング化 Conventional router Rotary router [Puente研, ISCA’07]
VA/SA ご相談 1: 分散ルータのアーキテクチャ • オンチップルータの機能を, どういう単位で分割する? • 何個に分割する? • どこでバッファリングする? • スイッチング (wormhole or circuit sw) によってどう変わる? • ルーティング (固定型 or 適応型) によってどう変わる? Unit Unit Unit Unit Unit Arbiter RC RC ST
ご相談 2: Multiple networks on a chip • 用途に応じて複数ネットワークは当たり前 • Dynamic network (wormhole) • Static network (circuit sw) • ネットワーク間の相互乗り入れ • Circuit sw で途中まで行き, 途中から wormhole に切り替え • そもそも “乗り入れ” は要らない? ハイブリッド型 [Jerder,NOCS’08] RC,VSA,ST RC,VSA,ST Network (WH) Network (WH) Network (CS) Network (CS)
ご相談 2: Multiple networks on a chip • 用途に応じて複数ネットワークは当たり前 • Dynamic network (wormhole) • Static network (circuit sw) • ネットワーク間の相互乗り入れ • Circuit sw で途中まで行き, 途中から wormhole に切り替え • そもそも “乗り入れ” は要らない? ハイブリッド型 [Jerder,NOCS’08] Xbar RC VSA Xbar Network (WH) Network (WH) Network (CS) Network (CS)
ご相談 2: Multiple networks on a chip • 用途に応じて複数ネットワークは当たり前 • Dynamic network (wormhole) • Static network (circuit sw) • ネットワーク間の相互乗り入れ • Circuit sw で途中まで行き, 途中から wormhole に切り替え • そもそも “乗り入れ” は要らない? ハイブリッド型 [Jerder,NOCS’08] Xbar RC VSA Xbar Network (WH) Network (WH) Network (CS) Network (CS)
Cores L2 $ nodes ご相談 3: Many-core architecture • コアとメモリの比率, レイアウトは? • どんなトポロジが良い? Cores Cores L2 $ nodes L2 $ nodes メモリ – コア間の通信は?