# Tofu Interconnect [[K computer]] の独自インターコネクト。Tofu は Torus fusion の略で、開発者による原典は Ajima・Sumimoto・Shimizu の IEEE Computer 42 号(2009 年)とされる。Alpa 論文が言及する Tofu(テンソル並列化システム)とは別物である。 ## 特徴(2011 年時点の解説) - トポロジ: 従来の 3 次元トーラスに対し、ノード間リンク数を 6 から 10 に増やした 6 次元メッシュ/トーラス。通信ホップ数の短縮とランダム通信性能の向上を狙い、ジョブごとに独立なトーラストポロジを見せることもできる - 帯域: 片側 5GB/s、ノード当たり 10 リンクで合計 100GB/s(双方向計)。各ノードは最大 4 方向へ同時に転送でき、多重転送は 1 多重 4.7GB/s に対し 4 多重で 15GB/s(3 倍以上)が実測された - IO の分離: Z 軸=0 のノードを IO ノードとし、Z 軸=0 を IO 専用ネットワークとして計算用通信から分ける。ジョブ間の IO 干渉を抑える - 高機能バリアインタフェース: FX1 の高機能スイッチの機能を Tofu 上に実装し、バリア同期と縮約演算をソフトウェア実装より 768 プロセスで 6.7 倍・7.5 倍に速める - 観測: 各構成要素に混雑状況の統計カウンタを置き、通信状況を常時読み出せる - ICC チップ: ルータ(TNR)、ネットワークインターフェース(TNI)4 個、集団通信ハードウェア(TBI)を 1 チップに統合する。10 ポート、リンク 5 GB/s 双方向、スイッチング容量 100 GB/s、65 nm CMOS で 4800 万ゲートである([[@2012__FUJITSU Sci Tech J__Tofu - Interconnect for the K computer]] 2 章、表 1) - 6 次元の役割分担: X/Y がラック間、Z/B がボード間(B は 3 ボードのリング)、A/C が長さ 2 でボード上のプロセッサを結ぶ。ノード当たりのハードウェアは ICC と約 2.2 本のケーブルで、10 万ノード超へ拡張できる([[@2012__FUJITSU Sci Tech J__Tofu - Interconnect for the K computer]] 3 章) - 信頼性と可用性: リンクレベル再送、SRAM・データパスの ECC、障害検知時の出力遮断、B 軸を使ったランクマッピングによるボード交換中の継続稼働([[@2012__FUJITSU Sci Tech J__Tofu - Interconnect for the K computer]] 3.5 節、4 章) - TBI: Barrier / Broadcast / Reduce / AllReduce をハードウェアで処理し、バリアチャネル 8(使用可能 7)、バリアゲート 64 個で Recursive Doubling などを選べる。OS ジッタの影響を受けない([[@2012__FUJITSU Sci Tech J__Tofu - Interconnect for the K computer]] 5 章) ## 関連 - 概念: [[OSジッタ]] / [[RDMA]] - エンティティ: [[Yuuichirou Ajima]] ## 出典 - [[@2011__応用物理__次世代スパコン「京」のコアテクノロジ]](3.1 節、3.3 節、3.6 節) - [[@2012__FUJITSU Sci Tech J__Tofu - Interconnect for the K computer]](2 章(ICC)、3 章(6 次元網、ランクマッピング)、4 章(通信機能)、5 章(TBI)) - [[@2022__IEEE Micro__Co-Design and System for the Supercomputer Fugaku]](新版 TofuD は 28 Gb/s SerDes、TNI 6 個で注入帯域 40.8 GB/s。Fugaku で採用)