CANN/ge TensorHolder文档
TensorHolder【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge产品支持情况产品是否支持Atlas A3 训练系列产品/Atlas A3 推理系列产品√Atlas A2 训练系列产品/Atlas A2 推理系列产品√模块导入from ge.es import TensorHolder功能说明TensorHolder是 Eager-Style 图构建中的张量持有者类由GraphBuilder的create_*方法如create_input()、create_const_float()等创建。该类支持运算符重载、-、*、/可通过链式调用设置数据类型、格式和形状。TensorHolder自动维护对所属GraphBuilder的强引用确保底层 C 资源在TensorHolder存活期间不会被释放。约束说明不支持直接实例化TensorHolder对象只能通过GraphBuilder的create_*方法创建直接调用构造函数将抛出RuntimeError。不可在build_and_reset()后调用 setter 方法在GraphBuilder.build_and_reset()执行后调用set_data_type()、set_format()、set_shape()等 setter 方法将导致错误。运算要求同一 GraphBuilder进行张量运算add、sub、mul、div时参与运算的两个TensorHolder必须属于同一个GraphBuilder否则将抛出ValueError。name 属性property获取生产者节点名称。函数原型property def name(self) - str: ...参数说明无参数。返回值说明类型说明str返回生产者节点的名称。set_data_type 方法设置张量数据类型。函数原型def set_data_type(self, data_type: DataType) - TensorHolder: ...参数说明参数名输入/输出说明data_type输入数据类型类型为ge.graph.types.DataType枚举。返回值说明类型说明TensorHolder返回当前TensorHolder对象引用支持链式调用。约束说明data_type必须为DataType枚举类型否则将抛出TypeError。set_format 方法设置张量数据格式。函数原型def set_format(self, format: Format) - TensorHolder: ...参数说明参数名输入/输出说明format输入数据格式类型为ge.graph.types.Format枚举。返回值说明类型说明TensorHolder返回当前TensorHolder对象引用支持链式调用。约束说明format必须为Format枚举类型否则将抛出TypeError。set_shape 方法设置张量形状。函数原型def set_shape(self, shape: List[int]) - TensorHolder: ...参数说明参数名输入/输出说明shape输入形状维度列表类型为整数列表List[int]。返回值说明类型说明TensorHolder返回当前TensorHolder对象引用支持链式调用。约束说明shape必须为整数列表且所有元素必须为int类型否则将抛出TypeError。add 方法张量加法运算。函数原型def add(self, other: Union[TensorHolder, TensorLike]) - TensorHolder: ...参数说明参数名输入/输出说明other输入另一个张量类型为TensorHolder或TensorLike标量/数组等可转换类型。返回值说明类型说明TensorHolder返回新的TensorHolder对象表示加法运算的结果。约束说明若other为TensorHolder必须与当前张量属于同一个GraphBuilder。运算库libes_math.so或默认生成的库必须可加载否则将抛出RuntimeError。sub 方法张量减法运算。函数原型def sub(self, other: Union[TensorHolder, TensorLike]) - TensorHolder: ...参数说明参数名输入/输出说明other输入另一个张量类型为TensorHolder或TensorLike标量/数组等可转换类型。返回值说明类型说明TensorHolder返回新的TensorHolder对象表示减法运算的结果。约束说明若other为TensorHolder必须与当前张量属于同一个GraphBuilder。运算库libes_math.so或默认生成的库必须可加载否则将抛出RuntimeError。mul 方法张量乘法运算。函数原型def mul(self, other: Union[TensorHolder, TensorLike]) - TensorHolder: ...参数说明参数名输入/输出说明other输入另一个张量类型为TensorHolder或TensorLike标量/数组等可转换类型。返回值说明类型说明TensorHolder返回新的TensorHolder对象表示乘法运算的结果。约束说明若other为TensorHolder必须与当前张量属于同一个GraphBuilder。运算库libes_math.so或默认生成的库必须可加载否则将抛出RuntimeError。div 方法张量除法运算。函数原型def div(self, other: Union[TensorHolder, TensorLike]) - TensorHolder: ...参数说明参数名输入/输出说明other输入另一个张量类型为TensorHolder或TensorLike标量/数组等可转换类型。返回值说明类型说明TensorHolder返回新的TensorHolder对象表示除法运算的结果。约束说明若other为TensorHolder必须与当前张量属于同一个GraphBuilder。运算库libes_math.so或默认生成的库必须可加载否则将抛出RuntimeError。运算符重载TensorHolder支持以下 Python 运算符重载对应关系如下运算符对应方法说明a ba.add(b)张量加法a - ba.sub(b)张量减法a * ba.mul(b)张量乘法a / ba.div(b)张量除法同时支持右操作数运算__radd__、__rsub__、__rmul__、__rtruediv__用于处理非TensorHolder类型在左侧的运算。get_owner_builder 方法获取所属的GraphBuilder。函数原型def get_owner_builder(self) - GraphBuilder: ...参数说明无参数。返回值说明类型说明GraphBuilder返回创建该TensorHolder的GraphBuilder对象。【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考