文档管理中心

函数功能

用于计算算子对应的ComputeNodeInfo需要预分配的内存空间大小。

ComputeNodeInfo的内存空间是平铺式的,内存依次存放ComputeNodeInfo自身的数据成员、算子IR定义输入个数的Anchor信息、实际输入个数和输出个数的编译阶段的Tensor描述信息以及属性信息。该函数的计算结果不包含属性信息所占的内存空间大小。

函数原型

static ge::graphStatus CalcSize(const size_t ir_inputs_num, const size_t inputs_num, const size_t outputs_num, size_t &total_size);
static ge::graphStatus CalcSize(const size_t ir_inputs_num, const size_t ir_outputs_num, const size_t inputs_num, const size_t outputs_num, size_t &total_size);

参数说明

展开
参数 输入/输出 说明
ir_inputs_num 输入 算子IR原型定义的输入个数。
ir_outputs_num 输出 算子IR原型定义的输出个数。
inputs_num 输入 算子实际的输入个数。
outputs_num 输出 算子实际的输出个数。
total_size 输出 需要预分配的ComputeNodeInfo和相关信息的内存总大小,不包含RuntimeAttrs的内存大小。

返回值

返回值为graphStatus类型(uint32_t),其不同的状态取值说明如下。

展开
状态 说明
ge::GRAPH_SUCCESS 0 执行成功。
ge::GRAPH_PARAM_INVALID 50331649 执行失败,参数无效,校验未通过。

约束说明

调用示例

auto ir_input_num = node->GetOpDesc()->GetIrInputs().size();
auto input_num = node->GetInDataNodesAndAnchors().size();
auto output_num = node->GetAllOutDataAnchorsSize();
GE_ASSERT_SUCCESS(ComputeNodeInfo::CalcSize(ir_input_num, input_num, output_num, total_size));
搜索
请输入您想要搜索的关键词