[Beignet] [PATCH] backend: refine utests to check capability of double

rander rander.wang at intel.com
Thu Mar 30 02:31:45 UTC 2017


	for old chips like Gen7, Gen7.5, double is not
	supported well and the ext of double is disabled
	now check it to skip test double on them

Signed-off-by: rander <rander.wang at intel.com>
---
 utests/builtin_commonFunc_fp64.cpp              | 2 ++
 utests/builtin_convert_double2float.cpp         | 2 ++
 utests/builtin_convert_double2int16.cpp         | 2 ++
 utests/builtin_convert_double2int32.cpp         | 2 ++
 utests/builtin_convert_double2int64.cpp         | 2 ++
 utests/builtin_convert_double2int8.cpp          | 2 ++
 utests/builtin_convert_int16toDouble.cpp        | 2 ++
 utests/builtin_convert_int8toDouble.cpp         | 2 ++
 utests/builtin_convert_ulong2double.cpp         | 2 ++
 utests/builtin_double_fabs_floor_ceil_fract.cpp | 2 ++
 utests/builtin_double_logx.cpp                  | 2 ++
 utests/builtin_double_simpleMathFuncs.cpp       | 2 ++
 12 files changed, 24 insertions(+)

diff --git a/utests/builtin_commonFunc_fp64.cpp b/utests/builtin_commonFunc_fp64.cpp
index a590ca9..553700f 100644
--- a/utests/builtin_commonFunc_fp64.cpp
+++ b/utests/builtin_commonFunc_fp64.cpp
@@ -175,6 +175,8 @@ static void builtin_commonFunc_fp64(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_commonFunc_fp64");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * max_function * sizeof(double), NULL);
diff --git a/utests/builtin_convert_double2float.cpp b/utests/builtin_convert_double2float.cpp
index 94d3b6e..3ad17d6 100644
--- a/utests/builtin_convert_double2float.cpp
+++ b/utests/builtin_convert_double2float.cpp
@@ -63,6 +63,8 @@ static void builtin_convert_double2float(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_double2float");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * max_function * sizeof(double), NULL);
diff --git a/utests/builtin_convert_double2int16.cpp b/utests/builtin_convert_double2int16.cpp
index c38d49b..e0b3f93 100644
--- a/utests/builtin_convert_double2int16.cpp
+++ b/utests/builtin_convert_double2int16.cpp
@@ -121,6 +121,8 @@ static void builtin_convert_double2int16(void)
   float diff;
   short log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_double2int16");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * max_function * sizeof(double), NULL);
diff --git a/utests/builtin_convert_double2int32.cpp b/utests/builtin_convert_double2int32.cpp
index 5589d1b..0de9021 100644
--- a/utests/builtin_convert_double2int32.cpp
+++ b/utests/builtin_convert_double2int32.cpp
@@ -217,6 +217,8 @@ static void builtin_convert_double2int32(void)
   float diff;
   int log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_double2int32");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * max_function * sizeof(double), NULL);
diff --git a/utests/builtin_convert_double2int64.cpp b/utests/builtin_convert_double2int64.cpp
index 431eebf..f552fc6 100644
--- a/utests/builtin_convert_double2int64.cpp
+++ b/utests/builtin_convert_double2int64.cpp
@@ -273,6 +273,8 @@ static void builtin_convert_double2int64(void)
   float diff;
   long log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_double2int64");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * max_function * sizeof(double), NULL);
diff --git a/utests/builtin_convert_double2int8.cpp b/utests/builtin_convert_double2int8.cpp
index 44ca8f2..2f6bd1b 100644
--- a/utests/builtin_convert_double2int8.cpp
+++ b/utests/builtin_convert_double2int8.cpp
@@ -86,6 +86,8 @@ static void builtin_convert_double2int8(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_double2int8");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * max_function * sizeof(double), NULL);
diff --git a/utests/builtin_convert_int16toDouble.cpp b/utests/builtin_convert_int16toDouble.cpp
index 222dace..ea42fe7 100644
--- a/utests/builtin_convert_int16toDouble.cpp
+++ b/utests/builtin_convert_int16toDouble.cpp
@@ -29,6 +29,8 @@ static void builtin_convert_int16toDouble(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_int16toDouble");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * sizeof(short), NULL);
diff --git a/utests/builtin_convert_int8toDouble.cpp b/utests/builtin_convert_int8toDouble.cpp
index 7dc4dc1..ddcf0c6 100644
--- a/utests/builtin_convert_int8toDouble.cpp
+++ b/utests/builtin_convert_int8toDouble.cpp
@@ -29,6 +29,8 @@ static void builtin_convert_int8toDouble(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_int8toDouble");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * sizeof(char), NULL);
diff --git a/utests/builtin_convert_ulong2double.cpp b/utests/builtin_convert_ulong2double.cpp
index 4706541..98cf525 100644
--- a/utests/builtin_convert_ulong2double.cpp
+++ b/utests/builtin_convert_ulong2double.cpp
@@ -58,6 +58,8 @@ static void builtin_convert_ulong2double(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_convert_ulong2double");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * max_function * sizeof(long), NULL);
diff --git a/utests/builtin_double_fabs_floor_ceil_fract.cpp b/utests/builtin_double_fabs_floor_ceil_fract.cpp
index 0aab6d2..a7be1d5 100644
--- a/utests/builtin_double_fabs_floor_ceil_fract.cpp
+++ b/utests/builtin_double_fabs_floor_ceil_fract.cpp
@@ -54,6 +54,8 @@ static void builtin_double_fabs_floor_ceil_fract(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_double_fabs_floor_ceil_fract");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * sizeof(double), NULL);
diff --git a/utests/builtin_double_logx.cpp b/utests/builtin_double_logx.cpp
index 51f5412..27d04d4 100644
--- a/utests/builtin_double_logx.cpp
+++ b/utests/builtin_double_logx.cpp
@@ -51,6 +51,8 @@ static void builtin_double_logx(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_double_logx");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * sizeof(double), NULL);
diff --git a/utests/builtin_double_simpleMathFuncs.cpp b/utests/builtin_double_simpleMathFuncs.cpp
index 0681e82..119c3a8 100644
--- a/utests/builtin_double_simpleMathFuncs.cpp
+++ b/utests/builtin_double_simpleMathFuncs.cpp
@@ -85,6 +85,8 @@ static void builtin_double_simpleMathFuncs(void)
   float diff;
   char log[256] = {0};
 
+  if(cl_check_double() == false) return;
+
   OCL_CREATE_KERNEL("builtin_double_simpleMathFuncs");
 
   OCL_CREATE_BUFFER(buf[0], CL_MEM_READ_WRITE, count_input * sizeof(double), NULL);
-- 
2.7.4



More information about the Beignet mailing list