予測機構を持つルータを用いた低遅延 チップ内ネットワークに関する研究 鯉渕 道紘 吉永 努 村上 弘和 松谷 宏紀 天野 英晴 (国情研/総研大/JST) (電通大) (電通大) (慶大) (慶大) 発表の流れ • チップ内ネットワーク(Network-on-Chip: NoC) • ルータにおけるパケット処理 – 通常のルータ, 低遅延ルータ – 予測ルータ [吉永,SACSIS’07] • 予測ルータを用いたチップ内ネットワークの性能解析 – 予測成功率 – 無負荷状態のネットワーク遅延 • 総合評価 – 面積, 消費エネルギー – スループットと遅延 チップ内ネットワーク(Network-on-Chip:NoC) • レギュラーアーキテクチャ – Tilera Tile64 (64コア) – Texas U. TRIPS Core On-chip router [Buger, Computer’04] – Intel 80コア NoC [Vangal, ISSCC’07] – タイルアーキテクチャ • (P2P)イレギュラー アーキテクチャ 16-Core Tile Architecture タイルアーキテクチャの実装例 (*) 京大/VDEC/ASPLA 90nm CMOS 使用 バスからパケットネットワークへ • バス構造の限界 – コア数の増加 – 配線遅延の増加 Packet Network Generation NoCとは? • チップ内ネットワーク= Network-on-Chip (NoC) = On-Chip Network(OCN)= On-Chip Interconnection Network(OCIN) • 広義 – チップ内のモジュール間ネットワークすべて • 古典的バス: – 単位時間あたり1データ転送, poor performance scalability • 専用配線 – 全対全通信. poor area scalability • パケットネットワーク – 複数データ転送: high scalability • 狭義 – スイッチ(ルータ)ベースのパケットネットワーク 既存のNoC Topology; Data width Switching; VCs Flow control Routing algorithm MIT Raw (dynamic network) 2-D mesh; 32-bit wormhole; no VC credit based XY DOR UPMC/LIP6 SPIN Micro Network Fat Tree; 32-bit wormhole; no VC credit based up*/down* routing UMass Amherst aSOC arch 2-D mesh PCS; no VC timeslot based shortest-path Sun UltraSparc T1 (CPX bus) crossbar; 128-bit N/A handshaking N/A Sony, Toshiba, IBM Cell BE EIB ring; 128-bit PCS; no VC credit based shortest-path UT Austin TRIPS (operand NW) 2-D mesh; 109-bit N/A †; no VC on/off YX DOR UT Austin TRIPS (OCN) 2-D mesh; 128-bit wormhole; 4VCs credit based YX DOR Intel SCC architecture 2-D torus; 32-bit wormhole; no VC stall/go XY,YX DOR; odd-even TM Intel Teraflops NoC 2-D mesh; 32-bit 古典的な並列計算機のインターコネ on/off wormhole; 2lane source routing ( e.g. クトと同じNWアーキテクチャ DOR) Tilera TILE64 iMesh (dynamic NW) 2-D mesh; 32-bit wormhole; no VC credit based XY DOR トポロジ:2-Dグリッド構造 ルーティング:次元順ルーティング スイッチング技術:ワームホール方式 NoCの課題 • これまでの成功は、Off-chipネットワークアーキテクチャの転用 による – 並列計算機のネットワーク(Blue Gene/L等) • トポロジ、ルーティング、フロー制御、ルータアーキテクチャ – ロスレス高バンド幅ルータ • これでは解決しきれない課題が顕著に、、、 [Dally’s Report,06] – 遅延の削減 • バスに比べると大きい。 – オンチップメモリへのアクセス • 高機能ルータによる遅延が主な原因 – 電力 • プロセッサコアは省電力化、ネットワークも必要 • 詳細は本セッション内の松谷の発表にて – CADの互換性 通信遅延 • SRC から DST へ パ ケットが届くまでのサ イクル数 Core On-chip router 例) 要求を出して, パケットが届くまでに 1000-cycleかかったら使い物にならない 例えば, 1ホップ = 3サイクルとすると, 16-core mesh なら最大 21サイクル 64-core mesh なら最大 45サイクル 16-core Tile architecture 通信遅延の削減 • 通信遅延 – SRC から DST へ パケットが届くまでの サイクル数 Core On-chip router 遅延を減らす2つのアプローチ • トポロジを工夫する – 例: Mesh Torus • ルータを工夫する – パケット処理 – 例: 3サイクル 1サイクル 16-core Tile architecture 発表の流れ • チップ内ネットワーク(Network-on-Chip: NoC) • ルータにおけるパケット処理 – 通常のルータ, 低遅延ルータ – 予測ルータ [吉永,SACSIS’07] • 予測ルータを用いたチップ内ネットワークの性能解析 – 予測成功率 – 無負荷状態のネットワーク遅延 • 総合評価 – 面積, 消費エネルギー – スループットと遅延 典型的なオンチップルータ • 5入力5出力の WH ルータ 1ポート当り n個の入力バッファ (この図では 2系統) を持つ 仮想チャネルn本 ARBITER X+ FIFO X+ X- FIFO X- Y+ FIFO Y+ Y- FIFO Y5x5 XBAR CORE FIFO CORE [松谷,NOCS’08] 通常のルータ: 3段パイプライン • 衝突しなければ 3 cycle でヘッダがルータを通過 – RC (Routing computation) – VSA (Virtual channel / switch allocation) – ST (Switch traversal) @ROUTER A @ROUTER B @ROUTER C HEAD RC VSA ST RC VSA ST RC VSA ST DATA 1 ST ST DATA 2 ST ST ST ST DATA 3 1 2 3 4 5 順番に実行 6 ST ST 7 8 9 ST 10 11 12 ヘッダがルータ(a)に注入され, データ3がルータ(c)を通過するまで12サイクル ELAPSED TIME [CYCLE] 一般的な低遅延ルータ: 2段パイプライン • 別アプローチ 1 –2Express virtual channels 衝突しなければ cycle でヘッダがルータを通過 – – – – 非隣接ルータ間に仮想的なバイパス経路 RC (Routing computation)[Kumar,ISCA’07] 隣接間通信が多いと効果が薄い VSA + ST (Switch allocation/ Switch traversal) • 別アプローチ 2 – Preferred path NRC と VSA に依存性がないので並列実行できる 2サイクル転送 – XYルーティングを想定し, パケットが直進すると予測 W. Dally, “Principles [Michelogiannakis,NOCS’07] – クロスバを迂回する低遅延なパス @Router A @Router B @Router C HEAD RC VSA ST RC VSA ST 2 3 4 RC and Practices of Interconnection Networks” (2004) VSA ST DATA 1 DATA 2 DATA 3 1 5 6 7 8 9 1-cycleルータもあるが,1ステージに詰込み過ぎ ヘッダがルータ(a)に注入され, データ3がルータ(c)を通過するまで9サイクル ELAPSED TIME [CYCLE] 動作周波数悪化 予測ルータ: Yet another 1-cycle router [吉永,SACSIS’07] [松谷,ARC’08] • 予測による1サイクル転送 – どの出力ポートが使われるか予測する (RC をプレ実行) – 予測した出力ポートでクロスバ調停を済ます (SA をプレ実行) – 予測が正しければ ST だけ (1サイクル転送) 予測アルゴリズム: 直前ポートを使う, 直進すると予測, 履歴を使うなど @ROUTER A @ROUTER B @ROUTER C HEAD RC VSA ST RC VSA ST RC VSA ST DATA 1 ST ST 予測が当たれば, ST RC と SA は省略 DATA 2 DATA 3 1 2 3 4 5 ST ST ST 6 ST ST 7 8 9 ST 10 11 12 1ステージに処理を詰込まない;予測が70%当たれば1.6サイクル転送 ELAPSED TIME [CYCLE] 予測機構付きルータ: これまでの成果 • 予測を用いた低遅延ネットワークの提案 [吉永,SACSIS’07] – 並列計算機ネットワーク向けにスループット評価 – 予測アルゴリズムの比較 • 予測機構付きルータアーキテクチャの提案と設計 • 予測ミス時の処理 • データパス構造 [松谷,ARC’08] • 本研究では,予測ルータを用いたNoCを提案、評価 – 予測成功率の解析 • 100%成功した理想場合との比較 • コア数が増加した場合は? • パケット転送遅延の最小理論値 – スループット、HW量、エネルギー 発表の流れ • チップ内ネットワーク(Network-on-Chip: NoC) • ルータにおけるパケット処理 – 通常のルータ, 低遅延ルータ – 予測ルータ [吉永,SACSIS’07] • 予測ルータを用いたチップ内ネットワークの性能解析 – 予測成功率 – 無負荷状態のネットワーク遅延 • 総合評価 – 面積, 消費エネルギー – スループットと遅延 既存のNoC Topology; Data width Switching; VCs Flow control Routing algorithm MIT Raw (dynamic network) 2-D mesh; 32-bit wormhole; no VC credit based XY DOR UPMC/LIP6 SPIN Micro Network Fat Tree; 32-bit wormhole; no VC credit based up*/down* routing UMass Amherst aSOC arch 2-D mesh PCS; no VC timeslot based shortest-path Sun UltraSparc T1 (CPX bus) crossbar; 128-bit N/A handshaking N/A Sony, Toshiba, IBM Cell BE EIB ring; 128-bit PCS; no VC credit based shortest-path UT Austin TRIPS (operand NW) 2-D mesh; 109-bit N/A †; no VC on/off YX DOR UT Austin TRIPS (OCN) 2-D mesh; 128-bit wormhole; 4VCs credit based YX DOR Intel SCC architecture 2-D torus; 32-bit wormhole; no VC stall/go XY,YX DOR; odd-even TM Intel Teraflops NoC 2-D mesh; 32-bit wormhole; 2lane on/off source routing ( e.g. DOR) Tilera TILE64 iMesh (dynamic NW) 2-D mesh; 32-bit wormhole; no VC credit based XY DOR トポロジ:2-Dグリッド構造 ルーティング:次元順ルーティング スイッチング技術:ワームホール方式 予測ルータ・ネットワークの性能解析 条件 • トーラストポロジ(k-ary n-cube)、次元順ルーティング – 強い規則性を予測に利用 • ランダムトラフィック(注入レートはポアソン分布) – 予測が難しいワーストケース • 予測アルゴリズム – 直前ポート予測(LP)、ランダム予測、直進予測(SS) D D ルータ リンク S S ランダム予測 直進予測(SS) 1次元トーラス(奇数)における経路分布 • 1つのリンクを通過する経路数 T 1d k / 2 1/ 2 i 次元内ルータ数:k 直進予測(SS)の予測成功率 k / 2 1 / 2 i 1 • その中で直進する経路数 T 1ss k / 2 1/ 2 (i 1) i 1 T 1d Pss T 1ss i i 1 k / 2 1 / 2 (i 1) i 1 N次元トーラスにおける経路分布(奇数) • 2次元平面 2次元トーラス • 3次元スタック構造 3次元トーラス i次元入力チャネルにおける予測成功率 k / 2 1 / 2 直進予測の成功率( Pss) (i 1) i 1 k / 2 1 / 2 次元内ルータ数: k i 次元数: n i 1 1 n 1 ランダム予測の成功率 n j 1 2(n j 1) 直前予測の成功率 Pss ( 2 TPE (i) k n1 k / 2 1/ 2 i i 1 n ) 2 ( 2 j i 1 T (i, j ) k n1 k / 2 1/ 2 i i 1 2 ) 予測成功率 – 直進予測(SS) – ランダム予測 (Random) – 直前予測 (LP),SPM 予測成功率(%) • 比較対象 コア数 ワーストケースのユニフォームトラフィックでも 80%以上の予測成功率を達成 局所性があればより高い予測成功率を達成 遅延評価: 無負荷時の通信レイテンシ • 比較対象 – – – – オリジナルルータ (Conv) 予測ルータ(ideal) 100%的中 予測ルータ(SS) 直進予測 予測ルータ(LP) 直前予測 • 無負荷時の遅延モデル PktSize hd L LinkBW Tlink (d 1) (Tr Ta Ts )d Tr …ルーティング遅延 Ts …スイッチ遅延 Ta …アービトレーション遅延 Tlink …リンク遅延 h …ヘッダサイズ d …ホップ数 Tr 0,Ta 0,Ts 1 予測失敗時 Tr 1,Ta 1,Ts 1 予測成功時 予測成功率は解析結果を利用 遅延評価: 無負荷時の通信レイテンシ – – – – オリジナルルータ (Conv) 予測ルータ(ideal) 100%的中 予測ルータ(SS) 直進予測 予測ルータ(LP) 直前予測 [nsec] • 比較対象 • 評価パラメータ トポロジ ルーティング パケット長 トラフィック 動作周波数 k-ary 2-cube (k=3…17) 次元順 (XY routing) 16フリット ユニフォームランダム 通常ルータ: 470.0MHz 予測ルータ: 464.8MHz ノード数 vs. 通信レイテンシ 予測によって, 通信遅延は 64コアで14.2%減, 289コアで23.7%減 発表の流れ • チップ内ネットワーク(Network-on-Chip: NoC) • ルータにおけるパケット処理 – 通常のルータ, 低遅延ルータ – 予測ルータ [吉永,SACSIS’07] • 予測ルータを用いたチップ内ネットワークの性能解析 – 予測成功率 – 無負荷状態のネットワーク遅延 • 総合評価 – 面積, 消費エネルギー – スループットと遅延 スループットと遅延の評価(シミュレーション) • 比較対象 – オリジナルルータ (Conv) – 予測ルータ(SS) 直進予測 – 予測ルータ(Random) – 予測ルータ(LP) 直前予測 パケットの衝突の影響が新たに含 まれる。 飽和前のNWにおける遅延を14% 削減 -14% LU 分解、64コア ランダム、256コア 面積と電力評価[松谷ARC08] 電力評価のフロー 1. オリジナルルータ, 予測ルータ(stop有), 予測ルータ(stop無) をVerilog-HDLで実装 2. 各種ルータを ASPLA 90nm で合成, 配置配線 (Design Compiler / Astro) 3. 配置配線ルータにパケット負荷を与えるシミュレーションを実行 (NC-Verilog) 4. SAIF, SDF, SPEF を読み込んで消費電力を見積もる (Power Compiler) +57.2% +23.4% オリジナル 予測ルータ1 予測ルータ2 +26.2% +8.8% オリジナル 予測ルータ1 2 面積、エネルギーは 23.4増、8.8%増 まとめ • チップ内ネットワーク(Network-on-Chip: NoC) – ローカルメモリへのアクセス等の低遅延化が課題 • 予測ルータをNoCへ適用、ネットワークの性能解析 – ルータの転送遅延を最小化 – 予測成功率、ネットワーク遅延 • 総合評価(シミュレーション) – 定常状態のネットワーク遅延を23%減 • 面積、エネルギーは 23%増、9%増 明瞭なトレードオフはあるが、低遅延NoCを達成する稀な技術 複雑化してルータのパイプライン段数が増加 より効果大 (例:Intel 80-Core NoC: 5-cycle ルータ)
© Copyright 2024 ExpyDoc