System Status Monitor OpenCL Tool


This sample of multi-GPU OpenCL™ code exercises the 2 key components of an accelerated application:

  • the transfer of data between the host and the devices
  • on device computations

SystemStatusMonitor supports any number of OpenCL capable discrete GPUs and features 3 levels of hardness by increasing the duration of the tests. A comprehensive set of metrics is reported allowing to spot any misconfigured device. Unchanged, SystemStatusMonitor is useful for checking the correct settings of complex multi-GPU configurations. SystemStatusMonitor can also constitute the development basis of customized tools.

The tool will allocate most of the GPU memory to stress the memory units, but also run enough work to stress all the compute parts of the GPU in a single iteration.
The computation done on GPU is based on random data and it controls the result at the end of each iteration.
This simple tool can be used to check if the hardware and software components are working correctly.

If a problem is detected on a specific GPU, the tool will tell you on which PCIE slot the faulting GPU is plugged in.
You can then perform specific tests on this GPU. For example putting it on another system, checking the GPU is correctly cooled down.



  • cmake 2.8.12 or higher.
  • AMD APP SDK 2.9.1 or higher.
  • An OpenMP capable compiler.