數據編排支持人工智能(AI)的下一步發(fā)展

發(fā)布時(shí)間:2021-9-24 16:04    發(fā)布者:eechina
關(guān)鍵詞: 數據編排 , 人工智能 , Speedster7t
Achronix 白皮書(shū)(白皮書(shū)編號:WP025)

本文概要

從深度嵌入式系統到超大規模數據中心部署,人工智能(AI)和機器學(xué)習(ML)技術(shù)正在為其中迅速擴展的一系列的產(chǎn)品和應用提供支持。盡管支持這些應用的硬件設計存在很大程度的差異,但都需要硬件加速。

深度學(xué)習技術(shù)需要大量的張量算術(shù)運算(tensor arithmetic operation)。為了支持實(shí)時(shí)執行,存儲器和處理器的性能必須滿(mǎn)足比標準軟件驅動(dòng)架構盡可能高得多的性能目標。這種需求導致去使用基于專(zhuān)用硬件加速器的設計,來(lái)執行并行化和高度流水線(xiàn)化的張量算術(shù)運算。為了避免通道阻塞,數據必須在合適的位置,合適的時(shí)間,以合適的格式出現。專(zhuān)用的數據編排硬件避免了加速器通道阻塞,從而支持以最高效率運行。

數據編排包括預處理和后處理操作,確保數據以最佳速度和最適合進(jìn)行高效處理的格式傳輸到機器學(xué)習引擎中。操作范圍從資源管理和使用規劃,到I/O適配、轉碼、轉換和傳感器融合,再到共享存儲陣列內的數據壓縮和重新排列。如何部署這些功能將取決于目標應用的性能和成本要求,但對于大多數應用場(chǎng)景而言,針對數據攝取、轉換和傳輸進(jìn)行優(yōu)化的可編程邏輯平臺為機器學(xué)習加速器提供了最佳的數據編排策略。

引言

深度學(xué)習給計算硬件帶來(lái)了巨大的壓力。向專(zhuān)用加速器的轉變?yōu)樾酒夹g(shù)提供了一種與人工智能發(fā)展保持同步的方法,但這些單元本身并不能夠滿(mǎn)足以更低的成本獲得更高性能的需求。

可以理解的是,集成電路(IC)供應商和系統公司一直專(zhuān)注于其矩陣和張量處理陣列的原始性能。在峰值吞吐量下,這些架構可以輕松達到以每秒萬(wàn)億次操作(TOPS)衡量的性能水平,即使對于旨在用于邊緣計算的系統也是如此。盡管可以理解,但如果由于數據不可用或需要為每個(gè)模型層轉換為正確的格式而導致延遲,那么對峰值TOPS的關(guān)注會(huì )帶來(lái)硬件利用率不足的風(fēng)險。

系統必須對網(wǎng)絡(luò )和存儲延遲進(jìn)行補償,并確保數據元素的格式和位置合適,同時(shí)以一致的速率傳入和傳出人工智能加速器。數據編排提供了在每個(gè)時(shí)鐘周期上確保數據格式和位置合適的方法,從而最大限度地提高系統吞吐量。

由于典型人工智能實(shí)現的復雜性,所以無(wú)論是位于數據中心、邊緣計算環(huán)境還是實(shí)時(shí)嵌入式應用,如自動(dòng)駕駛輔助系統(ADAS)設計,有許多任務(wù)必須由數據編排引擎處理,這些任務(wù)包括:
        數據操作(manipulation)
        在多個(gè)矢量單元之間進(jìn)行調度和負載平衡
        數據損壞的數據包檢查,例如由傳感器故障造成的數據損壞

盡管可以通過(guò)向核心處理陣列添加數據控制和異常處理硬件來(lái)實(shí)現這些功能,但是由于可能需要的操作種類(lèi)繁多,以及隨著(zhù)人工智能模型的發(fā)展對靈活性的需求也越來(lái)越高,這使得將這些功能硬連線(xiàn)到核心加速器芯片中可能成為一種昂貴的短期選擇。例如,在一些應用環(huán)境中,加密支持正迅速成為確保高數據安全性的需求,但根據每層數據的應用敏感性,可能會(huì )使用不同級別的加密。固定架構解決方案存在著(zhù)無(wú)法適應不斷變化的需求的風(fēng)險。

