28#include <boost/serialization/access.hpp>
58 friend boost::serialization::access;
59 template <
typename Archive>
60 void serialize(Archive &ar,
unsigned int const ) {
129std::pair<int, std::string> get_node_info();
std::vector< EspressoGpuDevice > cuda_gather_gpus()
Gather unique list of CUDA devices on all nodes.
void cuda_on_program_start()
Called on program start.
void cuda_check_device()
Check that a device is available, that its compute capability is sufficient for ESPResSo,...
bool cuda_check_gpu_compute_capability(int dev)
Check that a given GPU has compute capability.
bool cuda_test_device_access()
Test if communication to the CUDA device works.
std::string cuda_get_gpu_name(int dev)
Get the name of a CUDA device.
EspressoGpuDevice cuda_get_device_props(int dev)
Get properties of a CUDA device.
int cuda_get_device()
Get the current CUDA device.
void cuda_set_device(int dev)
Choose a device for future CUDA computations.
int cuda_get_n_gpus()
Get the number of CUDA devices on the local host.
void cuda_init()
Initializes the CUDA stream.
Struct to hold information relevant to ESPResSo about GPUs.
std::string proc_name
Node identification.
std::size_t total_memory
Total Memory.
int compute_capability_major
Compute capability (major)
int compute_capability_minor
Compute capability (minor)
int node
MPI process identification.
int n_cores
Number of cores.
std::string name
Local CUDA device name.
int id
Local CUDA device id.