RegisterExternalAllocator
【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge
产品支持情况
头文件/库文件
- 头文件:#include <ge/ge_api_v2.h>
- 库文件:libge_runner_v2.so
功能说明
用户将自己的Allocator注册给GE,适用于使用用户的内存池场景。
此接口需要配合LoadGraph、RunGraphWithStreamAsync接口使用,并且需要在LoadGraph接口调用前注册。
函数原型
Status RegisterExternalAllocator(const void *const stream, AllocatorPtr allocator) const参数说明
返回值说明
约束说明
对于同一条流,多次调用本接口,以最后一次注册为准。
对于不同流,如果用户使用同一个Allocator,不可以多条流并发执行,在执行下一条Stream前,需要对上一Stream做流同步。
将Allocator中的内存释放给操作系统前,需要先调用acl接口“aclrtSynchronizeStream”执行流同步,确保Stream中的任务已执行完成。
acl接口详细说明请参见《应用开发指南 (C&C++)》。
【免费下载链接】geGE(Graph Engine)是面向昇腾的图编译器和执行器,提供了计算图优化、多流并行、内存复用和模型下沉等技术手段,加速模型执行效率,减少模型内存占用。 GE 提供对 PyTorch、TensorFlow 前端的友好接入能力,并同时支持 onnx、pb 等主流模型格式的解析与编译。项目地址: https://gitcode.com/cann/ge
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考