hipInfo sample update with new Device Properties.
This commit is contained in:
@@ -76,51 +76,55 @@ void printDeviceProp (int deviceId)
|
||||
HIPCHECK(hipDeviceGetProperties(&props, deviceId));
|
||||
|
||||
cout << setw(w1) << "Name: " << props.name << endl;
|
||||
cout << setw(w1) << "pciBusID: " << props.pciBusID << endl;
|
||||
cout << setw(w1) << "pciDeviceID: " << props.pciDeviceID << endl;
|
||||
cout << setw(w1) << "multiProcessorCount: " << props.multiProcessorCount << endl;
|
||||
cout << setw(w1) << "maxThreadsPerMultiProcessor: " << props.maxThreadsPerMultiProcessor << endl;
|
||||
cout << setw(w1) << "clockRate: " << (float)props.clockRate / 1000.0 << " Mhz" << endl;
|
||||
cout << setw(w1) << "clockInstructionRate: " << (float)props.clockInstructionRate / 1000.0<< " Mhz" << endl;
|
||||
cout << setw(w1) << "totalGlobalMem" << fixed << setprecision(2) << bytesToGB(props.totalGlobalMem) << " GB" << endl;
|
||||
cout << setw(w1) << "sharedMemPerBlock" << (float)props.sharedMemPerBlock / 1024.0 << " KB" << endl;
|
||||
cout << setw(w1) << "regsPerBlock" << props.regsPerBlock << endl;
|
||||
cout << setw(w1) << "warpSize" << props.warpSize << endl;
|
||||
cout << setw(w1) << "maxThreadsPerBlock" << props.maxThreadsPerBlock << endl;
|
||||
cout << setw(w1) << "maxThreadsDim.x" << props.maxThreadsDim[0] << endl;
|
||||
cout << setw(w1) << "maxThreadsDim.y" << props.maxThreadsDim[1] << endl;
|
||||
cout << setw(w1) << "maxThreadsDim.z" << props.maxThreadsDim[2] << endl;
|
||||
cout << setw(w1) << "maxGridSize.x" << props.maxGridSize[0] << endl;
|
||||
cout << setw(w1) << "maxGridSize.y" << props.maxGridSize[1] << endl;
|
||||
cout << setw(w1) << "maxGridSize.z" << props.maxGridSize[2] << endl;
|
||||
cout << setw(w1) << "totalConstMem" << props.totalConstMem << endl;
|
||||
cout << setw(w1) << "major" << props.major << endl;
|
||||
cout << setw(w1) << "minor" << props.minor << endl;
|
||||
cout << setw(w1) << "l2CacheSize" << props.l2CacheSize << endl;
|
||||
cout << setw(w1) << "maxThreadsPerMultiProcessor" << props.maxThreadsPerMultiProcessor << endl;
|
||||
cout << setw(w1) << "computeMode" << props.computeMode << endl;
|
||||
cout << setw(w1) << "arch.hasGlobalInt32Atomics" << props.arch.hasGlobalInt32Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasGlobalFloatAtomicExch" << props.arch.hasGlobalFloatAtomicExch << endl;
|
||||
cout << setw(w1) << "arch.hasSharedInt32Atomics" << props.arch.hasSharedInt32Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasSharedFloatAtomicExch" << props.arch.hasSharedFloatAtomicExch << endl;
|
||||
cout << setw(w1) << "arch.hasFloatAtomicAdd" << props.arch.hasFloatAtomicAdd << endl;
|
||||
cout << setw(w1) << "arch.hasGlobalInt64Atomics" << props.arch.hasGlobalInt64Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasSharedInt64Atomics" << props.arch.hasSharedInt64Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasDoubles" << props.arch.hasDoubles << endl;
|
||||
cout << setw(w1) << "arch.hasWarpVote" << props.arch.hasWarpVote << endl;
|
||||
cout << setw(w1) << "arch.hasWarpBallot" << props.arch.hasWarpBallot << endl;
|
||||
cout << setw(w1) << "arch.hasWarpShuffle" << props.arch.hasWarpShuffle << endl;
|
||||
cout << setw(w1) << "arch.hasFunnelShift" << props.arch.hasFunnelShift << endl;
|
||||
cout << setw(w1) << "arch.hasThreadFenceSystem" << props.arch.hasThreadFenceSystem << endl;
|
||||
cout << setw(w1) << "arch.hasSyncThreadsExt" << props.arch.hasSyncThreadsExt << endl;
|
||||
cout << setw(w1) << "arch.hasSurfaceFuncs" << props.arch.hasSurfaceFuncs << endl;
|
||||
cout << setw(w1) << "arch.has3dGrid" << props.arch.has3dGrid << endl;
|
||||
cout << setw(w1) << "arch.hasDynamicParallelism" << props.arch.hasDynamicParallelism << endl;
|
||||
cout << setw(w1) << "clockInstructionRate: " << (float)props.clockInstructionRate / 1000.0<< " Mhz" << endl;
|
||||
cout << setw(w1) << "totalGlobalMem: " << fixed << setprecision(2) << bytesToGB(props.totalGlobalMem) << " GB" << endl;
|
||||
cout << setw(w1) << "maxSharedMemoryPerMultiProcessor: " << fixed << setprecision(2) << bytesToGB(props.maxSharedMemoryPerMultiProcessor) << " GB" << endl;
|
||||
cout << setw(w1) << "totalConstMem: " << props.totalConstMem << endl;
|
||||
cout << setw(w1) << "sharedMemPerBlock: " << (float)props.sharedMemPerBlock / 1024.0 << " KB" << endl;
|
||||
cout << setw(w1) << "regsPerBlock: " << props.regsPerBlock << endl;
|
||||
cout << setw(w1) << "warpSize: " << props.warpSize << endl;
|
||||
cout << setw(w1) << "l2CacheSize: " << props.l2CacheSize << endl;
|
||||
cout << setw(w1) << "computeMode: " << props.computeMode << endl;
|
||||
cout << setw(w1) << "maxThreadsPerBlock: " << props.maxThreadsPerBlock << endl;
|
||||
cout << setw(w1) << "maxThreadsDim.x: " << props.maxThreadsDim[0] << endl;
|
||||
cout << setw(w1) << "maxThreadsDim.y: " << props.maxThreadsDim[1] << endl;
|
||||
cout << setw(w1) << "maxThreadsDim.z: " << props.maxThreadsDim[2] << endl;
|
||||
cout << setw(w1) << "maxGridSize.x: " << props.maxGridSize[0] << endl;
|
||||
cout << setw(w1) << "maxGridSize.y: " << props.maxGridSize[1] << endl;
|
||||
cout << setw(w1) << "maxGridSize.z: " << props.maxGridSize[2] << endl;
|
||||
cout << setw(w1) << "major: " << props.major << endl;
|
||||
cout << setw(w1) << "minor: " << props.minor << endl;
|
||||
cout << setw(w1) << "concurrentKernels: " << props.concurrentKernels << endl;
|
||||
cout << setw(w1) << "arch.hasGlobalInt32Atomics: " << props.arch.hasGlobalInt32Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasGlobalFloatAtomicExch: " << props.arch.hasGlobalFloatAtomicExch << endl;
|
||||
cout << setw(w1) << "arch.hasSharedInt32Atomics: " << props.arch.hasSharedInt32Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasSharedFloatAtomicExch: " << props.arch.hasSharedFloatAtomicExch << endl;
|
||||
cout << setw(w1) << "arch.hasFloatAtomicAdd: " << props.arch.hasFloatAtomicAdd << endl;
|
||||
cout << setw(w1) << "arch.hasGlobalInt64Atomics: " << props.arch.hasGlobalInt64Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasSharedInt64Atomics: " << props.arch.hasSharedInt64Atomics << endl;
|
||||
cout << setw(w1) << "arch.hasDoubles: " << props.arch.hasDoubles << endl;
|
||||
cout << setw(w1) << "arch.hasWarpVote: " << props.arch.hasWarpVote << endl;
|
||||
cout << setw(w1) << "arch.hasWarpBallot: " << props.arch.hasWarpBallot << endl;
|
||||
cout << setw(w1) << "arch.hasWarpShuffle: " << props.arch.hasWarpShuffle << endl;
|
||||
cout << setw(w1) << "arch.hasFunnelShift: " << props.arch.hasFunnelShift << endl;
|
||||
cout << setw(w1) << "arch.hasThreadFenceSystem: " << props.arch.hasThreadFenceSystem << endl;
|
||||
cout << setw(w1) << "arch.hasSyncThreadsExt: " << props.arch.hasSyncThreadsExt << endl;
|
||||
cout << setw(w1) << "arch.hasSurfaceFuncs: " << props.arch.hasSurfaceFuncs << endl;
|
||||
cout << setw(w1) << "arch.has3dGrid: " << props.arch.has3dGrid << endl;
|
||||
cout << setw(w1) << "arch.hasDynamicParallelism: " << props.arch.hasDynamicParallelism << endl;
|
||||
cout << endl;
|
||||
|
||||
size_t free, total;
|
||||
hipMemGetInfo(&free, &total);
|
||||
|
||||
cout << fixed << setprecision(2);
|
||||
cout << setw(w1) << "memInfo.total " << bytesToGB(total) << " GB" << endl;
|
||||
cout << setw(w1) << "memInfo.free " << bytesToGB(free) << " GB (" << setprecision(0) << (float)free/total * 100.0 << "%)" << endl;
|
||||
cout << setw(w1) << "memInfo.total: " << bytesToGB(total) << " GB" << endl;
|
||||
cout << setw(w1) << "memInfo.free: " << bytesToGB(free) << " GB (" << setprecision(0) << (float)free/total * 100.0 << "%)" << endl;
|
||||
}
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
|
||||
Reference in New Issue
Block a user