---
title: IsFolded
description: "| 产品 | 是否支持 |"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/API/ascendgraphapi/atlasgeapi_07_0301.html
sourcePath: /source/zh/canncommercial/900/API/ascendgraphapi/atlasgeapi_07_0301.html
indexId: 832e35097c17107c7ba1e93fee0c9572bd6b4bff2ca562d97deaacdf4d92519e72
---
# IsFolded

#### 产品支持情况

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


#### 头文件/库文件

- 头文件：#include <graph/arg_desc_info.h>
- 库文件：libgraph.so


#### 功能说明

判断当前Args地址是否需要被折叠成二级指针。


#### 函数原型

```
bool IsFolded() const
```


#### 参数说明

无


#### 返回值说明

返回当前Args地址是否需要被折叠成二级指针。

true：需要，false：不需要。


#### 约束说明

无


#### 调用示例

```
graphStatus Mc2GenTaskCallback(const gert::ExeResGenerationContext *context,
    std::vector<std::vector<uint8_t>> &tasks) {
  // 设置AI CPU任务
  auto aicpu_task = KernelLaunchInfo::CreateAicpuKfcTask(context,
      "libccl_kernel.so", "RunAicpuKfcSrvLaunch");
  std::vector<ArgDescInfo> aicpu_args_format;
  aicpu_args_format.emplace_back(ArgDescInfo(ArgDescType::kIrOutputDesc, 0, true));
  // 判断此地址是否需要被折叠成二级指针，此处返回true
  auto is_folded = aicpu_args_format.back().IsFolded();
}
```
