人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)應(yīng)用的強(qiáng)烈需求對(duì)數(shù)據(jù)中心的性能、可靠性和可擴(kuò)展性提出了挑戰(zhàn),尤其是當(dāng)架構(gòu)師模仿公共云的設(shè)計(jì)以簡(jiǎn)化向混合云和內(nèi)部部署的過(guò)渡時(shí)。
GPU(圖形處理單元)服務(wù)器如今很常見(jiàn),圍繞GPU計(jì)算的生態(tài)系統(tǒng)正在迅速發(fā)展,以提高GPU工作負(fù)載的效率和可擴(kuò)展性。然而在避免存儲(chǔ)和網(wǎng)絡(luò)中潛在的瓶頸的同時(shí),也有一些技巧可以很大限度地提高GPU的利用率。
Excelero公司首席技術(shù)官Sven Breuner和首席架構(gòu)師Kirill Shoikhet提供了9個(gè)為人工智能、機(jī)器學(xué)習(xí)和深度學(xué)習(xí)做好準(zhǔn)備的更好實(shí)踐。
數(shù)據(jù)點(diǎn)1:了解目標(biāo)系統(tǒng)性能、投資回報(bào)率和可擴(kuò)展性計(jì)劃。
這樣,他們就可以與數(shù)據(jù)中心目標(biāo)相吻合。隨著人工智能成為核心業(yè)務(wù)的重要組成部分,大多數(shù)組織都從最初的少量預(yù)算和少量培訓(xùn)數(shù)據(jù)集入手,并為無(wú)縫和快速的系統(tǒng)增長(zhǎng)在基礎(chǔ)設(shè)施方面做好準(zhǔn)備。需要構(gòu)建所選的硬件和軟件基礎(chǔ)設(shè)施,以實(shí)現(xiàn)靈活的橫向擴(kuò)展,以避免在每個(gè)新的增長(zhǎng)階段產(chǎn)生破壞性的變化。數(shù)據(jù)科學(xué)家與系統(tǒng)管理員之間的緊密協(xié)作對(duì)于了解性能要求,并了解基礎(chǔ)設(shè)施可能需要隨著時(shí)間的推移而發(fā)展而至關(guān)重要。
數(shù)據(jù)點(diǎn)2:評(píng)估集群多個(gè)GPU系統(tǒng)。
在擁有多個(gè)GPU的服務(wù)器中可以在系統(tǒng)內(nèi)部實(shí)現(xiàn)高效的數(shù)據(jù)共享和通信,并具有成本效益,而參考設(shè)計(jì)假定將來(lái)會(huì)在集群中使用,并且在單個(gè)服務(wù)器中最多支持16個(gè)GPU。多GPU服務(wù)器需要準(zhǔn)備好以非常高的速率讀取傳入的數(shù)據(jù),以保持GPU滿載運(yùn)行,這意味著它需要一個(gè)超高速網(wǎng)絡(luò)連接,一直到培訓(xùn)數(shù)據(jù)庫(kù)的存儲(chǔ)系統(tǒng)。但是在某個(gè)時(shí)候,單臺(tái)服務(wù)器將不足以在合理的時(shí)間內(nèi)通過(guò)不斷增長(zhǎng)的培訓(xùn)數(shù)據(jù)庫(kù)進(jìn)行工作,因此,在設(shè)計(jì)中構(gòu)建共享存儲(chǔ)基礎(chǔ)設(shè)施將使得隨著人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)用途的擴(kuò)展,并更容易添加GPU服務(wù)器。
數(shù)據(jù)點(diǎn)3:評(píng)估人工智能工作流程各個(gè)階段的瓶頸。
數(shù)據(jù)中心基礎(chǔ)設(shè)施需要能夠同時(shí)處理人工智能工作流程的所有階段。對(duì)于具有成本效益的數(shù)據(jù)中心來(lái)說(shuō),擁有可靠的資源調(diào)度和共享概念是至關(guān)重要的,因此,當(dāng)一組數(shù)據(jù)科學(xué)家獲得需要攝取和準(zhǔn)備的新數(shù)據(jù)時(shí),其他人將對(duì)其可用數(shù)據(jù)進(jìn)行培訓(xùn),而在其他地方,先前生成的模型將用于生產(chǎn)。Kubernetes已經(jīng)成為解決這一問(wèn)題的主要解決方案,它使云計(jì)算技術(shù)在內(nèi)部部署很容易獲得,并使混合部署變得可行。
數(shù)據(jù)點(diǎn)4:查看用于優(yōu)化GPU利用率和性能的策略。
許多人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)應(yīng)用程序的計(jì)算密集型性質(zhì)使基于GPU的服務(wù)器成為常見(jiàn)選擇。但是,盡管GPU可以有效地從內(nèi)存加載數(shù)據(jù),但是訓(xùn)練數(shù)據(jù)集通常遠(yuǎn)遠(yuǎn)超過(guò)內(nèi)存的容量,并且涉及的大量文件變得更加難以攝取。在GPU服務(wù)器之間以及與存儲(chǔ)基礎(chǔ)設(shè)施之間、實(shí)現(xiàn)GPU數(shù)量與可用CPU功率、內(nèi)存和網(wǎng)絡(luò)帶寬之間的最佳平衡至關(guān)重要。
數(shù)據(jù)點(diǎn)5:支持訓(xùn)練和推理階段的需求。
在訓(xùn)練系統(tǒng)“看貓”的一個(gè)經(jīng)典示例中,計(jì)算機(jī)執(zhí)行數(shù)字游戲(或更確切地說(shuō)是GPU)需要看到很多顏色各不相同的貓。由于包含大量并行文件讀取的訪問(wèn)的性質(zhì),NVMe閃存通過(guò)提供超低的訪問(wèn)延遲和每秒的大量讀取操作很好地滿足了這些要求。在推理階段,其挑戰(zhàn)是相似的,因?yàn)閷?duì)象識(shí)別通常實(shí)時(shí)進(jìn)行,這是NVMe閃存還具有延遲優(yōu)勢(shì)的另一個(gè)用例。
數(shù)據(jù)點(diǎn)6:考慮并行文件系統(tǒng)和替代方案。
諸如IBM公司的SpectrumScale或BeeGFS之類的并行文件系統(tǒng)可以幫助有效地處理大量小文件的元數(shù)據(jù),并通過(guò)在網(wǎng)絡(luò)上每秒交付數(shù)萬(wàn)個(gè)小文件,從而使機(jī)器學(xué)習(xí)數(shù)據(jù)集的分析速度提高3到4倍。鑒于訓(xùn)練數(shù)據(jù)具有只讀性,因此在將數(shù)據(jù)量直接提供給GPU服務(wù)器并通過(guò)Kubernetes之類的框架以共享方式共享數(shù)據(jù)時(shí),也可以完全避免使用并行文件系統(tǒng)。
數(shù)據(jù)點(diǎn)7:選擇正確的網(wǎng)絡(luò)主干。
人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)通常是一種新的工作負(fù)載,將其重新安裝到現(xiàn)有的網(wǎng)絡(luò)基礎(chǔ)設(shè)施中,通常無(wú)法支持復(fù)雜計(jì)算和快速高效數(shù)據(jù)傳輸所需的低延遲、高帶寬、高消息速率和智能卸載。基于RDMA的網(wǎng)絡(luò)傳輸RoCE(融合以太網(wǎng)上的RDMA)和InfiniBand已成為滿足這些新需求的標(biāo)準(zhǔn)。
數(shù)據(jù)點(diǎn)8:考慮四個(gè)存儲(chǔ)系統(tǒng)的性價(jià)比杠桿。
(1)高讀取吞吐量與低延遲結(jié)合在一起,這不會(huì)限制混合部署,并且可以在云平臺(tái)或內(nèi)部部署資源上運(yùn)行。
(2)數(shù)據(jù)保護(hù)。人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)存儲(chǔ)系統(tǒng)通常比數(shù)據(jù)中心中的其他系統(tǒng)要快得多,因此在完全故障后從備份中恢復(fù)可能會(huì)花費(fèi)很長(zhǎng)時(shí)間,并且會(huì)中斷正在進(jìn)行的操作。深度學(xué)習(xí)訓(xùn)練的只讀特性使它非常適合分布式擦除編碼,在這種存儲(chǔ)中,最高容錯(cuò)能力已經(jīng)內(nèi)置在主存儲(chǔ)系統(tǒng)中,原始容量和可用容量之間的差異很小。
(3)容量彈性可適應(yīng)任何大小或類型的驅(qū)動(dòng)器,以便隨著閃存介質(zhì)的發(fā)展和閃存驅(qū)動(dòng)器特性的擴(kuò)展,數(shù)據(jù)中心可以在最重要的情況下最大程度地實(shí)現(xiàn)規(guī)模化的性價(jià)比。
(4)性能彈性。由于人工智能數(shù)據(jù)集需要隨著時(shí)間的推移而增長(zhǎng),以進(jìn)一步提高模型的準(zhǔn)確性,因此存儲(chǔ)基礎(chǔ)設(shè)施應(yīng)實(shí)現(xiàn)接近線性的縮放系數(shù),在這種情況下,每增加一次存儲(chǔ)都會(huì)帶來(lái)同等的增量性能。這使得組織可以從小規(guī)模開(kāi)始,并根據(jù)業(yè)務(wù)需要無(wú)中斷地增長(zhǎng)。
數(shù)據(jù)點(diǎn)9:設(shè)置基準(zhǔn)和性能指標(biāo)以幫助實(shí)現(xiàn)可擴(kuò)展性。
例如,對(duì)于深度學(xué)習(xí)存儲(chǔ),一種度量標(biāo)準(zhǔn)可能是每個(gè)GPU每秒處理X個(gè)文件(通常為數(shù)千或數(shù)萬(wàn)個(gè)),其中每個(gè)文件的平均大小為Y(從幾十個(gè)到數(shù)千個(gè))KB。預(yù)先建立適當(dāng)?shù)亩攘繕?biāo)準(zhǔn)有助于從一開(kāi)始就確定架構(gòu)方法和解決方案,并指導(dǎo)后續(xù)擴(kuò)展。
責(zé)編AJX
-
人工智能
+關(guān)注
關(guān)注
1796文章
47734瀏覽量
240445 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8442瀏覽量
133107 -
深度學(xué)習(xí)
+關(guān)注
關(guān)注
73文章
5516瀏覽量
121586
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論