Advanced ConfigurationΒΆ
In addition to the normal options provided by CMake, Umpire uses some additional configuration arguments to control optional features and behavior. Each argument is a boolean option, and can be turned on or off:
-DENABLE_CUDA=Off
Here is a summary of the configuration options, their default value, and meaning:
Variable
Default
Meaning
ENABLE_CUDAOff
Enable CUDA support
ENABLE_HIPOff
Enable HIP support
ENABLE_NUMAOff
Enable NUMA support
ENABLE_FILE_RESOURCEOff
Enable FILE support
ENABLE_TESTSOn
Build test executables
ENABLE_BENCHMARKSOn
Build benchmark programs
ENABLE_LOGGINGOn
Enable Logging within Umpire
ENABLE_SLICOff
Enable SLIC logging
ENABLE_BACKTRACEOff
Enable backtraces for allocations
ENABLE_BACKTRACE_SYMBOLSOff
Enable symbol lookup for backtraces
ENABLE_TOOLSOff
Enable tools like replay
ENABLE_DOCSOff
Build documentation (requires Sphinx and/or Doxygen)
ENABLE_COff
Build the C API
ENABLE_FORTRANOff
Build the Fortran API
ENABLE_PERFORMANCE_TESTSOff
Build and run performance tests
ENABLE_IPC_SHARED_MEMORYENABLE_MPI
Enable Shared Memory support
ENABLE_ASANOff
Enable ASAN support
These arguments are explained in more detail below:
ENABLE_CUDAThis option enables support for NVIDIA GPUs using the CUDA programming model. If Umpire is built without CUDA or HIP support, then only theHOSTallocator is available for use.ENABLE_HIPThis option enables support for AMD GPUs using the ROCm stack and HIP programming model. If Umpire is built without CUDA or HIP support, then only theHOSTallocator is available for use.ENABLE_NUMAThis option enables support for NUMA. Theumpire::strategy::NumaPolicyis available when built with this option, which may be used to locate the allocation to a specific node.ENABLE_FILE_RESOURCEThis option will allow the build to make all File Memory Allocation files. If Umpire is built without FILE, CUDA or HIP support, then only theHOSTallocator is available for use.ENABLE_TESTSThis option controls whether or not test executables will be built.ENABLE_BENCHMARKSThis option will build the benchmark programs used to test performance.ENABLE_LOGGINGThis option enables usage of Logging services for UmpireENABLE_SLICThis option enables usage of logging services provided by SLIC.ENABLE_BACKTRACEThis option enables collection of backtrace information for each allocation.ENABLE_BACKTRACE_SYMBOLSThis option enables symbol information to be provided with backtraces. This requires -ldl to be specified for using programs.ENABLE_TOOLSEnable development tools for Umpire (replay, etc.)ENABLE_DOCSBuild user documentation (with Sphinx) and code documentation (with Doxygen)ENABLE_CBuild the C API, this allows accessing Umpire Allocators and the ResourceManager through a C interface.ENABLE_FORTRANBuild the Fortran API.ENABLE_PERFORMANCE_TESTSBuild and run performance testsENABLE_IPC_SHARED_MEMORYThis option enables support for interprocess shared memory. Currently, this feature only exists for forHOSTmemory.ENABLE_ASANThis option enables address sanitization checks within Umpire by compilers that support options like-fsanitize=address