---
title: RegisterMem
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/hixlug/llmcrv2_42_43.html
sourcePath: /source/zh/canncommercial/900/API/hixlug/llmcrv2_42_43.html
indexId: c37731c917a57e58f72c29f0b7ea3c07842b18019163f18b3be23e9b599d990759
---
# RegisterMem

#### 产品支持情况

| 产品 | 是否支持 |
| --- | --- |
| Atlas 350 加速卡 | x |
| Atlas A3 训练系列产品 / Atlas A3 推理系列产品 | √ |
| Atlas A2 训练系列产品 / Atlas A2 推理系列产品 | √ |
| Atlas 200I/500 A2 推理产品 | x |
| Atlas 推理系列产品 | x |
| Atlas 训练系列产品 | x |


说明：针对 Atlas A2 训练系列产品 / Atlas A2 推理系列产品 ，仅支持Atlas 800I A2 推理服务器、A200I A2 Box 异构组件。


#### 函数功能

注册内存地址。用于TransferSync调用指定本地内存地址和远端内存地址，TransferSync指定的地址可以为注册的地址子集，其中本地内存地址需在当前AdxlEngine进行注册，远端内存地址需要在远端AdxlEngine进行注册。


#### 函数原型

```
Status RegisterMem(const MemDesc &mem, MemType type, MemHandle &mem_handle)
```


#### 参数说明

| 参数名 | 输入/输出 | 描述 |
| --- | --- | --- |
| mem | 输入 | 需要注册的内存的描述信息。类型为MemDesc。 |
| type | 输入 | 需要注册的内存的类型。类型为MemType。 |
| mem\_handle | 输出 | 注册成功返回的内存handle, 可用于内存解注册。类型为MemHandle。 |


#### 调用示例

单击Gitee(https://gitee.com/ascend/samples/tags)，根据“标签名”下载配套版本的sample包，从“cplusplus/level1_single_api/12_adxl”目录中获取样例。


#### 返回值

- SUCCESS：成功
- PARAM_INVALID：参数错误
- 其他：失败


#### 异常处理

无


#### 约束说明

- 在调用  Connect
与对端建链之前需要完成所有local内存的注册。
- 单进程支持注册的内存个数上限是256。
- 最大注册50GB的Device内存，20GB的Host内存。注册内存越大，占用的OS内存越多。
- 注册Host内存需使用“aclrtMallocHost(https://www.hiascend.comdocument/detail/zh/canncommercial/900/API/runtimeapi/aclcppdevg_03_0101.html)”进行申请，该接口申请的内存地址自动对齐。
- 注册Device内存使用“aclrtMalloc(https://www.hiascend.comdocument/detail/zh/canncommercial/900/API/runtimeapi/aclcppdevg_03_0095.html)”进行申请，如通过HCCS传输，则内存分配规则需配置为ACL_MEM_MALLOC_HUGE_ONLY。
- 该接口需要和  Initialize
运行在同一个线程上，如需切换线程调用该接口，需要在  Initialize
所在线程调用“aclrtGetCurrentContext(https://www.hiascend.comdocument/detail/zh/canncommercial/900/API/runtimeapi/aclcppdevg_03_0062.html)”获取context，并在新线程调用“aclrtSetCurrentContext(https://www.hiascend.comdocument/detail/zh/canncommercial/900/API/runtimeapi/aclcppdevg_03_0061.html)”设置context。
