/
cudautils.cpp
24 lines (22 loc) · 1001 Bytes
/
cudautils.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "cudautils.h"
#include <QDebug>
#include <cuda_runtime.h>
void CudaUtils::printDevices()
{
int count;
if (cudaGetDeviceCount(&count))
return;
qDebug() << "Found" << count << "CUDA device(s)";
for (int i=0; i < count; i++) {
cudaDeviceProp prop;
cudaGetDeviceProperties(&prop, i);
QString deviceString = QString("* %1, Compute capability: %2.%3").arg(prop.name).arg(prop.major).arg(prop.minor);
QString propString1 = QString(" Global mem: %1M, Shared mem per block: %2k, Registers per block: %3").arg(prop.totalGlobalMem / 1024 / 1024)
.arg(prop.sharedMemPerBlock / 1024).arg(prop.regsPerBlock);
QString propString2 = QString(" Warp size: %1 threads, Max threads per block: %2, Multiprocessor count: %3")
.arg(prop.warpSize).arg(prop.maxThreadsPerBlock).arg(prop.multiProcessorCount);
qDebug() << deviceString;
qDebug() << propString1;
qDebug() << propString2;
}
}