drvHdcMallocEx
函数功能
申请快速通道大页内存。
快速通道内存分“发送数据内存”“接收数据内存”“发送控制消息内存” “接收控制消息内存”四种,使用快速通道收发数据之前,根据使用场景需要提前申请内存。
函数原型
void *drvHdcMallocEx(enum drvHdcMemType mem_type, void *addr, unsigned int align, unsigned int len, int devid,unsigned int flag)
参数说明
参数名 |
输入/输出 |
说明 |
---|---|---|
mem_type |
输入 |
申请的内存类型 类型:drvHdcMemType。 |
addr |
输出 |
申请快速通道内存成功后返回的虚拟地址 指定起始申请地址,从该地址后面找到一个可用页申请。 若传入默认值“NULL”,表示由系统指定。 类型:void *。 |
align |
输入 |
对齐长度,仅支持4k(host+device)和2M(device侧),当前该参数预留,为后续扩展使用,保持默认值“0”即可。 类型:int。 |
len |
输入 |
申请内存大小,取值范围:0~512M。 类型:int。 |
devid |
输入 |
设备的Device ID,取值范围:[0,64)。 类型:int。 |
flag |
输入 |
内存申请标志,有以下取值:
类型:int。 |
返回值说明
返回申请到的内存地址。
约束说明
- 调用内核函数申请物理内存,连续物理内存不足时会返回失败,如果是指定了DVPP用的4G限制内存范围内的空间申请,超出可能会申请失败,非DVPP请不要指定在该范围。
父主题: 快速通道收发接口