一種可能的方法是使用一個(gè)可編程的微處理器來(lái)控制通過(guò)加速器的數據流。這種方法的問(wèn)題在于軟件執行根本無(wú)法滿(mǎn)足加速器硬件的需求。需要一個(gè)更加以硬件為中心的數據編排響應,這使得加速器設計完全專(zhuān)注于核心通道效率成為可能。外部數據編排可以處理所有的存儲和I/O管理,確保操作數和權重的傳輸不間斷。由于數據編排引擎必須處理應用程序和模型設計的修訂和更改,因此硬連線(xiàn)邏輯不是一種合適的方法?删幊踢壿嬛С中薷,并避免了數據編排引擎無(wú)法更新的風(fēng)險。

原則上,現場(chǎng)可編程邏輯門(mén)陣列(FPGA)結合了分布式存儲器、算術(shù)單元和查找表,從而提供了組合功能,該組合功能非常適合人工智能驅動(dòng)的應用程序所需的流數據實(shí)時(shí)重組、重新映射和存儲器管理。FPGA支持創(chuàng )建定制的硬件電路,支持深度流水線(xiàn)化人工智能加速器的密集數據流,同時(shí)使用戶(hù)能夠根據需要改變實(shí)現方式以適應新的架構。然而,數據編排的性能要求需要新的FPGA設計方法。

數據編排的應用場(chǎng)景

在數據中心、邊緣計算和嵌入式系統部署等應用場(chǎng)景中,有許多不同類(lèi)型的數據編排架構。例如,在數據中心應用環(huán)境中,多個(gè)加速器可以部署在單個(gè)模型上,它們的數據吞吐量由一個(gè)或多個(gè)數據編排引擎管理。

推理系統需要數據編排來(lái)確保每個(gè)工作引擎的最大效用,以避免瓶頸,并確保盡可能快地處理輸入的數據樣本。分布式訓練增加了對神經(jīng)元權重快速更新的要求,這些更新必須盡快分配給處理相關(guān)模型部件的其他工作引擎,以避免停滯。

FPGA中的數據編排邏輯支持處理廣泛的權重分配和同步協(xié)議,以支持高效的運行,同時(shí)減輕加速器本身的數據組織負擔。下圖展示了一種可能的實(shí)現方法,使用一個(gè)FPGA器件管理同一塊電路板上的多個(gè)人工智能引擎。使用一種合適的低噪聲通信協(xié)議,單個(gè)機器學(xué)習專(zhuān)用集成電路(ASIC)不需要存儲控制器。相反,數據編排引擎在本地存儲器中組織所有的權重和數據元素,并簡(jiǎn)單地將它們以合適的順序傳輸到它所管理的每個(gè)ASIC。其結果是通過(guò)減少重復的存儲和接口邏輯,以更低的總體成本獲得高性能。


圖1:數據編排可以為并行化的人工智能實(shí)現應用快速地提供負載平衡和其他數據轉發(fā)功能

利用數據編排,硬件可以在不增加成本的情況下進(jìn)一步提高性能。一種選擇是利用網(wǎng)絡(luò )或系統總線(xiàn)數據的壓縮,避免使用更昂貴的互連。FPGA的邏輯層面可編程性支持通過(guò)網(wǎng)絡(luò )接口對數據進(jìn)行壓縮和解壓縮。數據編排硬件還支持使用前向糾錯協(xié)議來(lái)確保以全流水線(xiàn)速度傳輸有效數據。在大多數設計中,損壞事件通常很少發(fā)生,但是如果沒(méi)有外部的糾錯支持,那么對于高度流水線(xiàn)化的加速器設計來(lái)說(shuō),恢復成本將會(huì )很高。

圖2展示了數據編排引擎可以通過(guò)多種方式優(yōu)化數據流和給機器學(xué)習引擎提供的呈現結果。例如,單個(gè)數據元素的格式和結構為利用數據編排的優(yōu)勢提供了一個(gè)重要的機會(huì ),因為源數據通常必須以一種適合深度神經(jīng)網(wǎng)絡(luò )(DNN)進(jìn)行特征提取的格式來(lái)表示。

