aclmdlSetExternalWeightAddress【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge产品支持情况产品是否支持Atlas A3 训练系列产品 / Atlas A3 推理系列产品√Atlas A2 训练系列产品 / Atlas A2 推理系列产品√功能说明配置存放外置权重的Device内存调用方需在模型加载前将外置权重数据复制到该内存中。若存在多个外置权重文件则需多次调用此接口。模型加载过程中计算图中的每一个FileConstant节点会保存对应外置权重文件的路径例如/xx/../weight_hasid1图引擎 Graph Engine 简称GE根据路径中的文件名例如weight_hasid1检索用户是否配置了外置权重的Device内存。若已配置则直接使用该Device内存地址否则GE将自行申请一块Device内存并读取外置权重文件并将外置权重数据拷贝至该Device内存中模型卸载时会释放该内存。本接口需要与以下其它接口配合实现模型加载功能调用aclmdlCreateConfigHandle接口创建模型加载的配置对象。可选调用aclmdlSetExternalWeightAddress接口配置存放外置权重的Device内存。多次调用aclmdlSetConfigOpt接口设置配置对象中每个属性的值。调用aclmdlLoadWithConfig接口指定模型加载时需要的配置信息并进行模型加载。模型加载成功后调用aclmdlDestroyConfigHandle接口销毁。函数原型aclError aclmdlSetExternalWeightAddress(aclmdlConfigHandle *handle, const char *weightFileName, void *devPtr, size_t size)参数说明参数名输入/输出说明handle输出模型加载的配置对象的指针。需提前调用aclmdlCreateConfigHandle接口创建该对象。weightFileName输入外置权重文件名不含路径。一般对om模型文件大小有限制或模型文件加密的场景下需单独加载权重文件因此需在构建模型时将权重保存在单独的文件中。例如在使用ATC工具生成om文件时将--external_weight参数设置为11表示将原始网络中的Const/Constant节点的权重保存在单独的文件中。devPtr输入Device上存放外置权重的内存地址指针。该Device内存由用户自行管理模型执行过程中不能释放该内存。size输入内存的大小单位Byte需32字节对齐。返回值说明返回0表示成功返回其他值表示失败请参见aclError。【免费下载链接】geGEGraph Engine是面向昇腾的图编译器和执行器提供了计算图优化、多流并行、内存复用和模型下沉等技术手段加速模型执行效率减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考