ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

CANN/GE性能调优参数文档

CANN/GE性能调优参数文档 性能调优【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/gege.exec.op_precision_mode设置指定算子内部处理时的精度模式支持指定一个算子或多个算子。通过该参数传入自定义的精度模式配置文件op_precision.ini可以为不同的算子设置不同的精度模式。ini文件中按照算子类型、节点名称设置精度模式每一行设置一个算子类型或节点名称的精度模式按节点名称设置精度模式的优先级高于按算子类型。配置文件中支持设置如下精度模式high_precision表示高精度。high_performance表示高性能。enable_float_32_execution算子内部处理时使用FP32数据类型功能该场景下FP32数据类型不会自动转换为HF32数据类型若使用HF32计算精度损失超过预期时可启用该配置指定部分算子内部计算时使用FP32保持精度。该选项仅支持以下产品类型Ascend 950PR/Ascend 950DTAtlas A2 训练系列产品/Atlas A2 推理系列产品Atlas A3 训练系列产品/Atlas A3 推理系列产品enable_hi_float_32_execution算子内部处理时使用HF32数据类型功能启用此配置后FP32数据类型自动转换为HF32数据类型该机制可以降低数据所占空间大小实现性能提升。当前版本该选项暂不支持。support_out_of_bound_index表示对gather、scatter和segment类算子的indices输入进行越界校验校验会降低算子的执行性能。keep_fp16算子内部处理时使用FP16数据类型功能该场景下FP16数据类型不会自动转换为FP32数据类型若使用FP32计算时性能不满足预期同时精度要求不高情况下可以选择keep_fp16模式牺牲精度提升性能不建议使用该低精度模式。super_performance表示超高性能和高性能相比在算法计算公式上进行了优化。具体某个算子支持配置的精度/性能模式取值可以通过CANN软件安装后文件存储路径的opp/built-in/op_impl/ai_core/tbe/impl_mode/all_ops_impl_mode.ini文件查看。op_precision.ini配置样例如下[ByOpType] optype1high_precision optype2high_performance optype3enable_hi_float_32_execution optype4support_out_of_bound_index [ByNodeName] nodename1high_precision nodename2high_performance nodename3enable_hi_float_32_execution nodename4support_out_of_bound_index配置示例{ge.exec.op_precision_mode, $HOME/conf/op_precision.ini};必选/可选可选生效级别全局ge.exec.variable_acc是否开启变量格式优化。参数取值True默认值开启。False关闭。为了提高训练效率在网络执行的变量初始化过程中将变量转换成更适合在AI处理器上运行的数据格式。但在用户特殊要求场景下可以选择关闭该功能开关。使用约束开启时不能同时将ge.AllowMultiGraphParallelCompile配置为1否则会校验报错。配置示例{ge.exec.variable_acc, True};必选/可选可选生效级别全局/session/graphge.graphMaxParallelModelNum图执行模式下同一个图可以在同一个device上被多个模型并行加载执行该参数用于控制允许并行加载的最大模型数目。参数取值1~INT32_MAX默认为8。配置示例{ge.graphMaxParallelModelNum, 8};必选/可选可选生效级别全局/session/graphge.tiling_schedule_optimizeTiling下沉调度优化开关。由于NPU中AI Core内部存储无法完全容纳算子输入输出的所有数据需要每次搬运一部分输入数据进行计算然后搬出再搬运下一部分输入数据进行计算该过程称之为Tiling根据算子的shape等信息来确定数据切分算法相关参数比如每次搬运的块大小以及总共循环多少次的计算程序称之为Tiling实现。由于Tiling实现中完成的均为标量计算AI Core并不擅长故一般在Host侧CPU上执行但是满足下述条件Tiling实现会下沉到Device侧执行模型为静态shape。模型中的算子支持Tiling下沉比如FusedInferAttentionScore、IncreFlashAttention等融合算子。支持Tiling下沉的算子值有依赖需要满足前一个算子的值有device的执行结果如果依赖的值是Const则不需要下沉执行Tiling编译时会完成Tiling。该参数仅支持以下产品Atlas A2 训练系列产品/Atlas A2 推理系列产品Atlas A3 训练系列产品/Atlas A3 推理系列产品Atlas 推理系列产品参数取值0默认值关闭Tiling下沉。1开启Tiling下沉。配置示例{ge.tiling_schedule_optimize, 0};必选/可选可选生效级别全局/session/graph【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表