memory_optimization_transpiler.py 2.1 KB
Newer Older
1
#   Copyright (c) 2018 PaddlePaddle Authors. All Rights Reserved.
D
dzhwinter 已提交
2
#
D
dzhwinter 已提交
3 4 5
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
D
dzhwinter 已提交
6
#
D
dzhwinter 已提交
7
#     http://www.apache.org/licenses/LICENSE-2.0
D
dzhwinter 已提交
8
#
D
dzhwinter 已提交
9 10 11 12 13 14
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

15
import logging
16 17 18 19 20 21


def memory_optimize(input_program,
                    skip_opt_set=None,
                    print_log=False,
                    level=0,
22
                    skip_grads=True):
23
    """
S
swtkiwi 已提交
24 25
	:api_attr: Static Graph

26 27
    This API is deprecated since 1.6. Please do not use it. The better
    memory optimization strategies are enabled by default.
28
    """
29 30 31
    logging.warn(
        'Caution! paddle.fluid.memory_optimize() is deprecated '
        'and not maintained any more, since it is not stable!\n'
32 33 34 35 36 37 38 39 40 41
        'This API would not take any memory optimizations on your Program '
        'now, since we have provided default strategies for you.\n'
        'The newest and stable memory optimization strategies (they are all '
        'enabled by default) are as follows:\n'
        ' 1. Garbage collection strategy, which is enabled by exporting '
        'environment variable FLAGS_eager_delete_tensor_gb=0 (0 is the '
        'default value).\n'
        ' 2. Inplace strategy, which is enabled by setting '
        'build_strategy.enable_inplace=True (True is the default value) '
        'when using CompiledProgram or ParallelExecutor.\n')
42 43


44
def release_memory(input_program, skip_opt_set=None):
Y
yuyang18 已提交
45
    """
S
swtkiwi 已提交
46 47
	:api_attr: Static Graph

48 49
    This API is deprecated since 1.6. Please do not use it. The better
    memory optimization strategies are enabled by default.
Y
yuyang18 已提交
50
    """
51 52
    logging.warn('paddle.fluid.release_memory() is deprecated, it would not'
                 ' take any memory release on your program')