在圖像識別和分類(lèi)應用中,像素數據通常被通道化,以便在通過(guò)提取形狀和其他高級信息的池化層進(jìn)行聚合結果之前,可以單獨處理每個(gè)顏色平面。通道化有助于識別邊緣和其他特征,這些特征可能不易于用組合的RGB表示法識別。在語(yǔ)音和語(yǔ)言處理中會(huì )執行更廣泛的轉換。數據通常被映射成一種更容易被DNN處理的形式。由于不是直接處理ASCII或Unicode字符,而是將模型中要處理的詞和子詞轉換為向量和one-hot表示。類(lèi)似地,語(yǔ)音數據可能不會(huì )以原始時(shí)域樣本的形式呈現,而是轉換為聯(lián)合時(shí)頻表示,從而使重要特征更容易被早期DNN層識別。

盡管數據轉換可以通過(guò)人工智能加速器中的算術(shù)內核來(lái)執行,但它可能不太適合張量引擎。重新格式化的性質(zhì)使其適合由基于FPGA的模塊進(jìn)行處理。FPGA能夠有效地以線(xiàn)速度進(jìn)行轉換,而不會(huì )出現在通用處理器上運行軟件時(shí)所產(chǎn)生的延遲。

在涉及傳感器的實(shí)時(shí)和嵌入式應用中,預處理數據可以帶來(lái)更多的好處。例如,雖然可以通過(guò)訓練DNN以消除噪聲和環(huán)境條件變化的影響,但使用前端信號處理對數據進(jìn)行去噪或歸一化處理,可提高其可靠性。在汽車(chē)先進(jìn)駕駛輔助系統(ADAS)實(shí)現中,攝像頭系統必須處理照明條件的變化。通常,通過(guò)使用亮度和對比度調整,可以利用傳感器中高水平的動(dòng)態(tài)范圍。FPGA可以執行必要的操作,為DNN提供變化較少的像素流。

傳感器融合是ADAS設計日益重要的一個(gè)方面,有助于提高終端系統的性能。由于環(huán)境條件會(huì )使單個(gè)傳感器數據難以解讀,因此人工智能模型必須有效地從眾多不同類(lèi)型的傳感器(包括攝像頭、激光雷達和雷達)中獲取輸入。

格式轉換是至關(guān)重要的。例如,激光雷達(LIDAR)為笛卡爾空間中的目標物體提供深度信息,而雷達在極坐標系統上運行。許多模型通過(guò)將一個(gè)坐標空間轉換為另一個(gè)坐標空間,更容易地進(jìn)行傳感器融合。類(lèi)似地,來(lái)自多個(gè)攝像頭的圖像數據必須拼接在一起,并使用投影進(jìn)行轉換,從而將最有用的信息傳遞給人工智能模型。

較低級別的轉換也同樣需要。汽車(chē)原始設備制造商(OEM)從不同的供應商那里購買(mǎi)傳感器模塊,每個(gè)供應商都以自己的方式解讀連接通信標準。這需要一些功能來(lái)解析這些傳感器通過(guò)車(chē)載網(wǎng)絡(luò )發(fā)送的數據包,并將數據轉換為DNN可以處理的標準格式。出于安全考慮,模塊也必須向ADAS單元進(jìn)行身份驗證,在某些情況下,還要發(fā)送加密數據。數據編排芯片支持從人工智能加速器引擎上卸載解密和格式轉換功能。

通過(guò)使用在數據編排子系統中實(shí)現的前端信號處理功能來(lái)去除不必要的數據,可以實(shí)現進(jìn)一步的優(yōu)化。例如,用于處理來(lái)自麥克風(fēng)和其他一維傳感器輸入的傳感器,可以消除靜音時(shí)或低級背景時(shí)的噪音,并減少車(chē)輛靜止時(shí)傳送的視頻幀數量,從而減輕人工智能引擎的負載。


圖2:數據編排為人工智能功能加速提供了多種選擇

一種針對數據編排而優(yōu)化的架構

盡管FPGA內可配置互連和可編程邏輯的結合有助于數據編排任務(wù),但FPGA架構則天生各不相同,它們如何處理對高帶寬數據的需求是關(guān)鍵。傳統上,FPGA并不被期望作為數據路徑的核心元素,而是主要為與存儲和I/O交互的處理器提供控制平面輔助。數據編排需要代表處理器和加速器去實(shí)現內核接收、轉換和管理數據元素,這給傳統的FPGA架構帶來(lái)了巨大的壓力。

