態(tài)shape配置參數(shù))
動(dòng)態(tài)shape【免費(fèi)下載鏈接】geGEGraph Engine是面向昇騰的圖編譯器和執(zhí)行器提供了計(jì)算圖優(yōu)化、多流并行、內(nèi)存復(fù)用和模型下沉等技術(shù)手段加速模型執(zhí)行效率減少模型內(nèi)存占用。 GE 提供對(duì) PyTorch、TensorFlow 前端的友好接入能力并同時(shí)支持 onnx、pb 等主流模型格式的解析與編譯。項(xiàng)目地址: https://gitcode.com/cann/geac_parallel_enable動(dòng)態(tài)shape圖中是否允許AI CPU算子和AI Core算子并行運(yùn)行。動(dòng)態(tài)shape圖中開(kāi)關(guān)開(kāi)啟時(shí)系統(tǒng)自動(dòng)識(shí)別圖中可以和AI Core并發(fā)的AI CPU算子不同引擎的算子下發(fā)到不同流上實(shí)現(xiàn)多引擎間的并行從而提升資源利用效率和動(dòng)態(tài)shape執(zhí)行性能。參數(shù)取值1允許AI CPU和AI Core算子間的并行運(yùn)行。0默認(rèn)值A(chǔ)I CPU算子不會(huì)單獨(dú)分流。配置示例{ac_parallel_enable, 1};必選/可選可選生效級(jí)別全局ge.dynamicDims設(shè)置ND格式下動(dòng)態(tài)維度的檔位適用于執(zhí)行推理時(shí)每次處理任意維度的場(chǎng)景。該參數(shù)需要與ge.inputShape配合使用。詳細(xì)使用示例請(qǐng)參見(jiàn)編譯并運(yùn)行Graph場(chǎng)景。**參數(shù)取值**通過(guò)dim1,dim2,dim3;dim4,dim5,dim6;dim7,dim8,dim9的形式設(shè)置。參數(shù)值格式所有檔位必須放在雙引號(hào)中檔位之間使用英文分號(hào)分隔每檔內(nèi)參數(shù)使用英文逗號(hào)分隔每檔中的dim值與ge.inputShape參數(shù)中的-1標(biāo)識(shí)的參數(shù)依次對(duì)應(yīng)inputShape參數(shù)中有幾個(gè)-1則每檔必須設(shè)置幾個(gè)維度。并且要求檔位信息必須大于1組。參數(shù)值約束針對(duì)Ascend 950PR/Ascend 950DT檔位數(shù)約束為檔位數(shù)取值范圍為(1, 256]即必須設(shè)置至少2個(gè)檔位最多支持256檔配置建議配置為3~4檔。針對(duì)如下產(chǎn)品檔位數(shù)約束為檔位數(shù)取值范圍為(1,100]即必須設(shè)置至少2個(gè)檔位最多支持100檔配置建議配置為3~4檔。Atlas A3 訓(xùn)練系列產(chǎn)品/Atlas A3 推理系列產(chǎn)品Atlas A2 訓(xùn)練系列產(chǎn)品/Atlas A2 推理系列產(chǎn)品Atlas 訓(xùn)練系列產(chǎn)品Atlas 推理系列產(chǎn)品使用示例若模型只有一個(gè)輸入{ge.inputShape, data:1,-1,-1}, {ge.dynamicDims, 1,2;3,4;5,6;7,8} // graph運(yùn)行時(shí)支持的data算子的shape為1,1,2; 1,3,4; 1,5,6; 1,7,8若網(wǎng)絡(luò)模型有多個(gè)輸入每檔中的dim值與模型輸入?yún)?shù)中的-1標(biāo)識(shí)的參數(shù)依次對(duì)應(yīng)模型輸入?yún)?shù)中有幾個(gè)-1則每檔必須設(shè)置幾個(gè)維度。例如網(wǎng)絡(luò)模型有三個(gè)輸入分別為data(1,1,40,T)label(1,T)mask(T,T) 其中T為動(dòng)態(tài)可變。則配置示例為{ge.inputShape, data:1,1,40,-1;label:1,-1;mask:-1,-1 }, {ge.dynamicDims, 20,20,1,1;40,40,2,2;80,60,4,4} // graph運(yùn)行時(shí)支持的輸入dims組合檔數(shù)分別為 //第0檔data(1,1,40,20)label(1,20)mask(1,1) //第1檔data(1,1,40,40)label(1,40)mask(2,2) //第2檔data(1,1,40,80)label(1,60)mask(4,4)必選/可選可選生效級(jí)別session/graphge.dynamicNodeType用于指定動(dòng)態(tài)輸入的節(jié)點(diǎn)類型。0dataset輸入為動(dòng)態(tài)輸入。1placeholder輸入為動(dòng)態(tài)輸入。當(dāng)前不支持dataset和placeholder輸入同時(shí)為動(dòng)態(tài)輸入。配置示例{ge.dynamicNodeType, 0};必選/可選可選生效級(jí)別session/graphge.exec.hostSchedulingMaxThreshold控制**靜態(tài)小圖根圖**執(zhí)行時(shí)是否走動(dòng)態(tài)shape調(diào)度的最大閾值。默認(rèn)閾值為0。建議大模型場(chǎng)景使用。如果靜態(tài)根圖節(jié)點(diǎn)的個(gè)數(shù)最大閾值則走動(dòng)態(tài)shape調(diào)度。大模型場(chǎng)景該方式可以節(jié)約Stream資源。如果靜態(tài)根圖節(jié)點(diǎn)的個(gè)數(shù)最大閾值則保持原有流程不變。說(shuō)明如果靜態(tài)根圖節(jié)點(diǎn)包括子圖則該參數(shù)不生效。必選/可選可選生效級(jí)別全局/session/graphge.exec.static_model_ops_lower_limit動(dòng)態(tài)shape拆分中設(shè)置靜態(tài)子圖最小算子數(shù)量閾值。參數(shù)取值取值范圍為-1到正無(wú)窮取其他值報(bào)錯(cuò)默認(rèn)值為4。取值0算子數(shù)門限靜態(tài)子圖不單獨(dú)拆圖合并到動(dòng)態(tài)圖走動(dòng)態(tài)執(zhí)行。算子數(shù)門限保持原有流程不變靜態(tài)子圖仍舊會(huì)拆圖。取值-1表示所有算子走動(dòng)態(tài)圖執(zhí)行。例如假設(shè)靜態(tài)子圖中算子數(shù)為4通過(guò)該參數(shù)配置的門限為10則靜態(tài)子圖不會(huì)單獨(dú)拆圖走動(dòng)態(tài)圖執(zhí)行。必選/可選可選生效級(jí)別graphge.inputShape指定模型輸入數(shù)據(jù)的shape。在線推理或訓(xùn)練場(chǎng)景下該參數(shù)僅在動(dòng)態(tài)分檔場(chǎng)景動(dòng)態(tài)維度下為必選配置在非動(dòng)態(tài)分檔場(chǎng)景下單獨(dú)配置此選項(xiàng)不生效。動(dòng)態(tài)分檔場(chǎng)景原始模型中輸入數(shù)據(jù)的某個(gè)或某些維度值不固定當(dāng)前支持通過(guò)設(shè)置shape分檔方式轉(zhuǎn)換模型。參數(shù)取值模型為非固定shape設(shè)置ge.inputShape參數(shù)時(shí)將對(duì)應(yīng)維度值設(shè)置為-1需要同時(shí)配合ge.dynamicDims設(shè)置動(dòng)態(tài)維度檔位參數(shù)、ge.dynamicNodeType指定動(dòng)態(tài)輸入的節(jié)點(diǎn)類型參數(shù)一起使用。模型shape為標(biāo)量動(dòng)態(tài)分檔如果模型輸入中既有標(biāo)量shape又有支持動(dòng)態(tài)分檔的shape則標(biāo)量輸入不能忽略必須配置。例如模型有三個(gè)輸入分別為A:[-1,c1,h1,w1]、B:[]、C:[n2,c2,h2,w2]則shape信息為A:-1,c1,h1,w1;B:;C:n2,c2,h2,w2標(biāo)量輸入B必須配置。配置示例非固定shape設(shè)置指定維度檔位的示例請(qǐng)參見(jiàn)ge.dynamicDims。shape為標(biāo)量動(dòng)態(tài)分檔shape為標(biāo)量的輸入必須配置。例如模型有三個(gè)輸入shape信息分別為A:[-1,32,208,208]、B:[]、C:[16,64,208,208]則配置示例為A為動(dòng)態(tài)分檔輸入此處以設(shè)置動(dòng)態(tài)維度檔位為例{ge.inputShape, A:-1,32,208,208;B:;C:16,64,208,208}, {ge.dynamicDims, 1;2;4}必選/可選可選生效級(jí)別session/graph【免費(fèi)下載鏈接】geGEGraph Engine是面向昇騰的圖編譯器和執(zhí)行器提供了計(jì)算圖優(yōu)化、多流并行、內(nèi)存復(fù)用和模型下沉等技術(shù)手段加速模型執(zhí)行效率減少模型內(nèi)存占用。 GE 提供對(duì) PyTorch、TensorFlow 前端的友好接入能力并同時(shí)支持 onnx、pb 等主流模型格式的解析與編譯。項(xiàng)目地址: https://gitcode.com/cann/ge創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考