ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Classes | Namespaces | Functions
device.h File Reference
#include "types.h"
#include "device_helpers.h"
#include <fstream>
#include <mutex>
#include "mpi.h"
Include dependency graph for device.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  base_device::DeviceContext
 Singleton class to manage GPU device context and initialization. More...
 

Namespaces

namespace  base_device
 
namespace  base_device::information
 

Functions

std::string base_device::information::get_device_name (std::string device_flag)
 Get the device name for source_esolver.
 
int base_device::information::get_device_num (std::string device_flag)
 Get the device number for source_esolver.
 
void base_device::information::output_device_info (std::ostream &output, const std::string &device)
 Output the device information for source_esolver.
 
bool base_device::information::probe_gpu_availability ()
 Safely probes for GPU availability without exiting on error.
 
std::string base_device::information::get_device_flag (const std::string &device, const std::string &basis_type)
 Get the device flag object for source_io PARAM.inp.device.
 
int base_device::information::get_node_rank_with_mpi_shared (const MPI_Comm mpi_comm=MPI_COMM_WORLD)
 Get the local rank within the node using MPI_COMM_TYPE_SHARED.
 
template<typename Device >
void base_device::information::print_device_info (const Device *dev, std::ofstream &ofs_device)
 
template<typename Device >
void base_device::information::record_device_memory (const Device *dev, std::ofstream &ofs_device, std::string str, size_t size)