函数:host_register
产品支持情况
产品  | 
是否支持  | 
|---|---|
√  | 
|
√  | 
|
√  | 
|
x  | 
|
x  | 
|
x  | 
使用说明
C函数原型  | 
aclError aclrtHostRegister(void *ptr, uint64_t size, aclrtHostRegisterType type, void **devPtr)  | 
|---|---|
Python函数  | 
dev_ptr, ret = acl.rt.host_register(ptr, size, type)  | 
函数功能  | 
将Host内存映射注册为Devcie可访问的地址,供Device侧网卡访问。映射后的Device地址不能用于内存复制操作。 本接口与acl.rt.host_unregister接口成对使用。  | 
输入说明  | 
ptr:int,Host内存地址。Host内存地址需4K页对齐。当os内核版本为5.10或更低时,使用非锁页内存会导致异常,因此必须调用acl.rt.malloc_host接口来申请Host内存;当os内核版本为5.10以上时,支持使用非锁页的Host内存,因此也支持不调用acl.rt.malloc_host接口申请Host内存。 size:int,内存大小,单位Byte。 type:int,内存注册类型。当前仅支持ACL_HOST_REGISTER_MAPPED,表示将Host内存映射注册为Devcie可访问的。  | 
输出说明  | 
dev_ptr:int,Host内存映射成的Device可访问的内存地址。  | 
返回值说明  | 
ret:int,返回0表示成功,返回其他值表示失败,请参见aclError。  |