昇腾社区首页
中文
注册
开发者
下载

torch_npu.npu.NPUPluggableAllocator

产品支持情况

产品 是否支持
[object Object]Atlas A3 训练系列产品[object Object]
[object Object]Atlas A2 训练系列产品[object Object]
[object Object]Atlas 推理系列产品[object Object]
[object Object]Atlas 训练系列产品[object Object]

功能说明

从so文件加载的NPU内存分配器。

定义文件

torch_npu/npu/memory.py

函数原型

[object Object]

参数说明

  • path_to_so_filestr):so文件路径。
  • alloc_fn_namestr):内存申请函数名(与c/c++文件中函数名一致)。
  • free_fn_namestr):内存释放函数名(与c/c++文件中函数名一致)。

约束说明

alloc_fn_name内存申请函数名必须与c/c++文件中函数名一致。

free_fn_name内存释放函数名必须与c/c++文件中函数名一致。

调用示例

完整调用示例可参考

Python代码示例

[object Object]

风险提示:自定义的so建议严格参照安全代码示例,内存申请,释放函数必须正确实现。错误的so文件可能出现内存申请失败,内存泄漏等问题。

建议处理方式:用户可在内存申请,释放等内存相关操作函数中,增加日志记录内存行为,方便后续定位问题。

c++安全代码示例

[object Object]

日志记录示例:可使用Ascend Extension for PyTorch自带的debug级别日志打印。日志需注意存放至安全路径。

[object Object]