隨著數(shù)據(jù)生成的不斷增加,線性性能擴(kuò)展已成為橫向擴(kuò)展存儲(chǔ)的絕對(duì)要求。存儲(chǔ)網(wǎng)絡(luò)就像汽車(chē)道路系統(tǒng):如果道路不是為速度而建造的,那么汽車(chē)的潛在速度就無(wú)關(guān)緊要了。即使是法拉利在充滿障礙的非鋪裝的土路上也會(huì)很慢。
連接存儲(chǔ)節(jié)點(diǎn)的以太網(wǎng)網(wǎng)絡(luò)架構(gòu)可能會(huì)阻礙橫向擴(kuò)展存儲(chǔ)性能。NVIDIA 加速以太網(wǎng)可以消除性能瓶頸,從而為一般應(yīng)用程序,特別是 AI/ML 實(shí)現(xiàn)最高的存儲(chǔ)性能。
橫向擴(kuò)展存儲(chǔ)需要強(qiáng)大的網(wǎng)絡(luò)
全球每秒有 54000 張照片被拍攝。當(dāng)您閱讀本文時(shí),這一數(shù)字將會(huì)更高。無(wú)論您的業(yè)務(wù)是什么,您都有可能擁有大量需要存儲(chǔ)和分析的數(shù)據(jù),而且數(shù)據(jù)量每天都在增長(zhǎng)。
以前使用越來(lái)越大的存儲(chǔ)文件服務(wù)器的縱向擴(kuò)展方法已被橫向擴(kuò)展方法所取代,以提供在容量和性能方面線性擴(kuò)展的存儲(chǔ)。
借助橫向擴(kuò)展存儲(chǔ)或分布式存儲(chǔ),可以配置和連接多個(gè)較小的節(jié)點(diǎn),使其成為一個(gè)邏輯單元。單個(gè)文件或?qū)ο罂梢苑植荚诙鄠€(gè)節(jié)點(diǎn)上。
當(dāng)需要更大的規(guī)模時(shí),可以輕松添加額外的存儲(chǔ)節(jié)點(diǎn),以提高存儲(chǔ)容量和性能。這既適用于傳統(tǒng)的企業(yè)存儲(chǔ)供應(yīng)商解決方案,也適用于軟件和硬件獨(dú)立采購(gòu)的軟件定義解決方案。
分布式存儲(chǔ)實(shí)現(xiàn)了靈活的擴(kuò)展和成本效益,但需要高性能網(wǎng)絡(luò)來(lái)連接存儲(chǔ)節(jié)點(diǎn)。許多數(shù)據(jù)中心交換機(jī)不適合存儲(chǔ)的獨(dú)特流量特性,實(shí)際上可能會(huì)削弱橫向擴(kuò)展存儲(chǔ)解決方案的性能。
存儲(chǔ)流量與傳統(tǒng)流量的區(qū)別
對(duì)于許多用例來(lái)說(shuō),網(wǎng)絡(luò)流量是一致且同構(gòu)的,傳統(tǒng)以太網(wǎng)就足夠了。但是,存儲(chǔ)設(shè)備生成的流量可能會(huì)導(dǎo)致以下詳述問(wèn)題。
01
網(wǎng)絡(luò)壓力
當(dāng)前的存儲(chǔ)解決方案受益于更快的 SSD 和存儲(chǔ)接口,如 NVMe 和 PCIe Gen 4(即將推出 PCIe Gen 5),旨在提供更高的性能。02
擁塞
當(dāng)存儲(chǔ)網(wǎng)絡(luò)架構(gòu)飽和時(shí),網(wǎng)絡(luò)擁塞就不可避免,就像高速公路上交通量過(guò)多時(shí)造成道路擁堵一樣。網(wǎng)絡(luò)擁塞對(duì)于橫向擴(kuò)展存儲(chǔ)來(lái)說(shuō)尤其成問(wèn)題,因?yàn)槊總€(gè)存儲(chǔ)節(jié)點(diǎn)都需要提供快速的數(shù)據(jù)傳輸。但當(dāng)出現(xiàn)擁塞時(shí),許多數(shù)據(jù)中心交換機(jī)都存在公平問(wèn)題,其中一些節(jié)點(diǎn)的速度會(huì)比其他節(jié)點(diǎn)慢得多。單個(gè)文件或?qū)ο笸ǔ7植荚诙鄠€(gè)節(jié)點(diǎn)上,因此任何降低單個(gè)節(jié)點(diǎn)速度的操作都會(huì)有效地降低整個(gè)集群的速度。03
突發(fā)流量
大多數(shù)存儲(chǔ)工作負(fù)載都是突發(fā)的,會(huì)產(chǎn)生密集的數(shù)據(jù)傳輸,并在短時(shí)間內(nèi)反復(fù)需要大量帶寬。當(dāng)這種情況發(fā)生時(shí),網(wǎng)絡(luò)交換機(jī)必須使用其緩沖區(qū)來(lái)吸收突發(fā),直到瞬時(shí)突發(fā)結(jié)束,從而防止數(shù)據(jù)包丟失。否則,數(shù)據(jù)包丟失將需要重新傳輸數(shù)據(jù),從而顯著降低應(yīng)用程序性能。04
存儲(chǔ)巨型幀
傳統(tǒng)的數(shù)據(jù)中心網(wǎng)絡(luò)流量使用的最大數(shù)據(jù)包大小( MTU)為 1.5KB。當(dāng)橫向擴(kuò)展存儲(chǔ)節(jié)點(diǎn)可以使用 9KB 的“巨型幀”時(shí),它們的性能會(huì)更好,這樣可以在提高吞吐量的同時(shí)降低? CPU 處理開(kāi)銷(xiāo)。許多使用商用交換機(jī) ASIC 構(gòu)建的數(shù)據(jù)中心交換機(jī)在處理巨型幀時(shí)表現(xiàn)不佳或不可預(yù)測(cè)。05
低延遲
提高存儲(chǔ) IOP 的方法之一是通過(guò)為基于閃存介質(zhì)中的讀/寫(xiě)操作實(shí)現(xiàn)幾個(gè)數(shù)量級(jí)延遲降低。?然而,當(dāng)網(wǎng)絡(luò)引入高延遲時(shí),尤其是由于過(guò)度緩沖,這些昂貴的性能改進(jìn)可能會(huì)丟失。
訓(xùn)練和推理都需要足夠的數(shù)據(jù)量和高速訪問(wèn),以確保 GPU 處理器足夠快地輸入數(shù)據(jù),使其保持被充分使用。在訓(xùn)練期間,所有節(jié)點(diǎn)都會(huì)執(zhí)行寫(xiě)操作,以提高模型的準(zhǔn)確性。這導(dǎo)致了突發(fā),使得交換機(jī)必須有效地處理?yè)砣?。最后,較低的存儲(chǔ)延遲使 GPU 能夠更有效地處理計(jì)算任務(wù)。
為什么 ASIC 不適合存儲(chǔ)流量
大多數(shù)數(shù)據(jù)中心交換機(jī)都是使用商用交換機(jī) ASIC 構(gòu)建的,這些 ASIC 針對(duì)傳統(tǒng)的數(shù)據(jù)流量模式和數(shù)據(jù)包大小進(jìn)行了成本優(yōu)化。為了在實(shí)現(xiàn)帶寬目標(biāo)的同時(shí)保持低成本,以太網(wǎng)交換機(jī)芯片供應(yīng)商通過(guò)使用分離緩沖區(qū)架構(gòu),這犧牲了公平性。
每個(gè)交換機(jī)都有一個(gè)緩沖區(qū),用于吸收流量突發(fā),并在發(fā)生擁塞時(shí)防止數(shù)據(jù)包丟失。常見(jiàn)的方法是擁有一個(gè)跨多個(gè)端口共享的緩沖區(qū)。然而,并非所有共享緩沖區(qū)都是相同的——存在不同的緩沖區(qū)架構(gòu)。
商用交換機(jī)沒(méi)有完全共享的緩沖區(qū),而是使用入口共享緩沖區(qū)或出口共享緩沖區(qū)。
對(duì)于入口共享緩沖區(qū),在一組傳入端口和特定內(nèi)存切片之間存在靜態(tài)映射。這些端口只能使用分配切片中的內(nèi)存,而不能使用整個(gè)緩沖區(qū),即使緩沖區(qū)的其余部分可用并且沒(méi)有人在使用它。
對(duì)于出口共享緩沖區(qū),在一組輸出端口和特定緩沖區(qū)內(nèi)存切片之間進(jìn)行映射。同樣,每組出口只能使用其分配的緩沖區(qū)切片,而不能使用整個(gè)緩沖區(qū)。
對(duì)于這兩種體系結(jié)構(gòu),保持在同一內(nèi)存切片中的流與在內(nèi)存切片之間傳輸?shù)牧鞔嬖谛袨榈牟煌?。如果許多流使用具有相同緩沖區(qū)的端口,那么這些端口將面臨更高的延遲和更低的吞吐量,而使用緩沖區(qū)其他切片的流量將享受更高的性能。
存儲(chǔ)性能取決于存儲(chǔ)流量(和其他流量)使用的端口以及這些端口緩沖區(qū)切片的繁忙程度。這就是為什么使用分離緩沖區(qū)的交換機(jī)經(jīng)常遇到公平性、可預(yù)測(cè)性和微突發(fā)吸收相關(guān)的問(wèn)題。
為什么深度緩沖區(qū)交換機(jī)
在存儲(chǔ)方面未得到優(yōu)化
深度緩沖區(qū)交換機(jī)通常指的是提供更多緩沖區(qū)(GB 而不是 MB)的交換機(jī)。深度緩沖區(qū)交換機(jī)通常被推廣用作路由器,因?yàn)槿绻W(wǎng)絡(luò)速度不匹配或出現(xiàn)多對(duì)一通信情況,它們可以吸收并保持大量流量突發(fā)。
但在大多數(shù)數(shù)據(jù)中心應(yīng)用程序(包括橫向擴(kuò)展存儲(chǔ))中,深度緩沖區(qū)交換機(jī)會(huì)對(duì)性能產(chǎn)生負(fù)面影響,原因如下:
01
作業(yè)完成時(shí)間
對(duì)于并行文件系統(tǒng),響應(yīng)速度最慢的存儲(chǔ)節(jié)點(diǎn)決定了獲取文件所需的時(shí)間。與具有切片的片上緩沖區(qū)的商用交換機(jī) ASIC 不同,深度緩沖區(qū)交換機(jī)同時(shí)具有片上和片外緩沖區(qū),并且它們都是切片的,而非完全共享的緩沖區(qū)。
想象一下,在流離開(kāi)交換機(jī)之前,有多少種流進(jìn)入交換機(jī)的方式。它們可以保持在一個(gè)片上內(nèi)存切片內(nèi)(速度最快),在片上內(nèi)存切片間傳輸(速度較慢),或在片上和片外內(nèi)存切片間傳輸(速度非常慢)。
所有這些流的行為都會(huì)有所不同,因此會(huì)導(dǎo)致存儲(chǔ)流量的公平性和可預(yù)測(cè)性問(wèn)題。由于這些問(wèn)題會(huì)降低一個(gè)或多個(gè)節(jié)點(diǎn)的速度,因此會(huì)對(duì)作業(yè)完成時(shí)間產(chǎn)生負(fù)面影響,并降低整個(gè)分布式存儲(chǔ)集群的速度。
02
延遲
交換機(jī)緩沖區(qū)越大,每個(gè)數(shù)據(jù)包必須經(jīng)過(guò)的隊(duì)列就越長(zhǎng),延遲也就越大。深度緩沖區(qū)交換機(jī)的測(cè)試平均端口到端口延遲超過(guò) 500 微秒。與同代的完全共享緩沖區(qū)交換機(jī)相比,NVIDIA Spectrum 1 的延遲僅為 0.3 微秒。而交換/路由數(shù)據(jù)包需要的時(shí)間是納秒而不是微秒。
深度緩沖區(qū)延遲高出 1000 倍。您可能想知道,這只是發(fā)生在擁塞的時(shí)候嗎?不會(huì)。在擁塞的情況下,深度緩沖區(qū)的延遲會(huì)高得多;事實(shí)上,最高可達(dá) 20 毫秒,或高出 50000 倍。對(duì)于數(shù)據(jù)中心之間的路由器來(lái)說(shuō),500 微秒的延遲可能還可以,但在數(shù)據(jù)中心內(nèi),這意味著閃存存儲(chǔ)性能的不可用。
03
功率和成本
深緩沖區(qū)交換機(jī)即使在空閑時(shí)也需要數(shù)百瓦的功率才能運(yùn)行,這使得其持續(xù)的運(yùn)營(yíng)成本更高。深度緩沖區(qū)交換機(jī)的初始購(gòu)買(mǎi)成本也高得多。如果性能更好,這可能是合理的,但實(shí)際測(cè)試證明恰恰相反。
選擇不合適的網(wǎng)絡(luò)交換機(jī)會(huì)嚴(yán)重拖慢存儲(chǔ)工作負(fù)載,使昂貴的快速存儲(chǔ)變得像更便宜、更慢的存儲(chǔ)一樣。
借助 NVIDIA Spectrum 可以降低資本支出和運(yùn)營(yíng)支出。節(jié)省的電力還可以用于機(jī)架內(nèi)的其他用途。
NVIDIA Spectrum 交換機(jī)
針對(duì)存儲(chǔ)進(jìn)行了優(yōu)化
使用商用交換 ASIC,流要么保持在同一個(gè)內(nèi)存切片上,要么在內(nèi)存切片之間流動(dòng)。
借助 NVIDIA Spectrum 交換機(jī),由于完全共享的緩沖區(qū),所有流的行為都是相同的。這種架構(gòu)的價(jià)值在于最大的突發(fā)吸收能力以及最佳的公平和可預(yù)測(cè)的性能。通過(guò)交換機(jī)的所有流都得到相同的處理,并且通常享有相同的良好性能,無(wú)論它們使用哪個(gè)入口和出口。
深度緩沖區(qū)交換機(jī)和
NVIDIA Spectrum 的基準(zhǔn)測(cè)試
第一種情況使用一個(gè)通用的存儲(chǔ)基準(zhǔn) FIO 工具,在后臺(tái)流量運(yùn)行時(shí)從兩個(gè)發(fā)起端發(fā)送到一個(gè)目標(biāo)端的寫(xiě)操作。這是一種典型的存儲(chǔ)場(chǎng)景。
該團(tuán)隊(duì)測(cè)量了 FIO 工作完成所需的時(shí)間(越短越好)。使用深度緩沖區(qū)交換機(jī),F(xiàn)IO 作業(yè)耗時(shí) 87 秒。使用 NVIDIA Spectrum 交換機(jī),作業(yè)運(yùn)行速度提高 40%,僅需 51 秒即可完成。
圖 1:與深度緩沖區(qū)交換機(jī)相比,NVIDIA Spectrum 交換機(jī)的存儲(chǔ)寫(xiě)入操作快 40%
深度緩沖區(qū)交換機(jī)大大增加了延遲,從而降低了存儲(chǔ)速度并降低了應(yīng)用程序性能。但是延遲能有多高?
對(duì)于第二種情況,該團(tuán)隊(duì)采用了深度緩沖區(qū)交換機(jī),并測(cè)試了在不同的擁塞用例下延遲是如何受到影響的。最大緩沖區(qū)占用率僅為整個(gè)緩沖區(qū)大小的 10% 左右。
圖 2:與緩沖區(qū)大小和緩沖區(qū)占用率相比的實(shí)際和預(yù)測(cè)延遲
從圖 2 左側(cè)的圖表中可以得出兩個(gè)有意義的見(jiàn)解。首先,深度緩沖區(qū)交換機(jī)延遲比 Spectrum 交換機(jī)高 50000 倍(2 – 19 毫秒,而 Spectrum 僅為 300 納秒)。
其次,緩沖區(qū)占用率和延遲之間存在明顯的線性相關(guān)性。換句話說(shuō),測(cè)試證明,占用的緩沖區(qū)越大,延遲就越大。
有了這一理解,圖 2 右側(cè)的圖表顯示了每個(gè)深度緩沖區(qū) ASIC(如 Jericho 1 、Jericho 2 或 Ramon)的最大延遲。這些非常高的延遲數(shù)通常與數(shù)據(jù)中心應(yīng)用程序不兼容,尤其與快速存儲(chǔ)解決方案不兼容。
對(duì)于第三種情況,該團(tuán)隊(duì)使用了兩臺(tái) Windows 計(jì)算機(jī),并同時(shí)將每臺(tái)計(jì)算機(jī)中的一個(gè)文件復(fù)制到同一目標(biāo)存儲(chǔ)中。
使用深度緩沖區(qū)交換機(jī)時(shí),一臺(tái) Windows 計(jì)算機(jī)的帶寬是另一臺(tái)計(jì)算機(jī)的三倍( 830MBps 與 290MBps 相比)。使用 Spectrum 交換機(jī)時(shí),每臺(tái)計(jì)算機(jī)的帶寬均為 584 MBps(如預(yù)期的 50%)。
實(shí)際測(cè)試表明,深度緩沖區(qū)交換機(jī)對(duì)數(shù)據(jù)中心應(yīng)用程序(如吸收數(shù)據(jù)包和防止數(shù)據(jù)丟失)沒(méi)有積極影響。
長(zhǎng)距離或廣域網(wǎng)連接可能需要深度緩沖區(qū)交換機(jī);然而,它們對(duì)于數(shù)據(jù)中心應(yīng)用程序來(lái)說(shuō)不是理想選擇,并且會(huì)產(chǎn)生負(fù)面影響,特別是當(dāng)工作負(fù)載擴(kuò)展到僅兩個(gè)節(jié)點(diǎn)之外時(shí),如本用例中所示。
圖 3 :深度緩沖區(qū)交換機(jī)為每個(gè)節(jié)點(diǎn)提供了不公平的帶寬(左圖),而 NVIDIA Spectrum 交換機(jī)提供了相等的帶寬(右圖)
這三個(gè)用例證明了為什么深度緩沖區(qū)交換機(jī)會(huì)對(duì) AI/ML 和存儲(chǔ)工作負(fù)載產(chǎn)生不利影響,而 Spectrum 交換機(jī)則提供了最大化的性能。
總結(jié)
NVIDIA Spectrum Ethernet switches?是專為 AI/ML 和存儲(chǔ)工作負(fù)載而構(gòu)建的,其性能優(yōu)于具有分離緩沖區(qū)或深度緩沖區(qū)的交換機(jī)。它們可以更好地處理?yè)砣?,防止?shù)據(jù)包丟失,并且在處理巨型幀(首選存儲(chǔ))方面表現(xiàn)出色。NVIDIA Spectrum 以太網(wǎng)交換機(jī)可以提供良好的應(yīng)用程序性能,網(wǎng)絡(luò)延遲也較低。
掃描下方二維碼,查看更多有關(guān) NVIDIA Spectrum Ethernet switches 的信息。
?
更多精彩內(nèi)容 使用 NVIDIA Spectrum-X 網(wǎng)絡(luò)平臺(tái)加速生成式 AI 工作負(fù)載
COMPUTEX2023 | NVIDIA 推出面向超大規(guī)模生成式 AI 的加速以太網(wǎng)平臺(tái)
原文標(biāo)題:借助 NVIDIA Spectrum 以太網(wǎng)最大限度地提高存儲(chǔ)網(wǎng)絡(luò)性能
文章出處:【微信公眾號(hào):NVIDIA英偉達(dá)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
-
英偉達(dá)
+關(guān)注
關(guān)注
22文章
3748瀏覽量
90836
原文標(biāo)題:借助 NVIDIA Spectrum 以太網(wǎng)最大限度地提高存儲(chǔ)網(wǎng)絡(luò)性能
文章出處:【微信號(hào):NVIDIA_China,微信公眾號(hào):NVIDIA英偉達(dá)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論