示例代码如下:
import acl # ...... # 1.申请内存 size = 1 * 1024 * 1024 host_ptr_b, ret = acl.rt.malloc_host(size) dev_ptr_a, ret = acl.rt.malloc(size, ACL_MEM_MALLOC_NORMAL_ONLY) # 2.申请内存后,可向内存中读入数据,该自定义函数fead_file由用户实现 fead_file(fileName, dev_ptr_a, size) # 3.同步内存复制 # 同步内存复制,dev_ptr_a表示Device上源内存地址指针,host_ptr_b表示Host上目的内存地址指针,size表示内存大小 # ACL_MEMCPY_DEVICE_TO_HOST = 2 ret = acl.rt.memcpy(host_ptr_b, size, dev_ptr_a, size, ACL_MEMCPY_DEVICE_TO_HOST) # 4.使用完内存中的数据后,需及时释放资源 ret = acl.rt.free_host(host_ptr_b) ret = acl.rt.free(dev_ptr_a) # ......