---
title: 函数：memcpy2d_async
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/runtimeapi/aclpythondevg_01_0123.html
sourcePath: /source/zh/canncommercial/900/API/runtimeapi/aclpythondevg_01_0123.html
indexId: ef3f0065a55ec78c7aaecf5ac447d8b1ccd79577121292da3dfad2567101922d71
---
# 函数：memcpy2d_async

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | √ |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 训练系列产品 | √ |
| Atlas 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | √ |


#### 功能说明

实现异步内存复制，主要用于矩阵数据的复制。异步接口。


Atlas 推理系列加速模块产品 不支持该接口。


#### 函数原型

- C函数原型
  1 aclError aclrtMemcpy2dAsync(void *dst, size_t dpitch, const void *src, size_t spitch, size_t width, size_t height, aclrtMemcpyKind kind, aclrtStream stream)

- python函数
  1 ret = acl.rt.memcpy2d_async(dst, dpitch, src, spitch, width, height, kind, stream)


#### 参数说明

| 参数名 | 说明 |
| --- | --- |
| dst | int，目的内存地址的指针地址。 |
| dpitch | int，目的内存中相邻两列向量的地址距离。 |
| src | int，源内存地址的指针地址。 |
| spitch | int，源内存中相邻两列向量的地址距离。 |
| width | int，待复制的矩阵宽度。 width最大设置为5000000，且必须小于或等于dpitch和spitch。 |
| height | int，待复制的矩阵高度。 “height”最大可设置为5 \* 1024 \* 1024 = 5242880，否则接口返回失败。 |
| kind | int，内存复制的类型。 ACL\_MEMCPY\_HOST\_TO\_HOST = 0 // Host内的内存复制 ACL\_MEMCPY\_HOST\_TO\_DEVICE = 1 // Host到Device的内存复制 ACL\_MEMCPY\_DEVICE\_TO\_HOST = 2 // Device到Host的内存复制 ACL\_MEMCPY\_DEVICE\_TO\_DEVICE = 3 // Device内的内存复制 ACL\_MEMCPY\_DEFAULT = 4 // 由系统根据源、目的内存地址自行判断拷贝方向 |
| stream | int，指定Stream的指针地址。 |


#### 返回值说明

| 返回值 | 说明 |
| --- | --- |
| ret | int，错误码，返回0表示成功，返回其它值表示失败。 |


#### 约束说明

- 该接口是异步接口，调用接口成功仅表示任务下发成功，不表示任务执行成功。调用该接口后，需调用同步等待接口（例如，  acl.rt.synchronize_stream
）确保内存复制的任务已执行完成。
- 本接口仅支持ACL_MEMCPY_HOST_TO_DEVICE、ACL_MEMCPY_DEVICE_TO_HOST或ACL_MEMCPY_DEVICE_TO_DEVICE内存复制类型，且不同型号支持的类型不同。对于不支持的内存复制类型，接口返回ACL_ERROR_INVALID_PARAM。

  - ACL_MEMCPY_HOST_TO_DEVICE、ACL_MEMCPY_DEVICE_TO_HOST类型，以下型号支持：
    Atlas 350 加速卡

    Atlas A3 训练系列产品 / Atlas A3 推理系列产品

    Atlas A2 训练系列产品 / Atlas A2 推理系列产品

    Atlas 200I/500 A2 推理产品

    Atlas 推理系列产品

    Atlas 训练系列产品

  - ACL_MEMCPY_DEVICE_TO_DEVICE类型，以下型号支持：
    Atlas 350 加速卡

    Atlas A3 训练系列产品 / Atlas A3 推理系列产品

    Atlas A2 训练系列产品 / Atlas A2 推理系列产品

- 对于Atlas 推理系列产品，Control CPU开放形态下，不支持调用本接口。另外，Atlas 推理系列加速模块产品也不支持本接口
- 对于Atlas 200I/500 A2 推理产品，Ascend RC形态下，不支持调用本接口。
