作者:西部數據公司 企業(yè)級Device產(chǎn)品管理部副總裁Ulrich Hansen 各領(lǐng)域的業(yè)務(wù)都在將以AI為例的機器學(xué)習技術(shù)引入其流程中,以期為客戶(hù)帶來(lái)更好的產(chǎn)品,為股東創(chuàng )造更高的營(yíng)收成果。然而,要有效部署AI,需要自定義的機器學(xué)習模型、大量的計算和數量不可預估的數據。處理PB級數據,無(wú)論這數據是來(lái)自于最小的物聯(lián)網(wǎng)設備還是世界上最大的城市,這一任務(wù)對設計于兆字節和毫秒的時(shí)代的存儲技術(shù)來(lái)說(shuō)都將是一大挑戰。 為機器學(xué)習提供所有的數據,就需要為內存速度存儲設計一項新的存儲接口技術(shù):NVM Express (NVMe)。NVMe與SATA和SAS不同,它消除了磁盤(pán)為中心協(xié)議的延遲誘導水平,而使用更快的通用處理器連接技術(shù)和PCI Express (PCIe)來(lái)減少延遲,為每個(gè)設備提供大量的帶寬能力。對于PB級別的專(zhuān)注和微秒的處理使得NVMe非常適合機器學(xué)習。 數據是AI傳遞途徑 機器學(xué)習的關(guān)鍵是數據。生成有意義的結果需要處理大量數據,這就要求我們有經(jīng)過(guò)深思熟慮的數據工作流程。每個(gè)公司都有著(zhù)不同的數據工作流程,以滿(mǎn)足其自身的業(yè)務(wù)需求,流程可大概分為以下階段:收集、準備、設計和訓練。這四個(gè)階段的數據工作流程輸出的通常是可以對邊緣或核心的新數據進(jìn)行推斷的模型。由于需要大量的數據,因此所有階段都需要通過(guò)其對數據流的優(yōu)化,避免出現瓶頸。NVMe接口的設計就是為了滿(mǎn)足此要求,可以通過(guò)以下四種方式為AI的傳遞途徑提供幫助: • 更快捷、更經(jīng)濟實(shí)惠的數據收集 • 更快速的數據集準備周期 • 更短的模型設計周期轉變時(shí)間 • 更有硬件效率的模型訓練 NVMe用于更智能的數據收集 實(shí)現AI首先會(huì )面臨到的挑戰即是如何將原始數據收集到集中式數據存儲中。這些數據的種類(lèi)幾乎是無(wú)限的:包括來(lái)自IOT設備的傳感器報告、網(wǎng)絡(luò )日志、制造質(zhì)量報告等。事實(shí)上,數據是由例如Apache Spark之類(lèi)的工具或商業(yè)服務(wù)對該任務(wù)進(jìn)行處理,然后在新的數據流中進(jìn)行篩選,最后將非結構化數據輸出到NoSQL數據庫集群中。NVMe在提高其反應速度的同時(shí),還能減少占用這些服務(wù)器的物理空間。 傳統的非結構化查詢(xún)語(yǔ)言(NoSQL=Not Only SQL)集群由具有多個(gè)本地硬盤(pán)接口的服務(wù)器和SATA硬盤(pán)組成。硬盤(pán)確實(shí)為PB級的數據提供了經(jīng)濟實(shí)惠的存儲方法,但要實(shí)現更大的帶寬,需要通過(guò)幾十個(gè)SATA或SAS硬盤(pán)與服務(wù)器連接。此架構明顯增加了單個(gè)服務(wù)器的大小,并且快速填充數據中心的機架,其中CPU服務(wù)器卻大多處于空閑的狀態(tài)。 單獨的NVMe接口即可為多種獨立的SATA或SAS接口提供所需的帶寬,且只需要一個(gè)附加卡或2.5寸硬盤(pán)。用更小的NVMe SSD替換單個(gè)NoSQL服務(wù)器的大硬盤(pán)陣列,可以縮小單個(gè)NoSQL節點(diǎn)并顯著(zhù)減少整個(gè)機架的空間。 NVMe用于更智能數據準備 當今AI訓練的一個(gè)必要前提就是擁有TB級或PB級的數據。但通常該數據并不是隨時(shí)可用的格式。需要將數據轉化成更容易被AI傳遞途徑處理的格式,過(guò)濾掉異常值和虛假數據。對于部分不適合使用或不能合法使用的數據,例如受到保護的個(gè)人信息,也可能需要在這一階段將其過(guò)濾掉。 這種處理需求可能會(huì )超過(guò)一個(gè)存儲系統的可受范圍,如果該存儲系統不是為高吞吐量而設計的話(huà)。與NVMe基于PCIe高達6.4GB/s或更高的帶寬相比,SAS和SATA的每個(gè)接口的有限帶寬顯得相對緩慢。同時(shí)在這一準備階段,帶寬不是存儲系統的唯一要求:并行性也是一大關(guān)鍵因素。由于處理的數據量非常大,因此,在這一處理階段,并行操作存在于集群中的多個(gè)服務(wù)器,以及在單個(gè)服務(wù)器中多個(gè)核心上。NVMe支持高達64K的命令隊列和64K的命令,簡(jiǎn)化了這些服務(wù)器內的并行操作。 NVMe用于更智能的模型設計 在將數據清理、準備成統一且容易理解的格式后,數據科學(xué)家的工作才正要開(kāi)始。由于每個(gè)問(wèn)題都是不同的,因此很多時(shí)候,科學(xué)家需要迭代地開(kāi)發(fā)出獨特的機器學(xué)習結構。只有在多次試驗和失敗后,較小的數據子集才能成為候選的可訓練模型,發(fā)送到下一個(gè)處理階段。畢竟在所有科學(xué)工程項目在得到最終解決方案前,都會(huì )經(jīng)歷過(guò)許多錯誤,因此需要進(jìn)行多次的嘗試。 在試錯的過(guò)程中,單個(gè)循環(huán)的速度會(huì )對最后的模型設計和產(chǎn)生的機器學(xué)習模型的質(zhì)量造成外部影響。而將設計測試的循環(huán)時(shí)間從10個(gè)小時(shí)縮短到8個(gè)小時(shí),會(huì )使數據科學(xué)家的效率翻倍?茖W(xué)家可以在早上設計和運行測試,獲得結果,并及時(shí)調整參數,而不是在早上開(kāi)始工作,直到第二天才看到結果。以每天進(jìn)行一個(gè)測試的效率來(lái)說(shuō),科學(xué)家在下午下班前就能開(kāi)始另一項工作,每天能有兩個(gè)循環(huán)的效率。 就如之前的階段,NVMe帶寬和并行性發(fā)揮其作用,幫助提高數據科學(xué)家的效率。在科學(xué)家們的個(gè)人工作室,他們對模型進(jìn)行沙盤(pán)推演的測試,利用NVMe的低延時(shí)性運行系統、測試數據集,并為分析和測試運行提供更快的暫存空間。 NVMe用于更智能的模型訓練 在數據工程師將數據格式化成為可用于機器學(xué)習的格式,同時(shí)數據科學(xué)家對學(xué)習模型的結構進(jìn)行設計后,網(wǎng)絡(luò )的實(shí)際訓練才正式開(kāi)始。通過(guò)無(wú)數配備了加速器的機器將格式化后的數據提取出來(lái),并用它來(lái)提煉模型的參數,直到將數據匯聚成一個(gè)模型,才可用于實(shí)際的推理應用。 基于GPU的早期加速技術(shù)很少受到I/O的限制,因此存儲性能往往不是我們關(guān)注的焦點(diǎn)。運行服務(wù)器的通用CPU有充足的時(shí)間處理I/O操作,并為GPU準備下一批數據。但這在現今早已不適用了,其擁有FPGA,甚至實(shí)現了ASIC硬件定制以進(jìn)行模式訓練。 相比以前的技術(shù),由于現代機器學(xué)習加速器可以更快地處理數量級的數據,運行服務(wù)器的通用CPU需要能有效地處理I/O數量級的模式。像SATA和SAS這樣的傳統I/O棧浪費了寶貴的CPU周期,將I/O請求轉換為上世紀設計的協(xié)議。這樣就增加了I/O請求的延遲,會(huì )直接影響加速器的使用。這些遺留I/O棧也增加了主機CPU的負載,限制了每個(gè)處理器上可運行的加速器的數量。 由于從一開(kāi)始就將NVMe設計成為內存速度存儲協(xié)議,因此其不會(huì )產(chǎn)生協(xié)議轉換的成本。這就減少了處理器的負載,有助于保證及時(shí)將數據反饋到下一代加速器中。目前正在研究的NVMe協(xié)議具有一個(gè)激動(dòng)人心的擴展—控制器內存緩沖(CMB),允許NVMe設備在不受主機干預的情況下,得以直接處理內存轉換并進(jìn)一步減少負載。 NVMe-用于更智能的AI 機器學(xué)習和AI是建立在數據之上。從最初的數據收集、將其處理為可用的格式、開(kāi)發(fā)學(xué)習架構、到最后訓練的模型都需要一個(gè)在PB級規模上有效的存儲接口,并且針對微秒級延遲進(jìn)行優(yōu)化。NVMe作為一項提升內存速度的存儲技術(shù)能為機器學(xué)習和其它應用提供所需的存儲接口。 關(guān)于作者: Ulrich Hansen,西部數據公司企業(yè)級Device產(chǎn)品管理部副總裁。他負責西部數據公司企業(yè)級SSD產(chǎn)品組合的產(chǎn)品策劃、生產(chǎn)線(xiàn)管理和技術(shù)市場(chǎng),包括確保在新產(chǎn)品和技術(shù)成功引入公司和數據中心市場(chǎng)時(shí),對公司下一代的SSD產(chǎn)品進(jìn)行定義。同時(shí)他還負責市場(chǎng)機遇和新興產(chǎn)品的評估、新產(chǎn)品需求定義、將客戶(hù)和行業(yè)合作伙伴與西部數據的產(chǎn)品和技術(shù)戰略相結合。 Ulrich Hansen擁有超過(guò)20年的高科技領(lǐng)域經(jīng)驗,包括服務(wù)器、存儲、網(wǎng)絡(luò )和通訊系統。在HGST加入西部數據之前,Ulrich Hansen曾任Entorian Technologies市場(chǎng)部的高級總監,并在A(yíng).T. Kearney和戴爾等管理咨詢(xún)公司和科技公司擔任產(chǎn)品開(kāi)發(fā)、市場(chǎng)規劃和企業(yè)策略等高級職位。 Ulrich Hansen擁有德克薩斯大學(xué)奧斯汀分校企業(yè)管理碩士學(xué)位以及德國亞琛工業(yè)大學(xué)電氣工程的碩士學(xué)位。 |