|
Gromacs
2025.3
|
#include "config.h"#include <cstddef>#include <array>#include <optional>#include <type_traits>#include "gromacs/utility/arrayref.h"#include "gromacs/utility/enumerationhelpers.h"#include "gromacs/utility/fixedcapacityvector.h"#include "gromacs/utility/mpiinfo.h"
Include dependency graph for device_information.h:
This graph shows which files directly or indirectly include this file:Declares the GPU information structure and its helpers.
Classes | |
| struct | DeviceInformation |
| Platform-dependent device information. More... | |
Enumerations | |
| enum | DeviceStatus : int { DeviceStatus::Compatible, DeviceStatus::Nonexistent, DeviceStatus::Incompatible, DeviceStatus::IncompatibleClusterSize, DeviceStatus::IncompatibleNvidiaVolta, DeviceStatus::NotPreferredBackend, DeviceStatus::NonFunctional, DeviceStatus::Unavailable, DeviceStatus::DeviceNotTargeted, DeviceStatus::IncompatibleOclAmdRdna, DeviceStatus::IncompatibleAmdRdnaNotTargeted, DeviceStatus::Count } |
| Possible results of the GPU detection/check. More... | |
| enum | DeviceVendor : int { DeviceVendor::Unknown = 0, DeviceVendor::Nvidia = 1, DeviceVendor::Amd = 2, DeviceVendor::Intel = 3, DeviceVendor::Apple = 4, DeviceVendor::Count = 5 } |
| Device vendors. More... | |
Variables | |
| static constexpr bool | c_binarySupportsGpus = (GMX_GPU != 0) |
| Constant used to help minimize preprocessed code. | |
| static const gmx::EnumerationArray < DeviceStatus, const char * > | c_deviceStateString |
| Names of the GPU detection/check results. More... | |
| static constexpr bool | c_canSerializeDeviceInformation = std::is_trivially_copyable_v<DeviceInformation> |
| Whether DeviceInformation can be serialized for sending via MPI. | |
|
strong |
Possible results of the GPU detection/check.
|
strong |
|
static |
Names of the GPU detection/check results.
Check-source wants to warn about the use of a symbol name that would require an inclusion of config.h. However the use is in a comment, so that is a false warning. So C-style string concatenation is used to fool the naive parser in check-source. That needs a clang-format suppression in order to look reasonable. Also clang-tidy wants to suggest that a comma is missing, so that is suppressed.
1.8.5