Pertinent aspects of one particular GPU. Condensing the data for each GPU in this manner helps to ensure that one cache line will obtain all statistics for a single GPU.
More...
#include <gpu_details.h>
|
bool | getAvailability () const |
| Get the availability of the GPU.
|
|
bool | getGpuSupported () const |
| Get whether the architecture of the GPU is supported.
|
|
int | getArchMajor () const |
| Get the major architectural number of the GPU.
|
|
int | getArchMinor () const |
| Get the minor architectural number of the GPU.
|
|
int | getSMPCount () const |
| Get the number of streaming multiprocessors on the GPU.
|
|
int | getCardRam () const |
| Get the amount of RAM on the GPU, in megabytes (assuming that all of the device RAM is available for any given process)
|
|
int | getMaxThreadsPerBlock () const |
| Get the maximum number of threads per block supported by this GPU.
|
|
int | getMaxThreadsPerSMP () const |
| Get the maximum number of threads per streaming multiprocessor on this GPU.
|
|
int | getMaxBlocksPerSMP () const |
| Get the maximum number of blocks per streaming multiprocessor on this GPU.
|
|
int | getMaxSharedPerBlock () const |
| Get the maximum amount of L1 shared memory per block on this GPU.
|
|
int | getMaxSharedPerSMP () const |
| Get the available L1 shared memory per streaming multiprocessor on this GPU.
|
|
int | getGlobalCacheSize () const |
| Get the total amount of global cache (L2) on the card, in bytes.
|
|
int | getRegistersPerBlock () const |
| Get the maximum number of registers available per block on this GPU.
|
|
int | getRegistersPerSMP () const |
| Get the maximum number of registers available per streaming multiprocessor on this GPU.
|
|
std::string | getCardName () const |
| Get the name of the GPU.
|
|
void | setSMPCount (int smp_count_in) |
| Set the number of streaming multiprocessors. This is useful for experimentation in mock settings, or perhaps running STORMM on GPUs when MiG is engaged.
|
|
|
| GpuDetails () |
| Constructors include a blank constructor (which automatically labels the GPU as unavailable) and constructors based on cudaDeviceProp or hipDeviceProp.
|
|
|
bool | operator== (const GpuDetails &right) const |
| Overload the == and != operators to compare GpuDetails objects.
|
|
bool | operator!= (const GpuDetails &right) const |
|
Pertinent aspects of one particular GPU. Condensing the data for each GPU in this manner helps to ensure that one cache line will obtain all statistics for a single GPU.
◆ GpuDetails()
stormm::card::GpuDetails::GpuDetails |
( |
| ) |
|
Constructors include a blank constructor (which automatically labels the GPU as unavailable) and constructors based on cudaDeviceProp or hipDeviceProp.
- Parameters
-
devprop | A CUDA device properties object reported by cudaGetDeviceProperties() |
dev_index | Index of the GPU in a longer list produced by the CUDA runtime library |
◆ operator==()
bool stormm::card::GpuDetails::operator== |
( |
const GpuDetails & | right | ) |
const |
Overload the == and != operators to compare GpuDetails objects.
- Parameters
-
right | The other GPU to compare against |
◆ setSMPCount()
void stormm::card::GpuDetails::setSMPCount |
( |
int | smp_count_in | ) |
|
Set the number of streaming multiprocessors. This is useful for experimentation in mock settings, or perhaps running STORMM on GPUs when MiG is engaged.
- Parameters
-
smp_count_in | The number of streaming multiprocessors |
The documentation for this class was generated from the following files: