版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1GB/TXXXXX.1—XXXX人工智能計算設(shè)備調(diào)度與協(xié)同第1部分:虛擬化與調(diào)度本文件給出了人工智能計算設(shè)備虛擬化與調(diào)度的架構(gòu),規(guī)定了技術(shù)要求,描述了測試方法。本文件適用于人工智能計算設(shè)備虛擬化與調(diào)度的系統(tǒng)設(shè)計、研發(fā)和測試。2規(guī)范性引用文件下列文件中的內(nèi)容通過文中的規(guī)范性引用而構(gòu)成本文件必不可少的條款。其中,注日期的引用文件,僅該日期對應(yīng)的版本適用于本文件;不注日期的引用文件,其最新版本(包括所有的修改單)適用于本文件。GB/TAAAAA-AAAA人工智能服務(wù)器系統(tǒng)性能測試規(guī)范3術(shù)語和定義GB/T41867-2022界定的以及下列術(shù)語和定義適用于本文件。3.1人工智能計算單元artificialintelligencecomputingunit執(zhí)行人工智能計算任務(wù)所必要的部件的最小集合。3.2人工智能加速[處理]器artificialintelligenceacceleratingprocessor人工智能加速芯片artificialintelligenceacceleratingchip具備適配人工智能算法的運算微架構(gòu),能夠完成人工智能應(yīng)用運算處理的集成電路元件。3.3人工智能加速卡artificialintelligenceacceleratingcard專為人工智能計算設(shè)計、符合人工智能服務(wù)器硬件接口的擴展加速設(shè)備。注:人工智能加速卡按功能可分為人工智能訓(xùn)練加速卡,3.4人工智能計算實例artificialintelligencecomputinginstance執(zhí)行人工智能計算任務(wù)的虛擬化對象。3.5虛擬化virtualization一種資源表示形式,表示與潛在的物理資源解耦。[來源:ISO/IEC17826:2022,3.55]2GB/TXXXXX.1—XXXX3.6[異構(gòu)]資源池[heterogeneous]resourcepool一種由不同架構(gòu)的人工智能計算資源集合形成的抽象實體,資源池內(nèi)的人工智能計算資源能夠被管理調(diào)度,以滿足不同人工智能計算任務(wù)的需求。注1:異構(gòu)資源池提供一種可伸縮計算架構(gòu),有利于合理分配計算資源,為不同運行環(huán)境(例如云、集群、移動設(shè)備、物聯(lián)網(wǎng))的人工智能應(yīng)用系統(tǒng)的開發(fā)和部署提供計算能力、輯門陣列(FPGA)、數(shù)字信號處理器(DSP)、專用集成電路(3.7計算能力computingcapability產(chǎn)品或系統(tǒng)參數(shù)能夠滿足計算需求的最大程度。3.8神經(jīng)網(wǎng)絡(luò)處理器neural-networkprocessingunit一種專門針對神經(jīng)網(wǎng)絡(luò)計算進行特殊優(yōu)化設(shè)計的集成電路元件。3.9人工智能計算任務(wù)artificialintelligencecomputingtask為取得特定人工智能計算目標(biāo)所需的活動。[來源:ISO/IEC25062:2006,4.9,有修改]3.10性能performance人工智能加速卡在運行計算任務(wù)時,可被測量的特性,在評估人工智能任務(wù)的性能時,一般采用吞吐率特性。注2:性能基于一個或多個參數(shù)(如能耗、流量、吞吐率、運行時間以及速率等)的測量或計算獲得,以表征在某[來源:ISO/IEC20000.10:2018,3.1.16,有修改]3.11人工智能計算集群artificialintelligencecluster遵循統(tǒng)一控制的,人工智能計算功能單元的集合。注2:當(dāng)由人工智能服務(wù)器組成時,人工智能3.123GB/TXXXXX.1—XXXX節(jié)點node由網(wǎng)絡(luò)連接的能完成特定人工智能計算任務(wù)的物理或邏輯人工智能計算設(shè)備。[來源:ISO/IEC14575:2000,3.2.27,有修改]3.13調(diào)度scheduling控制特定任務(wù)的整體或部分的執(zhí)行場所和時間的過程。[來源:ISO/IEC10164.15:2002,3.7.4,有修改]3.14調(diào)度器scheduler一種在系統(tǒng)中完成調(diào)度的組件。3.15隔離isolation計算實例間的計算和數(shù)據(jù)相互不影響和不可訪問。[來源:ISO/IECTS25052:1:2022,3.1.5.3,有修改]4縮略語下列縮略語適用于本文件。AI:人工智能(ArtificialIntelligence)BAR:基址寄存器(BaseAddressRegister)CPU:中央處理器(CenterProcessingUnits)DDR:雙倍速率傳輸率(DoubleDataRate)DMA:直接存儲器訪問(DirectMemoryAccess)FPGA:現(xiàn)場可編程邏輯門陣列(FieldProgrammableGateArray)GDDR:圖形雙倍速率傳輸存儲器(GraphicsDDRSDRAM)GPU:圖形處理器(GraphicsProcessingUnits)HBM:高帶寬存儲器(HighBandwidthMemory)NPU:神經(jīng)網(wǎng)絡(luò)處理器(Neural-networkProcessingUnits)PCIE:外設(shè)部件互聯(lián)高速通道(PeripheralComponentInterconnectExpress)QEMU:快速模擬器(QuickEMUlator)QoS:服務(wù)質(zhì)量(QualityofService)USB:通用串行總線(UniversalSerialBus)VFIO:虛擬功能輸入/輸出(VirtualFunctionInputOutput)VM:虛擬機(VirtualMachine)VMX:虛擬機擴展(VirtualMachineExtension)5概述4GB/TXXXXX.1—XXXXAI計算設(shè)備虛擬化與調(diào)度的架構(gòu)見圖1。AI計算虛擬化,為AI物理計算資源提供特定的表示形式,虛擬化方案包含對基于CPU、GPU、NPU、FPGA等物理AI加速卡的虛擬化。(多種)虛擬化方案通過統(tǒng)一的接入組件形成(異構(gòu))資源池,以一致的方式使用AI物理計算資源。調(diào)度器根據(jù)AI任務(wù)和資源池的情況,選擇若干虛擬化的AI計算實例,分配并執(zhí)行特定任務(wù)。運維監(jiān)控實現(xiàn)對AI計算實例、AI物理計算資源(AI加速卡)、AI任務(wù)及其狀態(tài)的監(jiān)測與控制。注3:1個AI應(yīng)用可被分解為若干個AI計算任務(wù),下發(fā)給調(diào)度器。圖1AI計算設(shè)備虛擬化與調(diào)度架構(gòu)6計算設(shè)備虛擬化技術(shù)要求6.1概述計算設(shè)備虛擬化技術(shù)是一種計算資源管理的方法,切分、調(diào)配或整合含有各類型加速器的不同AI加速卡,使其執(zhí)行AI計算任務(wù),以提高計算資源利用率。注:本文件規(guī)定計算設(shè)備虛擬化技術(shù)不對網(wǎng)絡(luò)、存儲等其他物理資源6.2基本要求6.2.1AI加速卡虛擬化AI加速卡的虛擬化,包含以下要求:a)應(yīng)支持單個AI加速卡虛擬化為多個計算實例;b)宜支持多個AI加速卡虛擬成單個計算實例;c)計算實例應(yīng)能在虛擬機或容器中執(zhí)行計算任務(wù);d)宜支持單個AI加速卡的算力隔離;e)計算實例應(yīng)能被計算設(shè)備調(diào)用。6.2.2監(jiān)控功能5GB/TXXXXX.1—XXXX虛擬化組件或系統(tǒng),宜實現(xiàn)下列對計算實例的監(jiān)控功能,包括:a)資源(含計算資源)利用率監(jiān)測;b)算子執(zhí)行時延統(tǒng)計;c)計算實例帶寬利用率監(jiān)測;d)計算實例的性能波動(見9.1.4.4)監(jiān)測;e)虛擬化后,AI加速卡的計算能力損耗統(tǒng)計;f)計算實例運行時長統(tǒng)計。6.2.3隔離性虛擬化組件或系統(tǒng)的隔離性包含如下要求:a)故障隔離,應(yīng)符合以下要求:1)計算實例內(nèi)的單點故障信息只上報其所屬的虛擬機或容器及虛擬化管理系統(tǒng);2)支持多個計算實例運行互不干擾;3)提供調(diào)用、返回特定計算實例的業(yè)務(wù)故障;4)支持計算實例獲知其所依賴物理設(shè)備的單點故障。b)性能隔離,即特定用戶使用計算資源的性能,不被并發(fā)執(zhí)行的其他用戶的任務(wù)影響,而出現(xiàn)下降的情況;c)安全隔離,應(yīng)能實現(xiàn)下列功能,包含但不限于:1)防止仿冒;2)防止篡改;3)防止信息泄露;4)防止拒絕服務(wù)攻擊;5)防止權(quán)限提升;6)防止抵賴。6.2.4重配置虛擬化組件或系統(tǒng),實現(xiàn)在多用戶和動態(tài)任務(wù)情況下的計算資源重配置,以提高系統(tǒng)整體性能,符合以下要求:a)應(yīng)為單個AI任務(wù)的獨立運行,實現(xiàn)QoS服務(wù)質(zhì)量機制;b)應(yīng)為多個AI任務(wù)的同時運行,實現(xiàn)資源獲得公平性機制;注:公平性指的是相同優(yōu)先級的不同用戶和程序?qū)τ谟嬎鉩)應(yīng)為AI任務(wù)的動態(tài)負載特性或資源可變特性要求,實現(xiàn)資源復(fù)用機制(如分時復(fù)用或分區(qū)復(fù)用d)宜能與下列機制或過程配合使用,包含但不限于:1)高可用集群;2)負載均衡,即分配特定的業(yè)務(wù)(網(wǎng)絡(luò)服務(wù)、網(wǎng)絡(luò)流量等)給多臺網(wǎng)絡(luò)設(shè)備(包括服務(wù)器、防火墻等)或多條鏈路;3)內(nèi)存復(fù)用,方式包括內(nèi)存氣泡、內(nèi)存置換、內(nèi)存共享等;4)CPU、內(nèi)存、AI加速處理器等的擴容。e)宜支持查詢AI計算加速卡間互聯(lián)信息。6.2.5資源抽象虛擬化與調(diào)度系統(tǒng)的資源抽象,符合以下要求:a)計算實例應(yīng)支持執(zhí)行以下計算,包括但不僅限于:6GB/TXXXXX.1—XXXX1)完整的卷積計算;2)完整的向量計算;3)完整的標(biāo)量計算;4)數(shù)據(jù)傳輸、交換和格式轉(zhuǎn)換。b)計算實例應(yīng)包含以下部件并作為調(diào)度依據(jù):1)計算部件;2)存儲部件,如緩存、內(nèi)存等;3)數(shù)據(jù)通信部件。c)1個計算實例可對應(yīng)單臺或多臺AI計算設(shè)備的全部物理資源或部分物理資源;d)當(dāng)虛擬出多個計算實例時,單AI加速卡所含的硬件資源應(yīng)能被映射為多個AI加速卡,包含對處理器、內(nèi)存等資源的切分,映射為不同的設(shè)備,并受硬件資源總數(shù)的限制;e)事件、標(biāo)識和任務(wù)及相關(guān)機制以軟件實現(xiàn)時,應(yīng)不受硬件資源總數(shù)的限制。6.2.6協(xié)調(diào)性AI任務(wù)的計算圖的任務(wù)抽象與資源抽象應(yīng)具備協(xié)調(diào)性,符合如下要求:注:AI計算圖用有向圖表示,1個有向圖由點和邊構(gòu)成,表示神經(jīng)網(wǎng)絡(luò)的計算流程,是一種邏輯流圖,在硬件上轉(zhuǎn)a)AI任務(wù)數(shù)據(jù)流圖中的資源抽象包括:1)有向圖中的點表示計算;2)有向圖中的邊表示數(shù)據(jù)依賴;3)數(shù)據(jù)流連接線以外出箭頭表示將數(shù)據(jù)寫入數(shù)據(jù)存儲;4)數(shù)據(jù)流連接線以輸入箭頭表示從數(shù)據(jù)存儲中讀取數(shù)據(jù)。b)應(yīng)考慮用于執(zhí)行數(shù)據(jù)流圖的虛擬設(shè)備;c)計算流應(yīng)考慮如下約束:1)計算流的同步,即一個計算流中的任務(wù)依賴于另一個計算流中的任務(wù);2)計算流可并行處理,受硬件資源約束。6.2.7計算實例要求6.2.7.1計算實例表示計算實例應(yīng)由以下屬性表示:a)計算實例規(guī)格,包含:1)計算能力,如吞吐率、有效計算能力、FLOPS等;2)內(nèi)存空間,如片上內(nèi)存等;3)數(shù)據(jù)傳輸率,如上下行帶寬;4)計算精度,如FP16、INT8等。b)計算實例拓撲,包含:1)計算實例所屬的AI加速卡;2)加速卡所屬的服務(wù)器及其在服務(wù)器中的位置;3)服務(wù)器所屬的集群,及其在集群中的位置。c)計算實例狀態(tài),包含:1)使用中:計算實例當(dāng)前正在執(zhí)行相關(guān)的計算任務(wù);2)可用:當(dāng)前的計算實例整體或其部分,處于空閑狀態(tài);7GB/TXXXXX.1—XXXX3)不可用:當(dāng)前計算實例已被占用或損壞,無法執(zhí)行相關(guān)任務(wù)。6.2.7.2計算實例管理6.2.7.2.1AI計算設(shè)備虛擬化系統(tǒng)或組件,提供如下功能:a)應(yīng)支持在以下情況更新資源池:1)加入新的計算實例;2)計算實例被釋放;3)空閑計算實例被占用;4)計算實例進入等待隊列;5)計算實例被損壞;6)損壞的計算實例修復(fù)。b)單個AI加速卡的虛擬化,宜通過接口調(diào)用滿足如下功能:1)創(chuàng)建的AI虛擬計算資源,關(guān)聯(lián)其歸屬的父設(shè)備(AI虛擬計算資源所在的物理AI加速器并提供相關(guān)的查詢,包括但不限于:Python編程接口、sysfs接口、或命令;2)對計算實例的操作、控制接口;3)提供可寫接口,用于填入創(chuàng)建虛擬化節(jié)點的必要信息;4)設(shè)備描述信息獲取接口;5)虛擬化計算節(jié)點的驅(qū)動接口信息(驅(qū)動API);6)指向每個虛擬化計算節(jié)點的軟鏈接。6.2.7.2.2AI計算設(shè)備虛擬化系統(tǒng)或組件應(yīng)支持計算資源的刪除與恢復(fù),包含如下要求:a)計算資源的非物理刪除;b)恢復(fù)已刪除的資源(如計算資源的重新發(fā)現(xiàn))。6.2.7.2.3AI計算設(shè)備虛擬化系統(tǒng)或組件應(yīng)支持提供接口,獲取如下實例信息:a)計算能力的監(jiān)控和統(tǒng)計信息(如資源調(diào)度層所管理的物理計算能力的總和);b)計算實例所在的AI加速卡信息;c)計算實例的規(guī)格信息,包括內(nèi)存、可觀測帶寬等;d)計算實例的算子時延剖析、時延統(tǒng)計信息。6.2.7.2.4AI計算設(shè)備虛擬化系統(tǒng)或組件,應(yīng)支持計算資源分配,包括:a)單AI加速器的分配;b)多AI加速器的整體原子分配(全部分配成功,或全部都分配失?。?。6.2.7.2.5AI計算設(shè)備虛擬化系統(tǒng)或組件,應(yīng)支持計算實例的回收,包括:a)一次回收單個計算實例;b)一次回收多個計算實例,且保證操作的原子性。6.3擴展要求6.3.1CPU虛擬化6.3.1.1概述8GB/TXXXXX.1—XXXXCPU虛擬化分為基于軟件的虛擬化和硬件輔助的虛擬化。CPU一般用于推理任務(wù)。虛擬機可使用多個CPU計算實例,這些計算實例可源于同一個物理CPU或多個物理CPU的虛擬化。CPU虛擬化的參考架構(gòu)見A.2。6.3.1.2CPU計算實例CPU虛擬化系統(tǒng)或組件,應(yīng)符合以下要求:a)CPU計算實例能完成機器學(xué)習(xí)推理任務(wù);b)能避免宿主機上CPU資源的浪費;c)支持CPU計算實例的動態(tài)橫向彈性伸縮,為虛擬機添加CPU計算實例;d)支持CPU計算實例親和性配置;e)CPU計算實例的規(guī)格,應(yīng)使用以下指標(biāo)衡量:1)處理器內(nèi)核數(shù);2)每個內(nèi)核的線程數(shù);3)CPU劃分的比例;4)內(nèi)存容量;5)緩存容量。6.3.2GPU虛擬化6.3.2.1通則GPU的虛擬化,應(yīng)符合如下要求:a)支持計算能力按需使用;b)支持計算能力動態(tài)調(diào)用和釋放。6.3.2.2GPU計算實例GPU虛擬化系統(tǒng)或組件,應(yīng)符合以下要求:a)支持其非虛擬化版本能執(zhí)行的機器學(xué)習(xí)算法;b)通過時分復(fù)用或空分復(fù)用的方式得到計算實例;c)GPU計算實例,包含以下部件:1)計算部件:執(zhí)行計算的單元,即流處理器,完成整型和浮點型計算;2)視頻編解碼部件;3)內(nèi)存,包括單不限于DDR、GDDR和HBM(容量單位是MB或GB,帶寬單位是GB/s);4)各級緩存(容量單位是MB或GB,帶寬單位是GB/s);5)共享存儲。d)支持負載均衡;e)GPU計算實例的規(guī)格,應(yīng)使用以下指標(biāo)衡量:1)計算能力(單位如:OPS\FLOPS\吞吐率\算力比例);2)視頻編解碼能力(單位如:1路1080P,30FPS);3)顯存容量(單位如:MB\GB);4)緩存容量(單位如:MB);5)網(wǎng)絡(luò)寬帶和收發(fā)包吞吐率(GPU間)。6.3.3NPU虛擬化6.3.3.1通則9GB/TXXXXX.1—XXXX圖2NPU虛擬化架構(gòu)圖NPU的虛擬化架構(gòu)見圖2,參考方案見A.1。NPU的虛擬化組件或系統(tǒng),符合以下要求:a)應(yīng)能根據(jù)計算任務(wù)需要選擇合適的虛擬化調(diào)度方案,包括:1)將AI加速卡虛擬化為多個NPU計算實例,掛載至虛擬機;2)將AI加速卡虛擬化為多個NPU計算實例,掛載至容器;3)將AI加速卡虛擬化為多個NPU計算實例,掛載至虛擬機,在虛擬機內(nèi)再將NPU計算實例掛載到容器;4)將AI加速卡直通NPU到虛擬機,在虛擬機內(nèi)劃分NPU計算實例,再掛載到虛擬機內(nèi)的容器。b)宜具備NPU計算QoS控制機制;c)NPU實例,應(yīng)提供如下計算屬性:1)張量計算能力,如張量計算單元個數(shù);2)向量、標(biāo)量等通用計算能力,如通用計算單元個數(shù)\協(xié)處理器核的個數(shù);3)如具備視頻圖像預(yù)處理模塊,應(yīng)提供相關(guān)的計算能力屬性,如視頻解碼器計算核個數(shù)。d)NPU實例,應(yīng)提供內(nèi)存容量(單位:GB)作為存儲屬性;e)宜支持按AI任務(wù)的計算量,動態(tài)調(diào)整計算實例規(guī)格。6.3.3.2NPU計算實例NPU計算實例,應(yīng)符合以下要求:a)提供矩陣乘的計算部件,執(zhí)行卷積與全連接的計算:1)具有執(zhí)行矩陣計算的計算核心;2)具備緩存矩陣分別存儲中間過程數(shù)據(jù)和結(jié)果數(shù)據(jù);3)具備數(shù)據(jù)寄存器,寄存矩陣運算的過程數(shù)據(jù)與結(jié)果。b)提供向量運算的部件,以執(zhí)行池化、激活函數(shù)以及批正則化等運算:1)執(zhí)行向量計算的單元;2)相關(guān)的存儲單元。c)提供控制和標(biāo)量運算的計算部件,包含:1)執(zhí)行標(biāo)量運算的單元;2)通用寄存器;3)專用寄存器。GB/TXXXXX.1—XXXXd)提供數(shù)據(jù)的存儲部件;e)提供數(shù)據(jù)通路部件,保證計算部件與存儲部件之間的數(shù)據(jù)供應(yīng);f)NPU計算實例能執(zhí)行并完成AI推理和訓(xùn)練任務(wù);g)NPU計算實例的規(guī)格,用以下指標(biāo)衡量:1)計算能力(單位:FLOPS/OPS/吞吐率);2)內(nèi)存容量(單位:GB);3)緩存(單位:KB/MB);4)剩余帶寬(單位:GB/s)。6.3.4FPGA虛擬化6.3.4.1通則FPGA虛擬化是在時間和空間維度上,對多個FPGA的各類資源的調(diào)度與使用。FPGA的虛擬化,應(yīng)符合以下要求:a)支持深度學(xué)習(xí)加速,并具備性能隔離特性;b)支持多路計算;c)支持FPGAOverlay,在FPGA硬件之上,形成虛擬可編程架構(gòu),支持上層使用;d)支持部分可重構(gòu),將FPGA劃分為多個FPGA計算實例;e)支持FPGA動態(tài)重構(gòu)和配置。6.3.4.2FPGA計算實例FPGA計算實例,應(yīng)符合以下要求:a)支持其非虛擬化版本能執(zhí)行的機器學(xué)習(xí)任務(wù);b)為一個或多個動態(tài)重構(gòu)的FPGA區(qū)域;c)對特定FPGA計算實例實施動態(tài)重構(gòu)時,其他運行不受影響;d)提供可重構(gòu)區(qū)域的劃分機制,避免FPGA資源的空置和浪費;e)FPGA計算實例規(guī)格,由以下指標(biāo)衡量:1)計算能力(如:OPS/吞吐率);2)延遲;3)功耗;4)靈活度。7計算資源調(diào)度技術(shù)要求7.1概述7.1.1任務(wù)流程框架計算資源調(diào)度的任務(wù)流程見圖3,包含以下步驟:a)用戶提出訓(xùn)練或推理請求,作為AI任務(wù)放入任務(wù)池;b)調(diào)度器從AI任務(wù)池中取任務(wù),根據(jù)任務(wù)的規(guī)格(所需計算能力、內(nèi)存等)和可用AI加速卡,申請符合AI任務(wù)要求的計算實例;c)調(diào)度器對所有的異構(gòu)計算資源和計算實例實施監(jiān)控,完成任務(wù)的調(diào)度。GB/TXXXXX.1—XXXX圖3AI計算任務(wù)調(diào)度流程框架7.1.2訓(xùn)練場景訓(xùn)練場景中,任務(wù)池中含有訓(xùn)練任務(wù)請求。訓(xùn)練任務(wù)的吞吐量較大時,對單AI加速卡的資源利用效率較高。單訓(xùn)練任務(wù)對AI加速卡資源的占用情況包括以下情形:a)在單AI加速卡上運行,該卡資源被全部占用;b)在單AI加速卡上運行,該卡資源未被全部占用;c)在多AI加速卡上運行,全部加速卡資源均被占用;d)在多AI加速卡上運行,部分加速卡存在空閑資源。7.1.3推理場景推理任務(wù)對AI計算單元的占用,包含如下情形:a)模型體量較小,能容納于單卡或單片內(nèi)存時:1)推理需要異構(gòu)的AI計算資源,但大多數(shù)場景吞吐量較小,資源使用率較低;2)計算資源的調(diào)度需細粒度劃分(如以單卡中的塊或片為調(diào)度單位,使多推理任務(wù)共用特定計算資源,即單芯片多任務(wù)模式);3)部署時根據(jù)計算任務(wù)申請所需計算資源,優(yōu)先在單芯片上安排推理任務(wù),使單芯片滿載。注:滿載指的是對特定計算設(shè)備的計算能力全部用b)模型體量較大,不能容納于單卡或單片內(nèi)存時:1)模型所含參數(shù)量多,模型結(jié)構(gòu)復(fù)雜,任務(wù)吞吐量大,拆分為多個子模型;2)數(shù)據(jù)搬運在單芯片內(nèi)數(shù)據(jù)搬運速度最快,跨卡調(diào)度影響計算速度;3)計算資源的調(diào)度以卡為單位分配;4)調(diào)度器將推理任務(wù)按照模型體量實施拆分;5)在單AI加速卡上優(yōu)先安排同一子模型,計算完成后則分配剩余子模型給卡計算。7.2功能要求調(diào)度器應(yīng)實現(xiàn)下列功能:a)對整AI加速卡(處理器)的調(diào)度;b)對池化的多AI加速卡的調(diào)度;GB/TXXXXX.1—XXXXc)對單AI加速卡上計算單元的調(diào)度;d)對單AI加速卡虛擬化所得的多計算實例的調(diào)度;e)對多AI加速卡中的多個計算單元的調(diào)度;f)對多個計算單元或多個AI加速卡的調(diào)度,應(yīng)保證調(diào)度操作的原子性;g)任務(wù)拆分,當(dāng)同一任務(wù)包含的多個模型時,能將不同模型分配給不同計算實例,保證全局資源利用率最高;h)模型切換,在同一計算實例上,在某模型運行完成時,能換入另一個模型并運行;i)負載均衡,在有剩余計算節(jié)點時,能分配任務(wù),避免單卡、單片或單塊的負載過大。7.3性能優(yōu)化要求調(diào)度器性能優(yōu)化符合以下要求:a)應(yīng)能采集、分析和匯總性能數(shù)據(jù),涵蓋以下設(shè)備,包含但不限于:控制CPU、調(diào)度CPU、AI加速器、外圍設(shè)備、內(nèi)存等;b)對多卡調(diào)度,宜能在調(diào)度過程中參考集合通信組件的屬性和狀態(tài);c)宜提供AI任務(wù)在異構(gòu)計算設(shè)備上的系統(tǒng)性能分析工具。7.4調(diào)度策略要求調(diào)度器調(diào)度策略宜考慮如下的因素:a)使全局資源的平均利用率最高;b)調(diào)度的計算資源涉及多個AI加速器時,根據(jù)卡的拓撲來制定調(diào)度策略(如親和性調(diào)度);c)支持用戶自定義調(diào)度。7.5接口要求7.5.1接口類型虛擬化接口包括:a)調(diào)度器與CPU、GPU、FPGA、NPU等計算資源之間的接口;b)調(diào)度器與AI應(yīng)用中機器學(xué)習(xí)框架的接口。7.5.2接口描述7.5.2.1計算實例創(chuàng)建計算實例創(chuàng)建應(yīng)符合表1列出的接口要求:表1計算實例創(chuàng)建相關(guān)接口實例表示模板設(shè)置虛擬化切分得到的計算計算能力(如張量虛擬化時所包含的數(shù)字視覺預(yù)處理模塊GB/TXXXXX.1—XXXX創(chuàng)建計算實例按照需求,指定規(guī)格,創(chuàng)建需要創(chuàng)建的虛擬設(shè)設(shè)置虛擬化在物理機執(zhí)行,設(shè)置計算容器模式:適用于計算實例掛載到容器虛擬機模式:適用于計算實例掛載到7.5.2.2計算實例監(jiān)控計算實例監(jiān)控應(yīng)符合:a)獲取單個物理AI加速卡的信息,見表2:表2獲取加速卡信息獲取單個物理AI加速例資源占比和剩余可虛擬化的資源b)獲取計算實例規(guī)格,接口描述見表3,獲取的規(guī)格信息滿足6.4.1和6.5.1.2e),6.5.2.2h),6.5.3.2g)或6.5.4.2e)的要求:表3獲取計算實例規(guī)格獲取計算實例規(guī)格獲取計算實例的規(guī)格c)獲取計算實例狀態(tài),接口描述見表4,狀態(tài)屬性要求見6.4.1:表4獲取計算實例狀態(tài)獲取計算實例狀態(tài)GB/TXXXXX.1—XXXX8運維監(jiān)控技術(shù)要求8.1AI加速卡監(jiān)控AI加速卡監(jiān)控符合以下要求:a)應(yīng)能監(jiān)控AI加速卡的下列屬性:1)計算能力;2)帶寬;b)應(yīng)能監(jiān)控并返回計算實例的下列統(tǒng)計信息:1)計算實例的總數(shù);2)可用的計算實例數(shù);3)占用的計算實例數(shù)。c)應(yīng)能監(jiān)控單AI加速卡上各計算實例的性能偏移的情況;注:對單AI加速卡,虛擬化N(N是正整數(shù))個相同規(guī)格的計算實例時,每個實例的參考性能是1/N,實際性能與參d)應(yīng)能監(jiān)控返回AI加速卡的狀態(tài):1)資源占用比例;2)可用比例;3)是否損壞。e)應(yīng)能監(jiān)控返回以下關(guān)于AI任務(wù)的信息:1)訓(xùn)練任務(wù)或推理任務(wù)的吞吐量;2)訓(xùn)練任務(wù)或推理任務(wù)占用的計算實例信息,以及計算實例所處的AI加速卡。8.2計算實例監(jiān)控計算實例監(jiān)控符合以下要求:a)支持對計算實例狀態(tài)的監(jiān)控(見6.6.2.2);b)支持對計算實例的異常檢測,并對用戶開放定制化的檢測項;c)支持計算實例的異常警告,并支持用戶自定義警告的閾值和警告的方式;d)支對計算實例的日志收集、分析和可視化展示的功能。8.3AI任務(wù)監(jiān)控AI任務(wù)通過系統(tǒng)性能分析工具監(jiān)控,工具宜提供系統(tǒng)狀態(tài)預(yù)測或監(jiān)控信息,包括但不限于:a)時序信息圖方式,以時間線的形式展示AI任務(wù)相關(guān)性能信息:1)計算圖信息:計算圖執(zhí)行時間、推理時間、圖像等數(shù)據(jù)的預(yù)處理時間;2)算子的執(zhí)行時間:單算子執(zhí)行起止時間、單算子耗時;3)每個線程運行時API的時序信息;4)AI計算單元上內(nèi)核函數(shù)的運行時序信息;5)任務(wù)調(diào)度的任務(wù)運行時序信息。b)硬件視圖方式,展示數(shù)據(jù)傳輸?shù)膸捫畔?,可幫助用戶或調(diào)度器找出數(shù)據(jù)處理和傳輸?shù)钠款i,如讀寫帶寬過低可能是算子編寫的數(shù)據(jù)搬運過程有問題;c)AI處理器函數(shù)和CPU函數(shù)視圖:1)采集各形式處理器上的熱點函數(shù)(執(zhí)行頻率較高的函數(shù));GB/TXXXXX.1—XXXX2)展示的信息應(yīng)包含但不限于:模塊名、函數(shù)名、調(diào)用堆棧、指令數(shù)、指令數(shù)耗時占比、對應(yīng)子項的循環(huán)次數(shù)等。d)概括性視圖,匯總采集的信息并展示,包含但不限于:1)性能數(shù)據(jù)采集起止時間及耗時;2)服務(wù)器性能基本信息,包括操作系統(tǒng)和CPU信息;3)加速設(shè)備信息(包含GPU、NPU或FPGA),如協(xié)處理CPU的核數(shù)、AI計算單元數(shù)量等;4)內(nèi)存及高級緩存信息,即整個采集過程中內(nèi)存讀寫帶寬的平均值;5)CPU的利用率;6)系統(tǒng)信息,包含但不限于:系統(tǒng)總內(nèi)存、空閑空間、內(nèi)存緩沖區(qū)大小、高速緩沖存儲器使用量、共享內(nèi)存、虛擬內(nèi)存限值等;7)控制CPU的信息,包括但不限于:運行的函數(shù)名稱、此函數(shù)關(guān)聯(lián)的模塊、此函數(shù)運行的時鐘周期數(shù)、虛擬環(huán)境中操作系統(tǒng)消耗占比、內(nèi)核態(tài)進程時長占比、空閑狀態(tài)時長占比等;8)AI計算單元的信息;9)算子統(tǒng)計信息,包括但不限于:算子的個數(shù)、名稱、耗時、對應(yīng)的起止調(diào)度時間、輸入輸出張量的內(nèi)存大小、權(quán)重大小等;10)圖像視頻任務(wù)相關(guān)信息,包括但不限于:任務(wù)的時間、任務(wù)的幀數(shù)等。e)模型的數(shù)據(jù)輸入、AI計算任務(wù)(推理或訓(xùn)練)、數(shù)據(jù)輸出的耗時。8.4日志監(jiān)控8.4.1日志收集級別運維監(jiān)控過程應(yīng)收集以下級別的日志:a)提供一般級別錯誤的日志(ERROR):1)非預(yù)期的數(shù)據(jù)或事件;2)影響面較大但是內(nèi)部模塊可處理的錯誤;3)限制在模塊內(nèi)的錯誤;4)對其他模塊有影響但較輕微的錯誤,如統(tǒng)計任務(wù)創(chuàng)建失??;5)引起調(diào)用失敗的錯誤。b)提供警告級別的日志(WARNING),如設(shè)備狀態(tài)與預(yù)期不一致,但不影響系統(tǒng)的運行。c)提供正常級別的日志(INFO),設(shè)備正常運行的信息;d)提供調(diào)式級別日志(DEBUG),記錄調(diào)式信息,協(xié)助開發(fā)維護人員定位問題;e)提供關(guān)鍵事件的日志(EVENT),如:1)整網(wǎng)運算啟動、完成和異常終止;2)內(nèi)存耗盡;3)設(shè)備溫度超出正常閾值。8.4.2日志記錄信息日志的記錄,應(yīng)包含以下信息:a)日志的級別;b)產(chǎn)生日志的模塊名稱;c)進程標(biāo)識符;d)進程名稱;e)日志打印的時間;GB/TXXXXX.1—XXXXf)各模塊日志內(nèi)容。8.4.3日志處理日志的處理,應(yīng)符合以下要求:a)支持加速設(shè)備的管理,如新增、刪除、修改等;b)對用戶,提供日志的查詢,按關(guān)鍵字搜索日志內(nèi)容;c)提供清除顯示的功能;d)提供和日志下載和保存的功能。9測試方法9.1虛擬化測試9.1.1性能隔離測試9.1.1.1概述性能隔離測試應(yīng)計量性能偏差,即實際性能與理論性能之差的絕對值,性能指標(biāo)為吞吐率。示例:單用戶或任務(wù)獨占單AI加速卡時,訓(xùn)練或推理的性能是p。當(dāng)給計算實例分配25%的計算資源時,其性能理論上應(yīng)該為P/4。虛擬化方案應(yīng)盡可能使計算實例的實際計算能力接近理論值。偏差(小于理論值的幅度)越大,性能注:單AI加速卡通過虛擬化切分為多計算實例時,各實例應(yīng)能分配給多9.1.1.2測試方法性能隔離測試應(yīng)按以下規(guī)則實施:a)選取特定AI任務(wù),實施測試;b)測得基準(zhǔn)性能作為理論值(見9.1.1.3ac)對特定AI任務(wù),分配單AI加速卡一定比例(見9.1.1.3b)~9.1.1.3e))的計算資源;注:比例數(shù)值在具體測試時確定,但對同一測試批次中不同AI加速卡的虛d)設(shè)定單AI加速器上所執(zhí)行的最大任務(wù)數(shù)量n(n為正整數(shù)),對該任務(wù)使用已分配的計算資源,為剩余(n-1)個任務(wù)分配剩余的計算資源;e)按9.1.1.1計算性能偏差;f)性能隔離測試,按下列因素排列組合,確定模式:1)訓(xùn)練或推理;2)單一模型或多模型負載;3)是否滿載。9.1.1.3測試負載性能隔離測試負載包含:a)基準(zhǔn)性能:單模型負載獨占單AI加速卡(無虛擬化),測得基準(zhǔn)性能,負載見表5;表5基準(zhǔn)負載測試GB/TXXXXX.1—XXXX1234b)單模型滿載:將單AI加速卡按比例虛擬化獲得多個計算實例,每個計算實例運行相同的AI任務(wù),負載見表6;表6單模型滿載訓(xùn)練1MobileNet22MobileNet4324452647284c)多模型滿載:將單AI加速卡按比例虛擬化獲得多個計算實例,每個計算實例運行不同的模型,負載見表7;表7多模型滿載訓(xùn)練12MobileNet/25%3d)多模型非滿載:將單AI加速卡按比例虛擬化獲得多個計算實例,但留有空余,每個計算實例運行不同的模型,負載見表7;e)單模型非滿載測試:將單AI加速卡按比例虛擬化獲得多個計算實例,但留有空余,每個計算實例運行相同的模型,負載見表8。表8單模型非滿載訓(xùn)練1223324352GB/TXXXXX.1—XXXX6472849.1.2任務(wù)動態(tài)擴展測試9.1.2.1概述實際應(yīng)用場景中任務(wù)可能動態(tài)添加(任務(wù)到達)或刪除(任務(wù)執(zhí)行完畢或取消應(yīng)測試任務(wù)數(shù)量的動態(tài)變化對性能的影響。隨任務(wù)數(shù)增大,整體性能波動(見9.1.4.4)宜盡可能小。9.1.2.2測試方法任務(wù)動態(tài)擴展測試應(yīng)按以下規(guī)則實施:a)對相同的訓(xùn)練或推理任務(wù),實施擴展測試,每個任務(wù)應(yīng)完全一致,包括模型、數(shù)據(jù)集、訓(xùn)練方法或推理模式(如離線模型壓縮、部署方式)等;b)任務(wù)數(shù)取值為1,2,4,8,16;c)記錄不同任務(wù)量下的吞吐量。9.1.2.3測試負載任務(wù)動態(tài)擴展測試的負載見表9。表9基準(zhǔn)負載測試1MobileNet2349.1.3性能損耗測試9.1.3.1概述對單AI加速卡,性能損耗是非虛擬化使用時的滿載性能與虛擬化后滿載性能的差值。9.1.3.2測試方法性能損耗測試應(yīng)按以下規(guī)則實施:a)被測AI加速卡的計算實例數(shù)應(yīng)不小于3;b)性能損耗測試,按下列因素排列組合,確定模式:1)多計算實例相同負載;2)多計算實例不同負載。9.1.3.3測試負載性能損耗測試的負載見9.1.13)a)~9.1.1.3c)。9.1.4測試指標(biāo)GB/TXXXXX.1—XXXX9.1.4.1吞吐率吞吐率定義及計算方法見GB/TAAAAA-AAAA中6.3.3(訓(xùn)練)和7.3.3(推理)。9.1.4.2性能偏差性能偏差指虛擬化后所得AI計算資源的理論性能與實際性能之差的絕對值,按公式(1)計算:注:如有超過1個指標(biāo)同時作用,應(yīng)設(shè)定在其他指標(biāo)相同式中:Δpii——單AI加速卡虛擬化后的性能偏差;n——計算實例的個數(shù);P——理論性能(基準(zhǔn)性能);ai——每個計算實例分配的資源占整卡的比例,取值可為:12.5%,25%,50%,75%;pii——每個計算實例的實際性能。9.1.4.3性能損耗性能損耗指非虛擬化使用時的滿載性能與虛擬化后滿載性能的差值,按公式(2)計算:式中:clthh——性能損耗;Tv——AI任務(wù)在計算實例上的執(zhí)行時長;Tp——相同AI任務(wù)在未虛擬化的物理機上的執(zhí)行時長;ctrep——是物理機的計算單元數(shù);ctrev——虛擬化后計算實例的計算單元數(shù)。9.1.4.4性能波動性能波動指單物理加速卡上虛擬化得到多個規(guī)格相同的計算實例,同時運行相同的AI任務(wù)時,所有計算實例中最大的執(zhí)行時長均值與最小時長均值的比,按公式(3)計算:(3)式中:n——第n個計算實例;N——計算實例總數(shù);T——運行特定計算任務(wù)的時間長度,按GB/TAAAAA-AAAA中6.3.1(訓(xùn)練)和7.3.1(推理)9.2調(diào)度測試9.2.1概述調(diào)度測試范圍包含:a)集群利用率:所有AI加速卡(含已經(jīng)故障下線的AI加速卡)的使用情況。越接近1.0越好;b)資源調(diào)度成功率:特定周期內(nèi)調(diào)度成功次數(shù)與資源請求總次數(shù)的比例;注:前提要求實際物理資源與請求的資源是匹配的,請求的資源量沒有GB/TXXXXX.1—XXXXc)任務(wù)資源利用率:實際分配給單AI任務(wù)使用的計算資源的使用情況。9.2.2測試方法調(diào)度測試按以下規(guī)則實施:a)集群調(diào)度的測試應(yīng)規(guī)定具體的測試時間段,如7自然天,15自然天或30自然天等;b)對比測試時,測試負載模型、數(shù)據(jù)集、優(yōu)化方法等應(yīng)保持一致;c)任務(wù)負載按下列因素排列組合,確定模式:1)數(shù)據(jù)量;2)計算量,按負載模型體量劃分;3)場景,按模型功能覆蓋劃分(如resnet系列、MobileNet系列等);4)任務(wù)(訓(xùn)練或推理)到達的模式,包括:離線、時分均勻、泊松到達等。d)集群利用率的檢測周期為1個月,如對特定單AI加速卡,在周期內(nèi)以固定頻率(如1s)檢測,記錄每次的利用率。9.2.3測試負載調(diào)度測試使用以下負載:a)單一負載,包含:1)視覺負載,包括圖片、視頻任務(wù);2)自然語言處理負載;3)普通機器學(xué)習(xí)負載(可選)。b)混合負載,即3種單負載,按特定比例組合,實施測試。9.2.4測試指標(biāo)9.2.4.1集群利用率集群利用率按公式(4)計算:Σkqk(4)式中:Q——集群利用率;k——集群中AI加速卡的數(shù)量;qk——單AI加速卡的利用率。9.2.4.2單AI加速卡的利用率單AI加速卡的利用率按公式(5)計算:(5)式中:qk——統(tǒng)計周期內(nèi),特定AI加速卡的利用率;Nb——該AI加速卡被占用的次數(shù);qu——是抽樣時的瞬時利用率(在無法檢測瞬時利用率的系統(tǒng)中,占用時利用率為1.0)。9.2.4.3任務(wù)資源利用率GB/TXXXXX.1—XXXX任務(wù)資源利用率按公式(6)計算。其中,k為分配給特定任務(wù)的AI加速卡的數(shù)量。對動態(tài)任務(wù)(任務(wù)執(zhí)行中釋放資源或申請新的資源),則分段計量,以時長求加權(quán)平均。j式中:qk——某個時間段內(nèi)(期間,該分配給該任務(wù)的資源數(shù)恒定),單AI加速卡的利用率,計算方法見9.2.4.2;T——該任務(wù)的執(zhí)行總時長;j——執(zhí)行該任務(wù)的第j個時間段(期間,分配給該任務(wù)的資源數(shù)恒定);k——在第j個時間段內(nèi),分配給該任務(wù)的AI加速卡的數(shù)量;j——第j個時間段的長度。GB/TXXXXX.1—XXXX典型處理器的虛擬化參考架構(gòu)A.1NPU虛擬化參考架構(gòu)NPU的虛擬化包含但不限于以下方案:a)方案一,軟件模擬vNPU虛擬化:通過VFIO-mdev框架創(chuàng)建出虛擬NPU設(shè)備,并經(jīng)過Qemu設(shè)備模擬層將vNPU設(shè)備模擬成標(biāo)準(zhǔn)的PCIE設(shè)備給GuestOS的設(shè)備驅(qū)動或虛擬機使用,使用方式與NPU設(shè)備直通虛擬化一致。PCIE設(shè)備的配置空間如下,設(shè)備模擬整體方案見圖A.1:圖A.1QEMU-NPU設(shè)備模擬方案1)PCIE配置模擬:根據(jù)PCIE協(xié)議模擬PCIE設(shè)備的VendorID、DeviceID等,呈現(xiàn)出一個跟物理設(shè)備相同功能的虛擬設(shè)備給GuestOS驅(qū)動。2)BAR空間:Host驅(qū)動和Guest驅(qū)動共享數(shù)據(jù)的通道,用以收發(fā)消息等。3)中斷通知機制:Guest發(fā)送消息通知Host,Host通過中斷通知Guest。4)DMA內(nèi)存訪問機制:數(shù)據(jù)拷貝流程將GPA地址轉(zhuǎn)換成發(fā)起DMA訪問使用的IOVA地址。b)方案二,軟硬協(xié)同SR-IOV虛擬化:SR-IOV是一種IO虛擬化的技術(shù)標(biāo)準(zhǔn),它是由PCI-SIG組織制定,它是一種基于硬件輔助的虛擬化技術(shù),SR-IOV允許在虛擬機之間高效共享PCIE設(shè)備,由于它是基于硬件實現(xiàn),因此可以獲得與真實硬件性能接近的I/O性能。SR-IOV架構(gòu)設(shè)備允許一個物理設(shè)備支持多個虛擬功能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 沈陽市房產(chǎn)證辦理攻略合同
- 建筑供暖承攬合同范本
- 消防工程監(jiān)理廉潔自律保證
- 證券投資部衛(wèi)生室醫(yī)生招聘
- 基建項目招投標(biāo)監(jiān)督與審查流程
- 優(yōu)化拆除施工合同
- 員工績效評估典范
- 債權(quán)轉(zhuǎn)讓及債權(quán)轉(zhuǎn)讓通知書
- 互聯(lián)網(wǎng)企業(yè)技能工資體系
- 飲用水行業(yè)應(yīng)急預(yù)案編制指南
- 藝術(shù)療法策劃方案
- 橡膠制品行業(yè)的社會責(zé)任與可持續(xù)發(fā)展
- 超級實用的腳手架含量計算表腳手架計算表
- 設(shè)立法律咨詢服務(wù)公司可行性研究報告
- 10kV電力電纜試驗報告
- 生產(chǎn)批次號管理規(guī)定
- -期末復(fù)習(xí)試題(五)(試題)北師大版四年級上冊數(shù)學(xué)
- 《經(jīng)緯網(wǎng)的應(yīng)用》課件
- 山東省淄博市張店區(qū)2023-2024學(xué)年八年級上學(xué)期期中化學(xué)試題(解析版)
- 啦啦操智慧樹知到課后章節(jié)答案2023年下西安體育學(xué)院
- 一般生產(chǎn)經(jīng)營單位安全培訓(xùn)考試題及完整答案(全國通用)
評論
0/150
提交評論