---
title: GE_USE_STATIC_MEMORY
description: "网络运行时使用的内存分配方式，支持以下取值："
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/maintenref/envvar/envref_07_0138.html
sourcePath: /source/zh/canncommercial/900/maintenref/envvar/envref_07_0138.html
indexId: 9de559fb26076b9d9113bd56cbecdf59439b155db304b7d3064d9f181144b29867
---
# GE_USE_STATIC_MEMORY

#### 功能描述

网络运行时使用的内存分配方式，支持以下取值：

- 0（默认值）：动态分配内存，即按照实际大小动态分配。
- 2：静态shape支持内存动态扩展。网络运行时，可以通过此取值实现同一session中多张图之间的内存复用，即以最大图所需内存进行分配。例如，假设当前执行图所需内存超过前一张图的内存时，直接释放前一张图的内存，按照当前图所需内存重新分配。
- 3：动态shape支持内存动态扩展，解决内存动态分配时的碎片问题，降低动态shape网络内存占用。
- 4：静态shape和动态shape同时支持内存动态扩展。

默认值是0。

- 该环境变量在后续版本会废弃。
- 多张图并发执行时，不支持配置为“2”和“4”。
- 为兼容历史版本配置，配置为“1”的场景下，系统会按照“2”的方式进行处理。
- 配置为“3”和“4”的场景下，将带来内存收益，但可能导致性能损失。
- 针对TensorFlow训练场景与在线推理场景，此环境变量与配置参数“static_memory_policy”不可同时使用，否则网络运行会冲突。建议开发者优先使用配置参数“static_memory_policy”设置网络运行时的内存分配方式。
- 针对Ascend Graph构图场景，此环境变量与配置参数“ge.exec.staticMemoryPolicy”不可同时使用，否则网络运行会冲突。建议开发者优先使用配置参数“ge.exec.staticMemoryPolicy”设置网络运行时的内存分配方式。


#### 配置示例

```
export GE_USE_STATIC_MEMORY=2
```


#### 使用约束

无


#### 支持的型号

Atlas 训练系列产品

Atlas 推理系列产品

Atlas A2 训练系列产品 / Atlas A2 推理系列产品

Atlas A3 训练系列产品 / Atlas A3 推理系列产品
