尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

CANN/GE动态shape配置参数

CANN/GE动态shape配置参数 动态shape【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/geac_parallel_enable动态shape图中是否允许AI CPU算子和AI Core算子并行运行。动态shape图中开关开启时系统自动识别图中可以和AI Core并发的AI CPU算子不同引擎的算子下发到不同流上实现多引擎间的并行从而提升资源利用效率和动态shape执行性能。参数取值1允许AI CPU和AI Core算子间的并行运行。0默认值AI CPU算子不会单独分流。配置示例{ac_parallel_enable, 1};必选/可选可选生效级别全局ge.dynamicDims设置ND格式下动态维度的档位适用于执行推理时每次处理任意维度的场景。该参数需要与ge.inputShape配合使用。详细使用示例请参见编译并运行Graph场景。**参数取值**通过dim1,dim2,dim3;dim4,dim5,dim6;dim7,dim8,dim9的形式设置。参数值格式所有档位必须放在双引号中档位之间使用英文分号分隔每档内参数使用英文逗号分隔每档中的dim值与ge.inputShape参数中的-1标识的参数依次对应inputShape参数中有几个-1则每档必须设置几个维度。并且要求档位信息必须大于1组。参数值约束针对Ascend 950PR/Ascend 950DT档位数约束为档位数取值范围为(1, 256]即必须设置至少2个档位最多支持256档配置建议配置为3~4档。针对如下产品档位数约束为档位数取值范围为(1,100]即必须设置至少2个档位最多支持100档配置建议配置为3~4档。Atlas A3 训练系列产品/Atlas A3 推理系列产品Atlas A2 训练系列产品/Atlas A2 推理系列产品Atlas 训练系列产品Atlas 推理系列产品使用示例若模型只有一个输入{ge.inputShape, data:1,-1,-1}, {ge.dynamicDims, 1,2;3,4;5,6;7,8} // graph运行时支持的data算子的shape为1,1,2; 1,3,4; 1,5,6; 1,7,8若网络模型有多个输入每档中的dim值与模型输入参数中的-1标识的参数依次对应模型输入参数中有几个-1则每档必须设置几个维度。例如网络模型有三个输入分别为data(1,1,40,T)label(1,T)mask(T,T) 其中T为动态可变。则配置示例为{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运行时支持的输入dims组合档数分别为 //第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)必选/可选可选生效级别session/graphge.dynamicNodeType用于指定动态输入的节点类型。0dataset输入为动态输入。1placeholder输入为动态输入。当前不支持dataset和placeholder输入同时为动态输入。配置示例{ge.dynamicNodeType, 0};必选/可选可选生效级别session/graphge.exec.hostSchedulingMaxThreshold控制**静态小图根图**执行时是否走动态shape调度的最大阈值。默认阈值为0。建议大模型场景使用。如果静态根图节点的个数最大阈值则走动态shape调度。大模型场景该方式可以节约Stream资源。如果静态根图节点的个数最大阈值则保持原有流程不变。说明如果静态根图节点包括子图则该参数不生效。必选/可选可选生效级别全局/session/graphge.exec.static_model_ops_lower_limit动态shape拆分中设置静态子图最小算子数量阈值。参数取值取值范围为-1到正无穷取其他值报错默认值为4。取值0算子数门限静态子图不单独拆图合并到动态图走动态执行。算子数门限保持原有流程不变静态子图仍旧会拆图。取值-1表示所有算子走动态图执行。例如假设静态子图中算子数为4通过该参数配置的门限为10则静态子图不会单独拆图走动态图执行。必选/可选可选生效级别graphge.inputShape指定模型输入数据的shape。在线推理或训练场景下该参数仅在动态分档场景动态维度下为必选配置在非动态分档场景下单独配置此选项不生效。动态分档场景原始模型中输入数据的某个或某些维度值不固定当前支持通过设置shape分档方式转换模型。参数取值模型为非固定shape设置ge.inputShape参数时将对应维度值设置为-1需要同时配合ge.dynamicDims设置动态维度档位参数、ge.dynamicNodeType指定动态输入的节点类型参数一起使用。模型shape为标量动态分档如果模型输入中既有标量shape又有支持动态分档的shape则标量输入不能忽略必须配置。例如模型有三个输入分别为A:[-1,c1,h1,w1]、B:[]、C:[n2,c2,h2,w2]则shape信息为A:-1,c1,h1,w1;B:;C:n2,c2,h2,w2标量输入B必须配置。配置示例非固定shape设置指定维度档位的示例请参见ge.dynamicDims。shape为标量动态分档shape为标量的输入必须配置。例如模型有三个输入shape信息分别为A:[-1,32,208,208]、B:[]、C:[16,64,208,208]则配置示例为A为动态分档输入此处以设置动态维度档位为例{ge.inputShape, A:-1,32,208,208;B:;C:16,64,208,208}, {ge.dynamicDims, 1;2;4}必选/可选可选生效级别session/graph【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表