Svm optional (#580)

* svm test optional

* make svm test suite execution optional
This commit is contained in:
boazo
2020-02-20 21:39:40 +02:00
committed by GitHub
parent 7d8dcbe678
commit fa6b9e671e

View File

@@ -262,26 +262,48 @@ cl_int create_cl_objects(cl_device_id device_from_harness, const char** ppCodeSt
}
test_definition test_list[] = {
ADD_TEST_VERSION( svm_byte_granularity, Version(2, 0) ),
ADD_TEST_VERSION( svm_set_kernel_exec_info_svm_ptrs, Version(2, 0) ),
ADD_TEST_VERSION( svm_fine_grain_memory_consistency, Version(2, 0) ),
ADD_TEST_VERSION( svm_fine_grain_sync_buffers, Version(2, 0) ),
ADD_TEST_VERSION( svm_shared_address_space_fine_grain, Version(2, 0) ),
ADD_TEST_VERSION( svm_shared_sub_buffers, Version(2, 0) ),
ADD_TEST_VERSION( svm_shared_address_space_fine_grain_buffers, Version(2, 0) ),
ADD_TEST_VERSION( svm_allocate_shared_buffer, Version(2, 0) ),
ADD_TEST_VERSION( svm_shared_address_space_coarse_grain_old_api, Version(2, 0) ),
ADD_TEST_VERSION( svm_shared_address_space_coarse_grain_new_api, Version(2, 0) ),
ADD_TEST_VERSION( svm_cross_buffer_pointers_coarse_grain, Version(2, 0) ),
ADD_TEST_VERSION( svm_pointer_passing, Version(2, 0) ),
ADD_TEST_VERSION( svm_enqueue_api, Version(2, 0) ),
ADD_TEST( svm_byte_granularity),
ADD_TEST( svm_set_kernel_exec_info_svm_ptrs ),
ADD_TEST( svm_fine_grain_memory_consistency ),
ADD_TEST( svm_fine_grain_sync_buffers ),
ADD_TEST( svm_shared_address_space_fine_grain ),
ADD_TEST( svm_shared_sub_buffers ),
ADD_TEST( svm_shared_address_space_fine_grain_buffers ),
ADD_TEST( svm_allocate_shared_buffer ),
ADD_TEST( svm_shared_address_space_coarse_grain_old_api ),
ADD_TEST( svm_shared_address_space_coarse_grain_new_api ),
ADD_TEST( svm_cross_buffer_pointers_coarse_grain ),
ADD_TEST( svm_pointer_passing ),
ADD_TEST( svm_enqueue_api ),
ADD_TEST_VERSION( svm_migrate, Version(2, 1)),
};
const int test_num = ARRAY_SIZE( test_list );
int main(int argc, const char *argv[])
{
return runTestHarness( argc, argv, test_num, test_list, false, true, 0 );
test_status InitCL(cl_device_id device) {
auto version = get_device_cl_version(device);
if (version < Version(2, 0)) {
return TEST_SKIP;
}
int error;
cl_device_svm_capabilities svm_caps;
error = clGetDeviceInfo(device, CL_DEVICE_SVM_CAPABILITIES,
sizeof(svm_caps), &svm_caps, NULL);
if (error != CL_SUCCESS) {
print_error(error, "Unable to get svm capabilities");
return TEST_FAIL;
}
if ((svm_caps == 0) && (version > Version(2,2))) {
return TEST_SKIP;
}
return TEST_PASS;
}
int main(int argc, const char *argv[])
{
return runTestHarnessWithCheck(argc, argv, test_num, test_list, false, true, 0, InitCL);
}