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:
These arguments are explained in more detail below:
ENABLE_BENCHMARKSThis option will build the benchmark programs used to test performance.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_DOCSBuild user documentation (with Sphinx) and code documentation (with Doxygen)ENABLE_FORTRANBuild the Fortran API.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_TESTSThis option controls whether or not test executables will be built.UMPIRE_DISABLE_ALLOCATIONMAP_DEBUGThis option disables verbose output from the AllocationMap during debug builds. By default, when an allocation cannot be found, the contents of the AllocationMap are printed.UMPIRE_ENABLE_ASANThis option enables address sanitization checks within Umpire by compilers that support options like-fsanitize=addressUMPIRE_ENABLE_BACKTRACE_SYMBOLSThis option enables symbol information to be provided with backtraces. This requires -ldl to be specified for using programs.UMPIRE_ENABLE_BACKTRACEThis option enables collection of backtrace information for each allocation.UMPIRE_ENABLE_CBuild the C API, this allows accessing Umpire Allocators and the ResourceManager through a C interface.UMPIRE_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.UMPIRE_ENABLE_IPC_SHARED_MEMORYThis option enables support for interprocess shared memory. Currently, this feature only exists for forHOSTmemory.UMPIRE_ENABLE_LOGGINGThis option enables usage of Logging services for UmpireUMPIRE_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.UMPIRE_ENABLE_PERFORMANCE_TESTSBuild and run performance testsUMPIRE_ENABLE_SLICThis option enables usage of logging services provided by SLIC.UMPIRE_ENABLE_TOOLSEnable development tools for Umpire (replay, etc.)