MxbsMallocAndCopy
MxbsFree
备注
须知
当采用该API进行内存销毁时,需要确保待销毁的内存未被手动执行free等销毁函数,否则可能出现double free的情况。
函数功能
释放指定内存。
:::note 说明 由于Free和系统函数重名,建议优先使用MxbsFree函数。 :::
函数原型
static APP_ERROR MxbsFree(MemoryData& data);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| data | 输入 | 待释放的内存数据。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: MemoryHelper
MxbsMemset
函数功能
内存设置函数。
:::note 说明 由于Memset和系统函数重名,建议优先使用MxbsMemset函数。 :::
函数原型
static APP_ERROR MxbsMemset(MemoryData& data, int32_t value, size_t count);
static APP_ERROR MxbsMemset(MemoryData& data, int32_t value, size_t count, AscendStream &stream);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| data | 输入 | 待设置的内存数据。“data.size”取值范围为[1, 4294967296]。 |
| value | 输入 | 设置的值。 |
| count | 输入 | 设置的数据长度。长度不可大于内存实际长度,否则可能会导致出现coredump情况。 |
| stream | 输入 | AscendStream类型,当参数值为“AscendStream::DefaultStream()”时,接口为同步操作,其他情况下,接口为异步操作。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: MemoryHelper
MxbsMemcpy
函数功能
内存复制函数,根据MemoryData中指定的内存位置在Host侧和Device侧之间进行复制。
:::note 说明 由于Memcpy和系统函数重名,建议优先使用MxbsMemcpy函数。 :::
函数原型
static APP_ERROR MxbsMemcpy (MemoryData& dest, MemoryData& src, size_t count);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| dest | 输入 | 待复制的目标内存。“dest.ptrData”不能为空指针。 |
| src | 输入 | 待复制的源内存。 “src.ptrData”不能为空指针。 |
| count | 输入 | 复制的数据长度。长度的设置应参考目标内存及源内存长度,错误的设置可能会导致出现coredump情况。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: MemoryHelper
MxbsMallocAndCopy
函数功能
内存复制函数,根据MemoryData中指定的内存位置在Host侧和Device侧之间进行dest内存申请及复制。
函数原型
static APP_ERROR MxbsMallocAndCopy(MemoryData& dest, const MemoryData& src);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| dest | 输入 | 待复制的目标内存。 |
| src | 输入 | 待复制的源内存。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: MemoryHelper
SetMaxDataSize
函数功能
设置MemoryData对象所允许的最大内存大小。
函数原型
static APP_ERROR SetMaxDataSize(long size);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| size | 输入 | 最大内存大小,单位:字节。(限制范围:1 ≤ size ≤ 4294967296) |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: MemoryHelper
CheckDataSize
函数功能
检测MemoryData对象内存大小是否符合要求。内存大小不允许为0字节。
函数原型
static APP_ERROR CheckDataSize(long size);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| size | 输入 | MemoryData对象内存大小,检查范围为[1, 4294967296],单位:字节。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: MemoryHelper
CheckDataSizeAllowZero
函数功能
检测MemoryData对象内存大小是否符合要求。内存大小允许为0字节。
函数原型
static APP_ERROR CheckDataSizeAllowZero(long size);
参数说明
| 参数名 | 输入/输出 | 说明 |
|---|---|---|
| size | 输入 | MemoryData对象内存大小,检查范围为[0, 4294967296],单位:字节。 |
返回参数说明
| 数据结构 | 说明 |
|---|---|
| APP_ERROR | 程序执行返回的错误码,请参考APP_ERROR说明。 |
父主题: MemoryHelper
在线提单