為了支持數據編排的帶寬要求,傳統的FPGA需要極寬的總線(xiàn)來(lái)處理通過(guò)PCI Express和千兆以太網(wǎng)接口的多個(gè)數據流。例如,為了支持超過(guò)400Gb/s以太網(wǎng)數據的傳輸,設計人員必須使用可編程的互連電路,來(lái)對大約2048位寬的總線(xiàn)進(jìn)行布線(xiàn),以可靠地滿(mǎn)足時(shí)序要求,這通常需要一個(gè)運行頻率為幾百兆赫茲的時(shí)鐘。由于這種大型結構的擁塞和時(shí)序收斂問(wèn)題,這樣如此寬的互連是非常難以布線(xiàn)的;ミB可能會(huì )消耗數十萬(wàn)個(gè)查找表(LUT),因為它們是無(wú)法用于執行數據編排或格式轉換任務(wù)的。

Achronix Speedster7t系列FPGA器件克服了傳統FPGA所面臨的問(wèn)題,其中部分原因是它采用了一種專(zhuān)用的二維片上網(wǎng)絡(luò )(2D NoC),通過(guò)在網(wǎng)絡(luò )的不同部分進(jìn)行多個(gè)并行操作,這種互連可以實(shí)現高達20Tb/s的總帶寬。相對于FPGA架構互連,二維片上網(wǎng)絡(luò )不僅在速度上有了巨大的提升,而且能夠在多個(gè)PCIe Gen5、400Gbps以太網(wǎng)端口和GDDR6存儲器接口之間以更高的速率傳輸大量的數據,而不會(huì )消耗任何FPGA的可編程資源。

在Speedster7t FPGA器件中,片上網(wǎng)絡(luò )在FPGA的整個(gè)表面提供了一個(gè)二維互連架構。它使用專(zhuān)用的網(wǎng)絡(luò )接入點(diǎn)(NAP)將數據包發(fā)送到器件內任何位置的軟核。每個(gè)NAP通過(guò)行業(yè)標準的AXI端口結構提供對FPGA內可編程邏輯模塊或硬件資源的訪(fǎng)問(wèn)。東西向和南北向數據流都有獨立的NAP,為訪(fǎng)問(wèn)二維片上網(wǎng)絡(luò )的邏輯提供了額外的靈活性和性能。這種定向分割有助于優(yōu)化在相同的二維片上網(wǎng)絡(luò )路徑上開(kāi)始和結束的傳輸延遲。在一個(gè)正交的二維片上網(wǎng)絡(luò )路徑上走線(xiàn)會(huì )增加一個(gè)小的、確定性的延遲。

二維片上網(wǎng)絡(luò )提供的一項重要功能是分組模式(Packet Mode),該模式旨在更容易地將到達高帶寬端口(如以太網(wǎng))的數據重新排列為多個(gè)數據流。分組模式可以分離到達速率為200Gb/s或400Gb/s以太網(wǎng)端口的數據包,并將它們傳輸到不同的軟核。這種數據包分離如下圖所示,連續的數據包被分布到FPGA的不同部分。因此,分組模式可以輕松創(chuàng )建負載平衡架構,而使用傳統FPGA是難以實(shí)現這樣的功能。



圖3:片上網(wǎng)絡(luò )的分組模式支持將網(wǎng)絡(luò )有效負載自動(dòng)分配到架構的不同部分

另一個(gè)好處是,二維片上網(wǎng)絡(luò )更容易支持部分重新配置:二維陣列中的每個(gè)邏輯模塊都能作為一個(gè)可隔離的資源,可以在不影響任何其他邏輯模塊的情況下完成交換新功能。由二維片上網(wǎng)絡(luò )和接入點(diǎn)控制器實(shí)現的虛擬化和轉換邏輯進(jìn)一步增強了此功能。

