This is a collection of rather simple tools whose purpose is to try out specific OpenCL features. Although it might be of assistance in checking if specific implementations behave as expected in specific cases, it is not aimed at that. Currently the following tests are available: overalloc-auto: check if it's possible to overcommit the memory of a compute device by allocating enough large buffers that not all of them may be physically present on the device at the same time. Kernels are launched in sequence to process the buffers in pairs, giving the platform the possibility to evict unusued buffers to make room for the ones in use. overalloc-migrate: check if it's possible to overcommit the memory of a compute device by allocating enough large buffers that not all of them may be physically present on the device at the same time. The OpenCL 1.2 memobject migration feature is used to give hints to the platform on when it is feasible to migrate a buffer out of the device. overalloc-migrate-copy: as above, but separate ‘host’ and ‘device’ buffers, and migrate ‘host’ buffers to the host as soon as they are allocated, then during buffer use copy the current ‘host’ buffer to the appropriate ‘device’ buffer and use the ‘device’ buffer only in the kernel. bandwidth: a bandwidth test to check how the CL_MEM_*_HOST_PTR flags affect kernel and map performance. ndrangelatency: test the latencies involved in launching a no-op kernel, from submission to completion. Note: this program automatically tests all devices on all platforms. command-fail-event: checks if API calls that fail to validate their parameters still generate an event or not