Files
paddlepaddle--paddle/paddle/phi/core/flags.cc
T
2026-07-13 12:40:42 +08:00

49 lines
1.8 KiB
C++

// Copyright (c) 2019 PaddlePaddle Authors. All Rights Reserved.
// Copyright (c) 2022 NVIDIA Authors. All Rights Reserved.
//
// 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
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// 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.
#include "paddle/common/flags.h"
#if defined(PADDLE_WITH_CUDA) || defined(PADDLE_WITH_HIP)
#include "paddle/phi/backends/gpu/cuda/cudnn_workspace_helper.h"
/**
* CUDNN related FLAG
* Name: FLAGS_conv_workspace_size_limit
* Since Version: 0.13.0
* Value Range: uint64, default=512 (MB)
* Example:
* Note: The internal function of cuDNN obtains the fastest matching algorithm
* within this memory limit. Usually, faster algorithms can be chosen in
* larger workspaces, but memory space can also be significantly
* increased.
* Users need to balance memory and speed.
*/
PHI_DEFINE_EXPORTED_int64(conv_workspace_size_limit,
phi::backends::gpu::kDefaultConvWorkspaceSizeLimitMB,
"cuDNN convolution workspace limit in MB unit.");
#ifdef PADDLE_WITH_MEMORY_EFFICIENT_ATTENTION
PHI_DEFINE_EXPORTED_bool(
mem_efficient_attn_available,
true,
"Weather memory efficient attention is available on the current device.");
#endif
#ifdef PADDLE_WITH_FLASHATTN
PHI_DEFINE_EXPORTED_bool(
flash_attn_available,
true,
"Weather flash attention is available on the current device.");
#endif
#endif