昇腾社区首页
中文
注册

aclrtMemcpy

产品支持情况

产品

是否支持

Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件

Atlas 200I/500 A2 推理产品

Atlas 推理系列产品

Atlas 训练系列产品

Atlas 200/300/500 推理产品

功能说明

实现内存复制。

函数原型

aclError aclrtMemcpy(void *dst, size_t destMax, const void *src, size_t count, aclrtMemcpyKind kind)

参数说明

参数名

输入/输出

说明

dst

输入

目的内存地址指针。

destMax

输入

目的内存地址的最大内存长度,单位Byte。

src

输入

源内存地址指针。

count

输入

内存复制的长度,单位Byte。

kind

输入

内存复制的类型,预留参数,配置枚举值中的值无效,系统内部会根据源内存地址指针、目的内存地址指针判断是否可以将源地址的数据复制到目的地址,如果不可以,则系统会返回报错。

返回值说明

返回0表示成功,返回其他值表示失败,请参见aclError

约束说明

  • 本接口会立刻进行内存复制,函数内部不会进行隐式的device同步或流同步。
  • 如果执行Device间的内存复制,需先调用aclrtDeviceCanAccessPeer接口查询两个Device间是否支持内存复制、调用aclrtDeviceEnablePeerAccess接口开启两个Device间的内存复制功能,再调用本接口进行内存复制。

    该约束适用以下型号:

    Atlas A2 训练系列产品/Atlas 800I A2 推理产品/A200I A2 Box 异构组件

    Atlas 推理系列产品

    Atlas 训练系列产品

参考资源

接口调用示例,参见数据传输