GPGPU (General Purpose GPU) test |

The GPGPU test exercises and verifies the GPU's General Purpose computing operations (rather than 3D type operations). The GPGPU tests are a bit like the CPU tests, but the tests are run on the GPU. The GPGPU test load is user selectable. The numbers displayed in the test window for this test represent how many millions of GPGPU operations have been performed and verified. Each different GPGPU test is run for a defined period of time. Integer maths and floating point maths tests are run together, followed by a Bitonic sort test. After all tests have been run the cycle count is incremented. The duty cycle (and the hardware capability) determines how many operations can be processed during the test cycle. It is possible to raise an error on a user defined GPU temperature threshold being exceeded. It is also possible to automatically stop testing in this scenario. The sub-categories of this test are described below. Integer mathematics This test exercises and verifies correct operation of the GPU for general purpose instructions using DirectCompute. The test loads test software to the GPU that performs Integer mathematics and some other general operations (add, subtract, multiply, divide, control transfers and conditional operations). This test works on a known data set of 8000 32-bit integers, which are also loaded to the GPU. The results of the test operations are verified depending on the duty cycle selected. When the default duty cycle of 50% is selected all operations will be verified, as will any duty cycle setting lower than 50%. To allow the GPU to be more heavily loaded (and not be so bound by the CPU performance) only 10% of operations are verified when a duty cycle of 51% to 99% is selected. To allow for much higher GPU load at 100% duty cycle, only a small sample of operations are verified. These higher settings allow for much higher GPU load and higher temperatures to be tested. An operation is defined to be the number of adds, subtracts, multiplies and divides. Floating point mathematics This test is identical to the Integer test except the data set used comprises 32-bit floating point numbers and the mathematical operations are on these floating point numbers. Bitonic sort A Bitonic sort is a parallel algorithm for sorting numbers. This test exercises and verifies correct operation of the GPU for general purpose instructions using DirectCompute. The test loads test software to the GPU that performs a Bitonic sort using a number of GPU operations (add, subtract, multiply, bitwise operations, power of and conditional operations). This test works on an known data set of 262144 unsigned 32-bit integers, which is also loaded to the GPU. The results of all test operations are verified (regardless of the duty cycle selected). An operation is defined to be the number of items sorted; the number of GPU instructions executed to achieve the sort will be much higher.