---
title: aclMemType
description: "```"
url: https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/latest/Application%20Development%20Guide/aadgc/aclcppdevg_03_1683.html
sourcePath: /source/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Application Development Guide/aadgc/aclcppdevg_03_1683.html
indexId: bbd1f79afdf06d3510aabf4549c01c9ceaa9c56e8168967ef8bd502ec15abb3e105
---
# aclMemType

```
typedef enum {
ACL_MEMTYPE_DEVICE = 0,  //Device内存
ACL_MEMTYPE_HOST = 1,    //Host内存
ACL_MEMTYPE_HOST_COMPILE_INDEPENDENT = 2   //Host内存
}
```

ACL_MEMTYPE_HOST和ACL_MEMTYPE_HOST_COMPILE_INDEPENDENT都标识Host内存，但在使用上有区别：- ACL_MEMTYPE_HOST：若通过  aclSetCompileopt
接口将ACL_OP_JIT_COMPILE设置为disable，设置该选项时，算子输入或输出的值的变化，不会触发算子重新编译；若通过  aclSetCompileopt
接口将ACL_OP_JIT_COMPILE设置为enable，算子输入或输出的值的变化，会触发算子重新编译。
- ACL_MEMTYPE_HOST_COMPILE_INDEPENDENT ：设置该选项时，算子输入或输出的值的变化，都不会触发算子重新编译。若算子编译时依赖其输入或输出的值，此时如果设置为 ACL_MEMTYPE_HOST_COMPILE_INDEPENT，则可能会导致编译失败。
