从Host到Device的数据传输 (同步)

示例代码如下:

import acl
# ......

# 1.申请内存
size = 1 * 1024 * 1024
host_ptr_a, ret = acl.rt.malloc_host(size)
dev_ptr_b, ret = acl.rt.malloc(size, ACL_MEM_MALLOC_NORMAL_ONLY)

# 2.申请内存后,可向内存中读入数据,该自定义函数fead_file由用户实现
fead_file(fileName, host_ptr_a, size)

# 3.同步内存复制
# 同步内存复制,host_ptr_a表示Host上源内存地址指针,dev_ptr_b表示Device上目的内存地址指针,size表示内存大小
# ACL_MEMCPY_HOST_TO_DEVICE = 1
ret = acl.rt.memcpy(dev_ptr_b, size, host_ptr_a, size, ACL_MEMCPY_HOST_TO_DEVICE)

# 4.使用完内存中的数据后,需及时释放资源
ret = acl.rt.free_host(host_ptr_a)
ret = acl.rt.free(dev_ptr_b)

# ......