struct CompileSpec
说明
用于配置compile接口所需要的参数。
定义
GraphInputs graphInputs; PrecisionPolicy precision_policy = PrecisionPolicy::FP16; std::string soc_version = "Ascend310xxx"; size_t minBlockSize = 1; size_t optimizationLevel = 0; std::vector<size_t> defaultBufferSizeVec = { 500, }; bool requireFullCompilation = false; bool truncateLongAndDouble = true; bool allowTensorReplaceInt = false; std::vector<std::string> torchExecutedOps; std::vector<std::string> torchExecutedModules;
成员
成员名称 |
描述 |
---|---|
graphInputs |
描述模型图中所有输入的数据结构。 默认值:无 |
precision_policy |
设置模型的推理精度策略,支持混合精度PREF_FP32、FP16以及FP32精度。 默认值:PrecisionPolicy::FP16 |
soc_version |
设备型号。 默认值:"Ascend310xxx"。 |
minBlockSize |
切分子图的最少节点数量,取值范围(0,1024]。 默认值:1 |
optimizationLevel |
模型优化等级,取值如下: 0:表示不优化; 1:表示图优化; 2:表示算子优化,仅在编译TorchScript模型时生效。 默认值:0 |
defaultBufferSizeVec |
模型输出在编译阶段无法确定shape时的默认分配内存大小,一般用于动态模型,取值范围(0,36864],单位为MB。 支持vector的长度等于1或者输出的个数,若等于1则所有输出的默认内存大小均为该值,若等于输出个数则为每个输出单独设置默认内存大小。 默认值:{500,} |
requireFullCompilation |
是否要求整图编译。 默认值:false |
truncateLongAndDouble |
是否允许long和double类型转换。 默认值:true |
allowTensorReplaceInt |
是否允许采用Tensor代替Int,,仅在编译TorchScript模型时生效。 默认值:false |
torchExecutedOps |
强制fallback执行的算子,分图算子名格式为{"aten::add"}。 默认值:无 |
torchExecutedModules |
强制fallback执行的模块。 默认值:无 |
父主题: CompileSpec