summaryrefslogtreecommitdiff
path: root/utests/compiler_subgroup_reduce.cpp
diff options
context:
space:
mode:
authorPan Xiuli <xiuli.pan@intel.com>2016-06-16 05:55:24 +0800
committerYang Rong <rong.r.yang@intel.com>2016-07-15 18:25:06 +0800
commite606e2da5445e3103f5d106d0582d18a755e45a9 (patch)
treecd0e223bb72493ce16949ba68243476acb583e21 /utests/compiler_subgroup_reduce.cpp
parent41020e3d184117ba4f81a49d07c7e0c3bbdeddc8 (diff)
downloadbeignet-e606e2da5445e3103f5d106d0582d18a755e45a9.tar.gz
Utest: Add check for cl_intel_subgroups extension tests
These tests can only run with cl_intel_subgroups extension, add check before runing the tests. Also refine the call of the extension API with function pointer. V2: Use clGetExtensionFunctionAddress to get extension API function Signed-off-by: Pan Xiuli <xiuli.pan@intel.com> Reviewed-by: Yang Rong <rong.r.yang@intel.com>
Diffstat (limited to 'utests/compiler_subgroup_reduce.cpp')
-rw-r--r--utests/compiler_subgroup_reduce.cpp36
1 files changed, 35 insertions, 1 deletions
diff --git a/utests/compiler_subgroup_reduce.cpp b/utests/compiler_subgroup_reduce.cpp
index 1cd8fe4c..3c3df06a 100644
--- a/utests/compiler_subgroup_reduce.cpp
+++ b/utests/compiler_subgroup_reduce.cpp
@@ -158,7 +158,7 @@ static void subgroup_generic(WG_FUNCTION wg_func,
globals[0] = WG_GLOBAL_SIZE;
locals[0] = WG_LOCAL_SIZE;
size_t SIMD_SIZE = 0;
- OCL_CALL(clGetKernelSubGroupInfoKHR,kernel,device,CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE_KHR,sizeof(size_t)*1,locals,sizeof(size_t),&SIMD_SIZE,NULL);
+ OCL_CALL(utestclGetKernelSubGroupInfoKHR,kernel,device,CL_KERNEL_MAX_SUB_GROUP_SIZE_FOR_NDRANGE_KHR,sizeof(size_t)*1,locals,sizeof(size_t),&SIMD_SIZE,NULL);
/* input and expected data */
generate_data(wg_func, input, expected, SIMD_SIZE);
@@ -227,6 +227,8 @@ static void subgroup_generic(WG_FUNCTION wg_func,
*/
void compiler_subgroup_any(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_int *input = NULL;
cl_int *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -236,6 +238,8 @@ void compiler_subgroup_any(void)
MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_any);
void compiler_subgroup_all(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_int *input = NULL;
cl_int *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -248,6 +252,8 @@ MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_all);
*/
void compiler_subgroup_reduce_add_int(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_int *input = NULL;
cl_int *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -257,6 +263,8 @@ void compiler_subgroup_reduce_add_int(void)
MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_add_int);
void compiler_subgroup_reduce_add_uint(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_uint *input = NULL;
cl_uint *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -266,6 +274,8 @@ void compiler_subgroup_reduce_add_uint(void)
MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_add_uint);
void compiler_subgroup_reduce_add_long(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_long *input = NULL;
cl_long *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -275,6 +285,8 @@ void compiler_subgroup_reduce_add_long(void)
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_subgroup_reduce_add_long);
void compiler_subgroup_reduce_add_ulong(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_ulong *input = NULL;
cl_ulong *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -284,6 +296,8 @@ void compiler_subgroup_reduce_add_ulong(void)
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_subgroup_reduce_add_ulong);
void compiler_subgroup_reduce_add_float(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_float *input = NULL;
cl_float *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -297,6 +311,8 @@ MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_add_float);
*/
void compiler_subgroup_reduce_max_int(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_int *input = NULL;
cl_int *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -306,6 +322,8 @@ void compiler_subgroup_reduce_max_int(void)
MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_max_int);
void compiler_subgroup_reduce_max_uint(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_uint *input = NULL;
cl_uint *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -315,6 +333,8 @@ void compiler_subgroup_reduce_max_uint(void)
MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_max_uint);
void compiler_subgroup_reduce_max_long(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_long *input = NULL;
cl_long *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -324,6 +344,8 @@ void compiler_subgroup_reduce_max_long(void)
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_subgroup_reduce_max_long);
void compiler_subgroup_reduce_max_ulong(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_ulong *input = NULL;
cl_ulong *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -333,6 +355,8 @@ void compiler_subgroup_reduce_max_ulong(void)
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_subgroup_reduce_max_ulong);
void compiler_subgroup_reduce_max_float(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_float *input = NULL;
cl_float *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -346,6 +370,8 @@ MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_max_float);
*/
void compiler_subgroup_reduce_min_int(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_int *input = NULL;
cl_int *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -355,6 +381,8 @@ void compiler_subgroup_reduce_min_int(void)
MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_min_int);
void compiler_subgroup_reduce_min_uint(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_uint *input = NULL;
cl_uint *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -364,6 +392,8 @@ void compiler_subgroup_reduce_min_uint(void)
MAKE_UTEST_FROM_FUNCTION(compiler_subgroup_reduce_min_uint);
void compiler_subgroup_reduce_min_long(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_long *input = NULL;
cl_long *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -373,6 +403,8 @@ void compiler_subgroup_reduce_min_long(void)
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_subgroup_reduce_min_long);
void compiler_subgroup_reduce_min_ulong(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_ulong *input = NULL;
cl_ulong *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",
@@ -382,6 +414,8 @@ void compiler_subgroup_reduce_min_ulong(void)
MAKE_UTEST_FROM_FUNCTION_WITH_ISSUE(compiler_subgroup_reduce_min_ulong);
void compiler_subgroup_reduce_min_float(void)
{
+ if(!cl_check_subgroups())
+ return;
cl_float *input = NULL;
cl_float *expected = NULL;
OCL_CREATE_KERNEL_FROM_FILE("compiler_subgroup_reduce",