地址轉換表的作用類(lèi)似于微處理器中的存儲管理單元,以防止任務(wù)之間的數據相互干擾。接入點(diǎn)中的地址轉換表意味著(zhù)每個(gè)軟核可以訪(fǎng)問(wèn)相同的虛擬地址范圍,但訪(fǎng)問(wèn)外部物理存儲的范圍完全不同。訪(fǎng)問(wèn)保護位提供了進(jìn)一步的安全性,防止內核訪(fǎng)問(wèn)受保護的地址范圍。在一系列基于人工智能的應用中,這種級別的保護很可能變得極其重要。在這些應用中,數據編排和其他可編程邏輯功能在集成到最終產(chǎn)品之前由不同的團隊實(shí)現。

除了高度靈活的數據路由,數據編排還需要去應用快速算術(shù)功能來(lái)增強核心人工智能加速器。Speedster7t FPGA部署了一系列機器學(xué)習處理器(MLP)模塊。每個(gè)MLP都是一個(gè)高度可配置的、計算密集型的模塊,最多可配置32個(gè)乘法器,提供高達60 TOPS的性能。MLP支持4到24位的整數格式和各種浮點(diǎn)模式,包括直接支持Tensorflow的bfloat16格式和塊浮點(diǎn)(BFP)格式。周?chē)目删幊踢壿嫾軜嬏峁┝硕喾N方法來(lái)優(yōu)化數據流,以充分利用MLP提供的數據重用和吞吐量機會(huì )。

由于數據編排硬件需要適用于各種應用環(huán)境,因此對靈活部署有著(zhù)明確的需求。數據中心應用可能需要使用一個(gè)或多個(gè)分立的、大容量器件(例如Speedster7t FPGA器件),來(lái)為單個(gè)電路板上或分布在一個(gè)托盤(pán)或機架內的多個(gè)機器學(xué)習引擎路由和預處理數據流。對于尺寸、功耗和成本是主要限制因素的邊緣計算應用來(lái)說(shuō),采用系統級芯片(SoC)解決方案存在明顯的爭論。

Achronix是唯一一家能夠同時(shí)提供獨立FPGA芯片和嵌入式FPGA(eFPGA)半導體知識產(chǎn)權(IP)技術(shù)的公司,因此在支持成本降低計劃方面具有獨特的優(yōu)勢,其中可編程邏輯和互連功能可以集成到一個(gè)SoC中,如下圖所示。Speedcore eFPGA IP使用與Speedster7t FPGA相同的技術(shù),支持從Speedster7t FPGA到集成Speedcore模塊的ASIC的無(wú)縫轉換。當使用Speedcore IP將Speedster7t FPGA轉換為ASIC時(shí),客戶(hù)有望降低高達50%的功耗和節省高達90%的單位成本。
另一種選擇是在多芯片模塊中使用多芯片合封chiplets。這在基于FPGA的合封的數據編排模塊和機器學(xué)習引擎之間提供了高速互連的好處。Achronix支持所有這些實(shí)現選項。


圖4:嵌入式FPGA技術(shù)能夠將數據編排集成到加速器芯片中

結論

深度學(xué)習的快速發(fā)展給大規模實(shí)現該技術(shù)所需的硬件架構帶來(lái)了巨大壓力。盡管由于意識到性能是一個(gè)絕對要求,因此業(yè)界高度關(guān)注峰值TOPS分數,但智能數據編排和管理策略提供了一種用于交付高成本效益和高能效系統的方法。

數據編排包括許多預處理和后處理操作,確保了數據以最佳速度和最適合進(jìn)行高效處理的格式傳輸到機器學(xué)習引擎。操作范圍從資源管理和使用規劃,到I/O適配、轉碼、轉換和傳感器融合,再到共享存儲陣列內的數據壓縮和重新排列。一些編排引擎根據目標機器學(xué)習架構的核心需求使用這些功能的子集。

Achronix Speedster7t FPGA架構為這些數據編排策略提供了高度靈活的平臺。這種FPGA具有高吞吐量、低延遲和極高靈活性等特點(diǎn),其數據傳輸形式可使即使是高度專(zhuān)業(yè)化的加速器也能去適應不斷變化的需求。此外,Speedster7t FPGA廣泛的邏輯和算術(shù)能力加上高吞吐量互連,使得前端信號調節和后端機器學(xué)習的整體設計能夠最大限度地提高整體效率。

本文地址:http://selenalain.com/thread-775176-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页