請更新您的瀏覽器

您使用的瀏覽器版本較舊,已不再受支援。建議您更新瀏覽器版本,以獲得最佳使用體驗。

理財

最低寫入延遲,特斯拉 Dojo 超級電腦的獨家 TTPoE 傳輸層協定

科技新報

更新於 2024年11月13日16:52 • 發布於 2024年11月14日08:40

提升網路效能的途徑,不限於提升帳面上的實體(Physical)層和資料連結(Data Link)層,改進上層的通訊協定(Protocol)效率也是常見的方式。尤其當我們熟知的多數網路通訊協定,如無所不在的 TCP/IP,其實為了應對不同品質的網路,而衍生出複雜的流量管理、壅塞管理與容錯機制,但對於網路規格相對單純的環境,卻是額外的累贅。

如各位對網路架構有基礎的知識,想必對 OSI 七層模型絕不陌生,這也是理解網路通訊協定的基礎。(Source:Cloudflare

在二十幾年前,網際網路剛爆發、思科認證(像職場上火紅的 CCIE、CCNP 和學生網管搶著考的 CCNA)非常值錢的年代,在思科出版的書籍與教材中,不乏出現以下描述:某某某高速資料連結層傳輸技術(如 Frame Relay、ATM 等),起因於越來越可靠的網路實體層,這道理對傳輸層協定亦同,如當時有讀過計算機網路教科書,如大專院校相關課程普遍採用 Andrew Tanenbaum 著作的 Computer Networks,對此更絕不陌生。

在 2024 年的 Hot Chips,電動車龍頭特斯拉(Tesla)展示了其 AI 超級電腦 Dojo 的最新進展,快要完成的 Dojo V1、正在開發的 Dojo V2、後繼預定的 Dojo V3,以及耗費五年自創的開源網路傳輸層(Transport,OSI 七層參考架構的第四層)通訊協定 TTPoE(Tesla Transport Protocol over Ethernet),用以取代 TCP,目的在於巨幅減少乙太網路的延遲。

傳輸層通訊協定的精神在於使用演算法將下面「不可靠」的網路層(Network,OSI 第三層),轉變成應用程式所需的服務,如「可靠的」TCP 和「不可靠的」UDP。傳輸層通訊協定也須執行「用來預防發送者傳送過多流量、超出接收者可負荷容量」的流量控制(Flow Control),與「避免網路被注入過多的資料、造成路由器/交換器或整個網路超出負荷」的壅塞控制(Congestion Control)。

特斯拉除了製造電動車和自駕車,更為此打造自家的 Dojo 超級電腦與 TTPoE 通訊協定,不禁讓人有一股「為了喝牛奶,不但養了一整座牧場,連看不見的地方都要通通自己來」的感覺。

TTPoE 項目負責人 Eric Quinnell 在美國時間 10 月 18 日的離職信裡披露,截至目前為止,Dojo 集群的算力是驚人的 15 ExaFlops(BF16 / FP16 資料格式),相當於 15,000 顆 Nvidia H100,而團隊人數約為 150 人。

在進入 TTPoE 的誕生背景之前,我們先瞧瞧這深度特化的傳輸層究竟能縮減多少延遲。從公布的資料來看,特斯拉的 TTPoE 傳輸協議的單向資料寫入延遲時間可達到 0.0013 毫秒(ms,千分之一秒),低於 InfiniBand 的 0.002 毫秒、NVLink4(H100)的 0.0023 毫秒、RoCE v2 的 0.0043 毫秒,更遠勝傳統 TCP/IP 結合乙太網路的 0.53 毫秒。換言之,論延遲,TTPoE 幾乎比 NVLink 低了兩倍,更比傳統乙太網路低上 400 倍。

在特斯拉的內部測試,TTPoE 實現了比 NVLink4(H100)和 InfiniBand 更低的單向資料寫入延遲,更僅有標準 TCP/IP 的 1/400,不可謂不驚人。

因應自駕車等先進應用的 Dojo 超級電腦,首次在 2019 年的某場自駕車公開活動,由特斯拉執行長伊隆·馬斯克(Elon Musk)所透露,專門用於大規模的圖像與影片處理。特斯拉在打造 Dojo 時遭遇了難題:有別於今日個體訓練單元是幾個字母構成詞元(Token)的大型語言模型(LLM),他們面對的卻是單一張量就是動輒 1.7GB 的視訊訓練資料。

NVLink 是成本昂貴的 Nvidia 專屬規格,InfiniBand 實質上亦相去不遠,需要專用的晶片和交換機,而 TCP/IP 太過複雜的狀態機和過多的封包控制,使其在乙太網路上顯得笨重,在 AI 運算集群中的表現過於遲鈍,無法符合兼具高頻寬和低延遲的需求。

特斯拉是在 2022 年 8 月的 Hot Chips 34 首次公開 Dojo 超級電腦的技術細節,也證實了使用台積電 7 奈米製程,而不是最早謠傳的三星。

▲ Dojo 超級電腦的 D1 晶片以 5x5 陣列所組成,直接用掉一整片 12 吋晶圓。

▲ Dojo 超級電腦的主要三大組成結構與其功能:「計算」的 Training Tile、「記憶體」的 Dojo Interface Processor(連接 Main Host 的 TTP 網路界面處理器)與「I/O」的 Mojo 網路卡(由 Mojo Host 餵食訓練用的資料)。

▲ Dojo 內部的 TTP 界面處理器(Dojo Interface Processor,DIP),經由 PCIe Gen 4 界面連接系統主機(Main Host),在整台 Dojo 超級電腦中扮演著「系統記憶體」的角色,接收來自 TTPoE 網路的資料,再餵給上述的 Dojo Training Tile 計算,包含 32GB HBM 記憶體(理論頻寬 800GB/s),以及足以匹配記憶體的對內 900GB/s 與對外 50GB/s 的 TTP 界面。在此就可一睹 TTPoE 的全名。

▲ 繼 2022 年特斯拉公開 Dojo 超級電腦的全貌,2024年進一步聚焦於 TTPoE 通訊協定。

▲ 特斯拉表示「藉由軟體實作的 TCP/IP 對 AI 太慢了」,而使用乙太網路標準(IEEE 802.1Qbb)的優先順序流程控制(Priority Flow Control,PFC)消除網路連結上壅塞所造成的封包遺失,又太過複雜脆弱,所以需要更簡單暴力的手段。

▲ TTPoE 是完全以硬體執行的點對點傳輸層協定,也不需要特殊的交換機。

▲ 一圖勝千言,這比較圖直接強調 TTP 是以硬體實作、取代 TCP 的客製化傳輸層(Transport)通訊協定,這裡也清楚標示了更上層通訊協定會傳輸「哪些東西」,如 Layer 5 協議層(Session)的 Dojo RDMA 描述器,這可用來指定 RDMA 搬資料的來源和目標,包含 DIP 的 HBM 記憶體。

▲ TTP 透過消除 TCP 的等待狀態(TIME_WAIT)以減少延遲,開啟連線時,原先 TCP 的三段式交握(Handshake)被簡化成兩段。特斯拉的目標是「微秒級(µs,1000000 分之 1 秒)」的延遲,因此即使是毫秒(ms,1000 分之 1 秒)級的 TIME_WAIT 持續時間也可能導致嚴重的問題。

▲ TTP 的傳輸範例,可以看到兩段式交握後就馬上送出資料(TTP_PAYLOAD),其中 ID3 的資料負載可能已經遺失或失序。這些簡化的開啟連結和關閉連結序列是以硬體實做,這或許意謂著軟體層不必實際創建連結,只要告訴硬體它想向那個目的地發送資料,或從哪個來源地接收資料。

▲ 論狀態機的複雜度,TCP 與 TTP 有如天壤之別,後者被簡化到完全使用硬體實做,並且只需要實體記憶體就容量足夠,無需虛擬記憶體。

▲ TTP 的標頭框包(Header Frame)沿用現有的乙太網路。

▲ 不同於「無損」的 RDMA 網路,TTP 預期底層網路有可能遺失封包並重新傳輸,這比較像「可靠的」TCP,而不是「不可靠的」UDP。TCP 壅塞控制的概念是讓每個傳送端決定目前網路有多大容量,以便知道自己可以同時傳送多少封包,傳統的 TCP 實做一個滑動壅塞窗口(Sliding Congestion Window),用來限制傳送端在一個連線上同時間能傳送多少資料,如封包得到即時確認,這視窗就會擴大,而增加頻寬,但假若封包被丟棄或著在時間閾值內沒有收到確認,它會迅速縮小,這使得 TCP 能適應不同的連線品質。但 TTP 不會根據封包遺失進行縮放,硬體僅追蹤定義壅塞視窗大小的 SRAM 緩衝區(容量 1MB),當填滿緩衝區時就停止發送,並透過重新傳輸 SRAM 緩衝區中保存的資料來處理封包遺失,這也抑制了重新傳輸風暴(Replay Storms)的規模。

▲ 跟 TCP 一樣,TTP 使用丟棄封包進行壅塞控制,但由於 TTP 被預設運行於低延遲的底層網路,不打算擺在品質良窳不齊的開放網際網路,特斯拉就有足夠的本錢採取暴力手段來解決問題。以壅塞管理(Congestion Management)為例,TTPoE 在每個傳輸端點獨立處理,而非像 InfiniBand 集中在交換器的「信用系統」、如果端點用完「信用額度」就會停止發送、並不會丟棄封包,但 TTPoE 透過簡單地丟棄封包處理壅塞,降低了網路交換器的複雜性。換言之,從這個角度來看,TPP的壅塞控制是分散在端點,而並非集中在中央網路或交換器,所以反而比較像是在傳統定義上有點微妙差別的流量控制。

▲ 特斯拉在位於晶片和標準乙太網路硬體之間的 IP 區塊 TTP MAC(Medium Access Control) 處理 TTPoE 協定,此 IP 區塊在實做前先以 FPGA 實例化。

▲ TTP MAC 的微架構相當近似於共享快取記憶體,仲裁器在考量到排序的情況下,在多筆傳輸請求之間進行選擇,傳輸中的封包在被確認後會按照順序「退出(Retire)」,讓人聯想到 CPU 在指令重新排序緩衝區(ReOrder Buffer,ROB)依序退出指令。在這微架構中最重要 的部分是做為上述「壅塞視窗」的 1MB SRAM 傳輸緩衝區。特斯拉表示這容量足以承受大約 80 微秒(0.08 秒)的網路延遲,而不會造成明顯的頻寬損失。換言之,其速度相當於 100Gb/s,剛好對應 Mojo 網路卡的 100GbE 規格。在最下面可看到 TTP MAC 可執行 DIP 上 HBM 記憶體之間的 RDMA 資料複製。

▲ TTP MAC 實做在特斯拉所謂「愚蠢的(Dumb)」 Mojo 100GbE 網路界面卡,內建 Dojo DMA 引擎,運作功率低 於20W,擁有 8GB DDR4 記憶體和 PCIe Gen 3 x16 界面。PCIe Gen 3 和 DDR4 都不是尖端技術,但有助於控制成本,希望盡可能便宜和簡單,也是「愚蠢」一字的由來。特斯拉發現 Dojo 超級電腦的吞吐量,可能受到外部主機將資料推送到超級電腦的速度限制,所以透過添加更多主機節點的廉價方式來解決這個問題,而廉價的網路卡則有助於以經濟高效的途徑實現這個目標。Mojo 這個名稱就源自於這樣的想法:額外的主機節點為 Dojo 提供更多的 Mojo 以保持效能提升。

▲ TTP 在整個 Dojo 超級電腦的應用全貌。

▲ 由大量 Mojo 主機和 Dojo 超級電腦所組成的計算大廳(MDCH)。

▲ 這是理論效能 4 ExaFlops(BF16/FP16)的 Dojo 工程測試系統,具有 40PB 的本地端儲存空間,以及一堆不可思議的瘋狂數字,像控制 DIP(Dojo Interface Processor)的系統主機(Main Host)的 40960 個 CPU 核心,和專門餵資料的 Mojo 主機的 61440 個 CPU 核心,某種程度上也間接象徵著馬斯克的狂人形象。

▲ Dojo 超級電腦使用來自 Arista 的交換器,當網路規模更大、跳點(Hop)數更多時,增加的延遲會降低有效的頻寬。

▲ 特斯拉即將加入 UEC,並且開放 TTPoE 協定。只不過,一家做電動車的公司加入 UEC,還是讓人感覺怪怪的。

▲ 最後,以「原型工程很簡單,擴展架構很困難」做為結尾,感謝特斯拉內的相關部門與人員,但很諷刺的是,過沒多久,TTPoE 項目負責人 Eric Quinnell 就離職了。

總之,TTPoE 的主要特性與「未來展望」,依序如下:

  • 超低延遲:不限於 Dojo 超級電腦,亦適用像自動駕駛和金融交易等對延遲極為敏感的環境。

  • 硬體執行:與主要依賴軟體實作的 TCP/IP 不同,TTPoE 完全基於硬體執行,這使其可以在標準的乙太網路上高效運行,並利用標準的 Layer 2(Data Link)傳輸,無需特殊的交換機。

  • 改善封包遺失:TTPoE 可以預測封包遺失,並內建重新傳輸機制,在必備穩定資料傳輸的情況下,比傳統協定(如TCP和UDP)更有效率。

  • 增強的安全性:TTPoE 整合加密和身分驗證等安全功能,更易於保護自動化場域和工業等敏感應用中的資料。

  • 可擴展性:TTPoE 可因應現代電動車的資料增長,應用潛力包含自動駕駛和即時線上軟體更新等功能。

此外,特斯拉已加入 Ultra Ethernet Consortium,亟欲推廣該通訊協定於更廣泛的應用領域,提高多種應用中的資料傳輸速度和可靠性,此舉可能將對各行各業產生重大影響,也很符合伊隆·馬斯克那爭議不斷卻又令人驚嘆的行事風格,讓人不得不想起前陣子 SpaceX 上演令世人印象深刻的「筷子夾火箭」,或許假以時日,在計算機工業的世界,特斯拉和 TTPoE 也將會帶來似曾相似的巨大衝擊。

至於特斯拉近來高層管理人員變動頻繁的背後有哪些內幕,就不在本文探討的範圍之內,說不定各位讀者知道的八卦,恐怕還比筆者多上不少,唯一可以確定的是,馬斯克絕對不是一個好搞定的老闆。

(首圖為示意圖,來源:pixabay

立刻加入《科技新報》LINE 官方帳號,全方位科技產業新知一手掌握!

查看原始文章

更多理財相關文章

01

獨家/知名金控銀行驚傳上司掌摑同事案 勞動部回應了

三立新聞網
02

IG騙很大!設計師曝最雷裝潢 夢幻窗邊臥榻九成屋主做了就後悔

鏡報
03

台積電熊本二廠驚傳停工!日媒曝施工機具幾乎全撤 官方僅一句話回應

風傳媒
04

不請假的員工虧大了?勞動部修法讓全勤獎金「人人有份」,恐造成 5 大亂象

經理人月刊
05

零地主戶2/建商整合住戶闢豪宅賺一筆 從前銷售話術隱晦現在不藏了

CTWANT
06

防堵詐騙車手提領!財政部擬推「ATM領錢要露臉」 金管會回應了

CTWANT
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...