Requirements: C++ compiler that supports at least C++14.
When programming it's often useful to know the compute resources that are availabe to you ahead of time. This program reports crucial details of both the hardware, the software, the general architecture, and most importantly, the GPU(s), through executing a simple, single source, c++ program.
Initially, Universal System Management Interface (unv-smi) was created as an alternative to nvidia-smi for revealing GPU information on systems that do not have Nvidia GPUs. Though it still serves this purpose, unv-smi also reveals architectural information that parallel programmers or PhD researchers may find helpful. In 2022, unv-smi was cited in a PhD Dissertation at the University of Tennessee at Chattanooga. This tool was designed to work across a wide range of diversified machines, including complex computer cluster architectures with many cores, down to single-socket laptops with integrated graphics cards. See the example-output folder for examples.
unv-smi works on Linux, Windows, and MacOs.
mkdir build
cd build
cmake ..
make
./unv-smi
Additional details can be found in the Wiki.