From 53db6e7f9f29a5e4de2d9cb007b3d00cd96f62a9 Mon Sep 17 00:00:00 2001 From: Kevin Petit Date: Wed, 20 Feb 2019 16:10:04 +0000 Subject: [PATCH] Synchronise with Khronos-private Gitlab branch The maintenance of the conformance tests is moving to Github. This commit contains all the changes that have been done in Gitlab since the first public release of the conformance tests. Signed-off-by: Kevin Petit --- CMakeLists.txt | 7 +- build_android.py | 4 +- build_lnx.sh | 0 clean_tests.py | 0 test_common/harness/compat.h | 10 +- test_common/harness/imageHelpers.cpp | 34 +- test_common/harness/imageHelpers.h | 3 - test_common/harness/kernelHelpers.c | 6 +- test_common/harness/kernelHelpers.h | 5 +- test_common/harness/msvc9.c | 2 + test_common/harness/parseParameters.cpp | 42 + test_common/harness/parseParameters.h | 24 + test_common/harness/testHarness.c | 16 +- test_common/harness/testHarness.h | 11 +- test_conformance/SVM/CMakeLists.txt | 1 + test_conformance/SVM/main.cpp | 2 +- .../SVM/test_allocate_shared_buffer.cpp | 4 + test_conformance/SVM/test_enqueue_api.cpp | 13 +- test_conformance/api/test_api_min_max.c | 10 +- test_conformance/basic/run_array | 0 test_conformance/basic/run_array_image_copy | 0 test_conformance/basic/run_image | 0 test_conformance/basic/run_multi_read_image | 0 .../basic/test_async_strided_copy.cpp | 7 +- test_conformance/basic/test_progvar.cpp | 87 +- test_conformance/c11_atomics/test_atomics.cpp | 5 +- .../test_common/harness/compat.h | 360 ++++-- .../test_common/harness/kernelHelpers.c | 6 +- .../test_common/harness/kernelHelpers.h | 5 +- .../compatibility/test_common/harness/msvc9.c | 325 ++--- .../test_common/harness/testHarness.c | 14 +- .../test_common/harness/testHarness.h | 11 +- .../test_conformance/api/CMakeLists.txt | 1 + .../compatibility/test_conformance/api/main.c | 2 + .../test_conformance/api/procs.h | 1 + .../test_conformance/api/test_api_min_max.c | 8 +- .../api/test_queue_properties.cpp | 174 +++ .../test_conformance/basic/run_array | 0 .../basic/run_array_image_copy | 0 .../test_conformance/basic/run_image | 0 .../basic/run_multi_read_image | 0 .../basic/test_async_strided_copy.cpp | 4 +- .../test_conformance/basic/test_imagedim.c | 23 +- .../test_conformance/basic/test_sizeof.c | 2 +- .../test_conformance/images/image_helpers.h | 1 - .../test_compiler_defines_for_extensions.cpp | 3 + test_conformance/contractions/contractions.c | 2 + test_conformance/conversions/CMakeLists.txt | 1 + .../conversions/basic_test_conversions.c | 7 +- .../conversions/test_conversions.c | 14 +- test_conformance/d3d10/harness.cpp | 2 +- .../device_execution/execute_block.cpp | 7 +- test_conformance/device_execution/main.c | 8 +- test_conformance/device_partition/Jamfile | 64 +- .../geometrics/test_geometrics_double.cpp | 4 +- test_conformance/gl/test_image_methods.cpp | 18 +- .../gl/test_images_read_common.cpp | 8 +- .../gl/test_images_write_common.cpp | 4 +- test_conformance/gles/main.cpp | 18 +- test_conformance/half/CMakeLists.txt | 1 + test_conformance/half/Test_roundTrip.c | 2 +- test_conformance/half/Test_vLoadHalf.c | 4 +- test_conformance/half/Test_vStoreHalf.c | 4 +- test_conformance/half/cl_utils.c | 48 +- test_conformance/half/cl_utils.h | 2 + test_conformance/half/main.c | 9 +- test_conformance/headers/CMakeLists.txt | 10 +- .../images/clFillImage/test_fill_2D_array.cpp | 24 +- test_conformance/images/clGetInfo/main.cpp | 12 +- .../images/clReadWriteImage/main.cpp | 12 +- .../images/kernel_image_methods/main.cpp | 12 +- .../images/samplerlessReads/main.cpp | 12 +- .../math_brute_force/CMakeLists.txt | 25 +- .../math_brute_force/FunctionList.h | 2 +- test_conformance/math_brute_force/Utility.h | 6 +- test_conformance/math_brute_force/binary.c | 43 +- .../math_brute_force/binaryOperator.c | 115 +- test_conformance/math_brute_force/binary_i.c | 31 +- .../math_brute_force/binary_two_results_i.c | 18 +- .../math_brute_force/macro_binary.c | 25 +- .../math_brute_force/macro_unary.c | 25 +- test_conformance/math_brute_force/mad.c | 54 +- test_conformance/math_brute_force/main.c | 1087 +++++++++++++---- .../math_brute_force/reference_math.c | 6 +- .../run_math_brute_force_in_parallel.py | 0 test_conformance/math_brute_force/ternary.c | 54 +- test_conformance/math_brute_force/unary.c | 32 +- .../math_brute_force/unary_two_results.c | 12 +- .../math_brute_force/unary_two_results_i.c | 6 +- test_conformance/math_brute_force/unary_u.c | 2 +- .../TestNonUniformWorkGroup.cpp | 25 +- .../TestNonUniformWorkGroup.h | 1 + test_conformance/printf/test_printf.c | 42 +- test_conformance/printf/util_printf.c | 14 +- test_conformance/run_conformance.py | 0 test_conformance/select/CMakeLists.txt | 1 + test_conformance/select/test_select.c | 413 +++---- test_conformance/spir/basic.zip | Bin 2583318 -> 2609481 bytes test_conformance/spir/half.zip | Bin 1270366 -> 1270377 bytes .../spir/images_kernel_read_write.zip | Bin 160169 -> 175996 bytes test_conformance/spir/main.cpp | 6 +- test_conformance/spir/profiling.zip | Bin 7977 -> 9184 bytes test_conformance/spir/run_build_test.cpp | 3 + test_conformance/subgroups/main.cpp | 6 +- .../media_sharing/test_create_context.cpp | 19 +- .../media_sharing/test_functions_api.cpp | 23 +- .../media_sharing/test_functions_kernel.cpp | 25 +- .../media_sharing/test_get_device_ids.cpp | 23 +- .../media_sharing/test_interop_sync.cpp | 21 +- .../media_sharing/test_memory_access.cpp | 19 +- .../media_sharing/test_other_data_types.cpp | 25 +- test_extensions/media_sharing/utils.cpp | 33 + test_extensions/media_sharing/utils.h | 11 +- test_extensions/media_sharing/wrappers.cpp | 94 +- test_extensions/media_sharing/wrappers.h | 47 +- 115 files changed, 2632 insertions(+), 1304 deletions(-) mode change 100644 => 100755 build_android.py mode change 100644 => 100755 build_lnx.sh mode change 100644 => 100755 clean_tests.py create mode 100644 test_common/harness/parseParameters.cpp create mode 100644 test_common/harness/parseParameters.h mode change 100644 => 100755 test_conformance/basic/run_array mode change 100644 => 100755 test_conformance/basic/run_array_image_copy mode change 100644 => 100755 test_conformance/basic/run_image mode change 100644 => 100755 test_conformance/basic/run_multi_read_image create mode 100644 test_conformance/compatibility/test_conformance/api/test_queue_properties.cpp mode change 100644 => 100755 test_conformance/compatibility/test_conformance/basic/run_array mode change 100644 => 100755 test_conformance/compatibility/test_conformance/basic/run_array_image_copy mode change 100644 => 100755 test_conformance/compatibility/test_conformance/basic/run_image mode change 100644 => 100755 test_conformance/compatibility/test_conformance/basic/run_multi_read_image mode change 100644 => 100755 test_conformance/math_brute_force/run_math_brute_force_in_parallel.py mode change 100644 => 100755 test_conformance/run_conformance.py diff --git a/CMakeLists.txt b/CMakeLists.txt index 2b975bb5..207b8789 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,7 @@ set(CLConform_VERSION "${CLConform_VERSION_MAJOR}.${CLConform_VERSION_MINOR}") set(CLConform_VERSION_FULL "${CLConform_VERSION}.${CLConform_VERSION_MICRO}${CLConform_VERSION_EXTRA}") -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.1) add_definitions(-DCL_USE_DEPRECATED_OPENCL_2_0_APIS=1) add_definitions(-DCL_USE_DEPRECATED_OPENCL_1_1_APIS=1) @@ -77,6 +77,11 @@ else() set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /D__SSE__") endif() +# Clang gives C++11 narrowing warnings so surpress these for now +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wno-c++11-narrowing") +endif() + list(APPEND CLConform_LIBRARIES ${OPENCL_LIBRARIES}) if(ANDROID) list(APPEND CLConform_LIBRARIES m) diff --git a/build_android.py b/build_android.py old mode 100644 new mode 100755 index 2bd7f5c8..e1b8c1e9 --- a/build_android.py +++ b/build_android.py @@ -108,7 +108,9 @@ def install_android_cmake(): print "input: " if get_input(): print("installing android-cmake") - subprocess.call(['git', 'clone', 'https://github.com/taka-no-me/android-cmake']) + #subprocess.call(['git', 'clone', 'https://github.com/taka-no-me/android-cmake']) + # Use a newer fork of android-cmake which has been updated to support Clang. GCC is deprecated in newer NDKs and C11 atomics conformance doesn't build with NDK > 10. + subprocess.call(['git', 'clone', 'https://github.com/daewoong-jang/android-cmake']) args.android_cmake = os.path.join(args.src_dir,"android-cmake") else: exit() diff --git a/build_lnx.sh b/build_lnx.sh old mode 100644 new mode 100755 diff --git a/clean_tests.py b/clean_tests.py old mode 100644 new mode 100755 diff --git a/test_common/harness/compat.h b/test_common/harness/compat.h index b0d3cf75..23445c8e 100644 --- a/test_common/harness/compat.h +++ b/test_common/harness/compat.h @@ -207,7 +207,10 @@ long double roundl(long double x); int cf_signbit(double x); int cf_signbitf(float x); +// Added in _MSC_VER == 1800 (Visual Studio 2013) +#if _MSC_VER < 1800 static int signbit(double x) { return cf_signbit(x); } +#endif static int signbitf(float x) { return cf_signbitf(x); } long int lrint (double flt); @@ -241,8 +244,11 @@ int32_t float2int (float fx); // stdio.h // -#if defined( _MSC_VER ) - #define snprintf sprintf_s +#if defined(_MSC_VER) + // snprintf added in _MSC_VER == 1900 (Visual Studio 2015) + #if _MSC_VER < 1900 + #define snprintf sprintf_s + #endif #endif diff --git a/test_common/harness/imageHelpers.cpp b/test_common/harness/imageHelpers.cpp index 7fe7945c..cdb7028c 100644 --- a/test_common/harness/imageHelpers.cpp +++ b/test_common/harness/imageHelpers.cpp @@ -479,16 +479,6 @@ struct AddressingTable static AddressingTable sAddressingTable; -bool alpha_is_x(cl_image_format *format){ - switch (format->image_channel_order) { - case CL_RGBx: - case CL_sRGBx: - return true; - default: - return false; - } -} - bool is_sRGBA_order(cl_channel_order image_channel_order){ switch (image_channel_order) { case CL_sRGB: @@ -508,19 +498,21 @@ int has_alpha(cl_image_format *format) { case CL_R: return 0; case CL_A: - case CL_Rx: return 1; + case CL_Rx: + return 0; case CL_RG: return 0; case CL_RA: - case CL_RGx: return 1; + case CL_RGx: + return 0; case CL_RGB: case CL_sRGB: return 0; case CL_RGBx: case CL_sRGBx: - return 1; + return 0; case CL_RGBA: return 1; case CL_BGRA: @@ -719,13 +711,6 @@ void get_max_sizes(size_t *numberOfSizes, const int maxNumberOfSizes, } } -int issubnormal(float a) -{ - union { cl_int i; cl_float f; } u; - u.f = a; - return (u.i & 0x7f800000U) == 0; -} - float get_max_absolute_error( cl_image_format *format, image_sampler_data *sampler) { if (sampler->filter_mode == CL_FILTER_NEAREST) return 0.0f; @@ -1412,16 +1397,9 @@ void read_image_pixel_float( void *imageData, image_descriptor *imageInfo, || ( depth_lod != 0 && z >= (int)depth_lod ) || ( imageInfo->arraySize != 0 && z >= (int)imageInfo->arraySize ) ) { - // Border color - if (imageInfo->format->image_channel_order == CL_DEPTH) - { - outData[ 0 ] = 0; - } - else { outData[ 0 ] = outData[ 1 ] = outData[ 2 ] = outData[ 3 ] = 0; if (!has_alpha(imageInfo->format)) - outData[3] = alpha_is_x(imageInfo->format) ? 0 : 1; - } + outData[3] = 1; return; } diff --git a/test_common/harness/imageHelpers.h b/test_common/harness/imageHelpers.h index 83ff1377..ba80ea77 100644 --- a/test_common/harness/imageHelpers.h +++ b/test_common/harness/imageHelpers.h @@ -136,8 +136,6 @@ extern void copy_image_data( image_descriptor *srcImageInfo, image_descriptor *d int has_alpha(cl_image_format *format); -extern bool alpha_is_x(cl_image_format *format); - extern bool is_sRGBA_order(cl_channel_order image_channel_order); inline float calculate_array_index( float coord, float extent ); @@ -594,7 +592,6 @@ extern char *create_random_image_data( ExplicitType dataType, image_descriptor * extern void get_sampler_kernel_code( image_sampler_data *imageSampler, char *outLine ); extern float get_max_absolute_error( cl_image_format *format, image_sampler_data *sampler); extern float get_max_relative_error( cl_image_format *format, image_sampler_data *sampler, int is3D, int isLinearFilter ); -extern int issubnormal(float); #define errMax( _x , _y ) ( (_x) != (_x) ? (_x) : (_x) > (_y) ? (_x) : (_y) ) diff --git a/test_common/harness/kernelHelpers.c b/test_common/harness/kernelHelpers.c index 77c40571..ce7fd7fe 100644 --- a/test_common/harness/kernelHelpers.c +++ b/test_common/harness/kernelHelpers.c @@ -645,14 +645,14 @@ size_t get_pixel_bytes( const cl_image_format *fmt ) return 0; } -int verifyImageSupport( cl_device_id device ) +test_status verifyImageSupport( cl_device_id device ) { if( checkForImageSupport( device ) ) { log_error( "ERROR: Device does not supported images as required by this test!\n" ); - return CL_IMAGE_FORMAT_NOT_SUPPORTED; + return TEST_FAIL; } - return 0; + return TEST_PASS; } int checkForImageSupport( cl_device_id device ) diff --git a/test_common/harness/kernelHelpers.h b/test_common/harness/kernelHelpers.h index 692f17b3..9feaca87 100644 --- a/test_common/harness/kernelHelpers.h +++ b/test_common/harness/kernelHelpers.h @@ -17,6 +17,7 @@ #define _kernelHelpers_h #include "compat.h" +#include "testHarness.h" #include #include @@ -90,8 +91,8 @@ extern int is_image_format_supported( cl_context context, cl_mem_flags flags, cl /* Helper to get pixel size for a pixel format */ size_t get_pixel_bytes( const cl_image_format *fmt ); -/* Verify the given device supports images. 0 means you're good to go, otherwise an error */ -extern int verifyImageSupport( cl_device_id device ); +/* Verify the given device supports images. */ +extern test_status verifyImageSupport( cl_device_id device ); /* Checks that the given device supports images. Same as verify, but doesn't print an error */ extern int checkForImageSupport( cl_device_id device ); diff --git a/test_common/harness/msvc9.c b/test_common/harness/msvc9.c index 093bb978..3b168453 100644 --- a/test_common/harness/msvc9.c +++ b/test_common/harness/msvc9.c @@ -566,6 +566,7 @@ long int lrintf (float x) // /////////////////////////////////////////////////////////////////// +#if _MSC_VER < 1900 int fetestexcept(int excepts) { unsigned int status = _statusfp(); @@ -583,6 +584,7 @@ int feclearexcept(int excepts) _clearfp(); return 0; } +#endif #endif // __INTEL_COMPILER diff --git a/test_common/harness/parseParameters.cpp b/test_common/harness/parseParameters.cpp new file mode 100644 index 00000000..13e5c05d --- /dev/null +++ b/test_common/harness/parseParameters.cpp @@ -0,0 +1,42 @@ +// +// Copyright (c) 2017 The Khronos Group Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +#include "parseParameters.h" +#include "errorHelpers.h" +#include + +bool is_power_of_two(int number) +{ + return number && !(number & (number - 1)); +} + +extern void parseWimpyReductionFactor(const char *&arg, int &wimpyReductionFactor) +{ + const char *arg_temp = strchr(&arg[1], ']'); + if (arg_temp != 0) + { + int new_factor = atoi(&arg[1]); + arg = arg_temp; // Advance until ']' + if (is_power_of_two(new_factor)) + { + log_info("\n Wimpy reduction factor changed from %d to %d \n", wimpyReductionFactor, new_factor); + wimpyReductionFactor = new_factor; + } + else + { + log_info("\n WARNING: Incorrect wimpy reduction factor %d, must be power of 2. The default value will be used.\n", new_factor); + } + } +} diff --git a/test_common/harness/parseParameters.h b/test_common/harness/parseParameters.h new file mode 100644 index 00000000..212a9764 --- /dev/null +++ b/test_common/harness/parseParameters.h @@ -0,0 +1,24 @@ +// +// Copyright (c) 2017 The Khronos Group Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +#ifndef _parseParameters_h +#define _parseParameters_h + +#include "compat.h" +#include + +extern void parseWimpyReductionFactor(const char *&arg, int &wimpyReductionFactor); + +#endif // _parseParameters_h diff --git a/test_common/harness/testHarness.c b/test_common/harness/testHarness.c index c1b8bfa0..30358df9 100644 --- a/test_common/harness/testHarness.c +++ b/test_common/harness/testHarness.c @@ -135,7 +135,7 @@ int runTestHarnessWithCheck( int argc, const char *argv[], unsigned int num_fns, log_info( "\tid\t\tIndicates device at index should be used (default 0).\n" ); log_info( "\t\tcpu|gpu|accelerator| (default CL_DEVICE_TYPE_DEFAULT)\n" ); - for( i = 0; i < num_fns - 1; i++ ) + for( i = 0; i < num_fns; i++ ) { log_info( "\t\t%s\n", fnNames[ i ] ); } @@ -431,10 +431,18 @@ int runTestHarnessWithCheck( int argc, const char *argv[], unsigned int num_fns, /* If we have a device checking function, run it */ - if( ( deviceCheckFn != NULL ) && deviceCheckFn( device ) != CL_SUCCESS ) + if( ( deviceCheckFn != NULL ) ) { - test_finish(); - return -1; + test_status status = deviceCheckFn( device ); + switch (status) + { + case TEST_PASS: + break; + case TEST_FAIL: + return 1; + case TEST_SKIP: + return 0; + } } if (num_elements <= 0) diff --git a/test_common/harness/testHarness.h b/test_common/harness/testHarness.h index c2620647..7c1d9cb2 100644 --- a/test_common/harness/testHarness.h +++ b/test_common/harness/testHarness.h @@ -23,6 +23,13 @@ extern "C" { #endif +typedef enum test_status +{ + TEST_PASS = 0, + TEST_FAIL = 1, + TEST_SKIP = 2, +} test_status; + extern cl_uint gReSeed; extern cl_uint gRandomSeed; @@ -32,8 +39,8 @@ extern int runTestHarness( int argc, const char *argv[], unsigned int num_fns, basefn fnList[], const char *fnNames[], int imageSupportRequired, int forceNoContextCreation, cl_command_queue_properties queueProps ); -// Device checking function. See runTestHarnessWithCheck. If this function returns anything other than CL_SUCCESS (0), the harness exits. -typedef int (*DeviceCheckFn)( cl_device_id device ); +// Device checking function. See runTestHarnessWithCheck. If this function returns anything other than TEST_PASS, the harness exits. +typedef test_status (*DeviceCheckFn)( cl_device_id device ); // Same as runTestHarness, but also supplies a function that checks the created device for required functionality. extern int runTestHarnessWithCheck( int argc, const char *argv[], unsigned int num_fns, diff --git a/test_conformance/SVM/CMakeLists.txt b/test_conformance/SVM/CMakeLists.txt index 62a3b62c..694bcc2a 100644 --- a/test_conformance/SVM/CMakeLists.txt +++ b/test_conformance/SVM/CMakeLists.txt @@ -1,3 +1,4 @@ +set(CMAKE_CXX_STANDARD 11) set(MODULE_NAME SVM) set(${MODULE_NAME}_SOURCES diff --git a/test_conformance/SVM/main.cpp b/test_conformance/SVM/main.cpp index 209b1ed2..8ab0c392 100644 --- a/test_conformance/SVM/main.cpp +++ b/test_conformance/SVM/main.cpp @@ -226,7 +226,7 @@ cl_int create_cl_objects(cl_device_id device_from_harness, const char** ppCodeSt } error = clGetDeviceInfo(devices[i], CL_DEVICE_SVM_CAPABILITIES, sizeof(cl_device_svm_capabilities), &caps, NULL); - test_error(error,"clGetDeviceInfo failed for CL_DEVICE_MEM_SHARING"); + test_error(error,"clGetDeviceInfo failed for CL_DEVICE_SVM_CAPABILITIES"); if(caps & (~(CL_DEVICE_SVM_COARSE_GRAIN_BUFFER | CL_DEVICE_SVM_FINE_GRAIN_BUFFER | CL_DEVICE_SVM_FINE_GRAIN_SYSTEM | CL_DEVICE_SVM_ATOMICS))) { log_error("clGetDeviceInfo returned an invalid cl_device_svm_capabilities value"); diff --git a/test_conformance/SVM/test_allocate_shared_buffer.cpp b/test_conformance/SVM/test_allocate_shared_buffer.cpp index 7d555c8d..14262cb7 100644 --- a/test_conformance/SVM/test_allocate_shared_buffer.cpp +++ b/test_conformance/SVM/test_allocate_shared_buffer.cpp @@ -97,6 +97,10 @@ int test_allocate_shared_buffer(cl_device_id deviceID, cl_context context2, cl_c log_error("SVM pointer returned by clEnqueueMapBuffer doesn't match pointer returned by clSVMalloc"); return -1; } + err = clEnqueueUnmapMemObject(queues[0], buf, pBufData2, 0, NULL, NULL); + test_error(err, "clEnqueueUnmapMemObject failed"); + err = clFinish(queues[0]); + test_error(err, "clFinish failed"); } } diff --git a/test_conformance/SVM/test_enqueue_api.cpp b/test_conformance/SVM/test_enqueue_api.cpp index 6a04e955..f92872d6 100644 --- a/test_conformance/SVM/test_enqueue_api.cpp +++ b/test_conformance/SVM/test_enqueue_api.cpp @@ -17,10 +17,15 @@ #include "../../test_common/harness/mt19937.h" #include +#include + +#if !defined(_WIN32) +#include +#endif typedef struct { - cl_uint status; + std::atomic status; cl_uint num_svm_pointers; std::vector svm_pointers; } CallbackData; @@ -62,7 +67,7 @@ void CL_CALLBACK callback_svm_free(cl_command_queue queue, cl_uint num_svm_point clSVMFree(context, svm_pointers[i]); } - data->status = 1; + data->status.store(1, std::memory_order_release); } int test_enqueue_api(cl_device_id deviceID, cl_context c, cl_command_queue queue, int num_elements) @@ -231,7 +236,9 @@ int test_enqueue_api(cl_device_id deviceID, cl_context c, cl_command_queue queue test_error(error, "clFinish failed"); //wait for the callback - while(data.status == 0) { } + while(data.status.load(std::memory_order_acquire) == 0) { + usleep(1); + } //check if number of SVM pointers returned in the callback matches with expected if (data.num_svm_pointers != buffers.size()) diff --git a/test_conformance/api/test_api_min_max.c b/test_conformance/api/test_api_min_max.c index 36046751..ab3f10ca 100644 --- a/test_conformance/api/test_api_min_max.c +++ b/test_conformance/api/test_api_min_max.c @@ -1303,7 +1303,6 @@ int test_min_max_constant_buffer_size(cl_device_id deviceID, cl_context context, int error; clProgramWrapper program; clKernelWrapper kernel; - clMemWrapper streams[3]; size_t threads[1], localThreads[1]; cl_int *constantData, *resultData; cl_ulong maxSize, stepSize, currentSize, maxGlobalSize, maxAllocSize; @@ -1324,12 +1323,12 @@ int test_min_max_constant_buffer_size(cl_device_id deviceID, cl_context context, log_info("Reported max constant buffer size of %lld bytes.\n", maxSize); - // Limit test buffer size to 1/4 of CL_DEVICE_GLOBAL_MEM_SIZE + // Limit test buffer size to 1/8 of CL_DEVICE_GLOBAL_MEM_SIZE error = clGetDeviceInfo(deviceID, CL_DEVICE_GLOBAL_MEM_SIZE, sizeof(maxGlobalSize), &maxGlobalSize, 0); test_error(error, "Unable to get CL_DEVICE_GLOBAL_MEM_SIZE"); - if (maxSize > maxGlobalSize / 4) - maxSize = maxGlobalSize / 4; + if (maxSize > maxGlobalSize / 8) + maxSize = maxGlobalSize / 8; error = clGetDeviceInfo(deviceID, CL_DEVICE_MAX_MEM_ALLOC_SIZE , sizeof(maxAllocSize), &maxAllocSize, 0); test_error(error, "Unable to get CL_DEVICE_MAX_MEM_ALLOC_SIZE "); @@ -1358,6 +1357,7 @@ int test_min_max_constant_buffer_size(cl_device_id deviceID, cl_context context, for(i=0; i<(int)(numberOfInts); i++) constantData[i] = (int)genrand_int32(d); + clMemWrapper streams[3]; streams[0] = clCreateBuffer(context, (cl_mem_flags)(CL_MEM_COPY_HOST_PTR), sizeToAllocate, constantData, &error); test_error( error, "Creating test array failed" ); streams[1] = clCreateBuffer(context, (cl_mem_flags)(CL_MEM_READ_WRITE), sizeToAllocate, NULL, &error); @@ -1427,7 +1427,7 @@ int test_min_max_constant_buffer_size(cl_device_id deviceID, cl_context context, if (allocPassed) { if (currentSize < maxSize/PASSING_FRACTION) { - log_error("Failed to allocate at least 1/4 of the reported constant size.\n"); + log_error("Failed to allocate at least 1/8 of the reported constant size.\n"); return -1; } else if (currentSize != maxSize) { log_info("Passed at reduced size. (%lld of %lld bytes)\n", currentSize, maxSize); diff --git a/test_conformance/basic/run_array b/test_conformance/basic/run_array old mode 100644 new mode 100755 diff --git a/test_conformance/basic/run_array_image_copy b/test_conformance/basic/run_array_image_copy old mode 100644 new mode 100755 diff --git a/test_conformance/basic/run_image b/test_conformance/basic/run_image old mode 100644 new mode 100755 diff --git a/test_conformance/basic/run_multi_read_image b/test_conformance/basic/run_multi_read_image old mode 100644 new mode 100755 diff --git a/test_conformance/basic/test_async_strided_copy.cpp b/test_conformance/basic/test_async_strided_copy.cpp index ec65101d..ca657787 100644 --- a/test_conformance/basic/test_async_strided_copy.cpp +++ b/test_conformance/basic/test_async_strided_copy.cpp @@ -209,14 +209,13 @@ int test_strided_copy(cl_device_id deviceID, cl_context context, cl_command_queu log_error( "ERROR: Results of copy did not validate!\n" ); sprintf(values + strlen( values), "%d -> [", i); for (int j=0; j<(int)elementSize; j++) - sprintf(values + strlen( values), "%2x ", inchar[i*elementSize+j]); + sprintf(values + strlen( values), "%2x ", inchar[j]); sprintf(values + strlen(values), "] != ["); for (int j=0; j<(int)elementSize; j++) - sprintf(values + strlen( values), "%2x ", outchar[i*elementSize+j]); + sprintf(values + strlen( values), "%2x ", outchar[j]); sprintf(values + strlen(values), "]"); log_error("%s\n", values); - - return -1; + return -1; } } diff --git a/test_conformance/basic/test_progvar.cpp b/test_conformance/basic/test_progvar.cpp index 9a3eb99c..243d2361 100644 --- a/test_conformance/basic/test_progvar.cpp +++ b/test_conformance/basic/test_progvar.cpp @@ -872,12 +872,14 @@ static int l_write_read_for_type( cl_device_id device, cl_context context, cl_co // We need to create 5 random values of the given type, // and read 4 of them back. - cl_uchar CL_ALIGNED(ALIGNMENT) write_data[NUM_TESTED_VALUES * sizeof(cl_ulong16)]; - cl_uchar CL_ALIGNED(ALIGNMENT) read_data[ (NUM_TESTED_VALUES-1) * sizeof(cl_ulong16)]; + const size_t write_data_size = NUM_TESTED_VALUES * sizeof(cl_ulong16); + const size_t read_data_size = (NUM_TESTED_VALUES - 1) * sizeof(cl_ulong16); + cl_uchar* write_data = (cl_uchar*)align_malloc(write_data_size, ALIGNMENT); + cl_uchar* read_data = (cl_uchar*)align_malloc(read_data_size, ALIGNMENT); - clMemWrapper write_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(write_data), write_data, &status ) ); + clMemWrapper write_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, write_data_size, write_data, &status ) ); test_error_ret(status,"Failed to allocate write buffer",status); - clMemWrapper read_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(read_data), read_data, &status ) ); + clMemWrapper read_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, read_data_size, read_data, &status ) ); test_error_ret(status,"Failed to allocate read buffer",status); status = clSetKernelArg(writer,0,sizeof(cl_mem),&write_mem); test_error_ret(status,"set arg",status); @@ -892,7 +894,7 @@ static int l_write_read_for_type( cl_device_id device, cl_context context, cl_co // Generate new random data to push through. // Generate 5 * 128 bytes all the time, even though the test for many types use less than all that. - cl_uchar *write_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, write_mem, CL_TRUE, CL_MAP_WRITE, 0, sizeof(write_data), 0, 0, 0, 0); + cl_uchar *write_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, write_mem, CL_TRUE, CL_MAP_WRITE, 0, write_data_size, 0, 0, 0, 0); if ( ti.is_bool() ) { // For boolean, random data cast to bool isn't very random. @@ -904,7 +906,7 @@ static int l_write_read_for_type( cl_device_id device, cl_context context, cl_co } bool_iter++; } else { - l_set_randomly( write_data, sizeof(write_data), rand_state ); + l_set_randomly( write_data, write_data_size, rand_state ); } status = clSetKernelArg(writer,1,sizeof(cl_uint),&iptr_idx); test_error_ret(status,"set arg",status); @@ -913,7 +915,7 @@ static int l_write_read_for_type( cl_device_id device, cl_context context, cl_co status = clSetKernelArg(reader,1,ti.get_size(),write_data + (NUM_TESTED_VALUES-1)*ti.get_size()); test_error_ret(status,"set arg",status); // Determine the expected values. - cl_uchar expected[ (NUM_TESTED_VALUES-1) * sizeof(cl_ulong16)]; + cl_uchar expected[read_data_size]; memset( expected, -1, sizeof(expected) ); l_copy( expected, 0, write_data, 0, ti ); l_copy( expected, 1, write_data, 1, ti ); @@ -930,8 +932,8 @@ static int l_write_read_for_type( cl_device_id device, cl_context context, cl_co for ( unsigned i = 0; i < NUM_TESTED_VALUES-1 ; i++ ) expected[i] = (bool)expected[i]; } - cl_uchar *read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(read_data), 0, 0, 0, 0); - memset( read_data, -1, sizeof(read_data) ); + cl_uchar *read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, read_data_size, 0, 0, 0, 0); + memset(read_data, -1, read_data_size); clEnqueueUnmapMemObject(queue, read_mem, read_ptr, 0, 0, 0); // Now run the kernel @@ -940,7 +942,7 @@ static int l_write_read_for_type( cl_device_id device, cl_context context, cl_co status = clEnqueueNDRangeKernel(queue,reader,1,0,&one,0,0,0,0); test_error_ret(status,"enqueue reader",status); status = clFinish(queue); test_error_ret(status,"finish",status); - read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(read_data), 0, 0, 0, 0); + read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, read_data_size, 0, 0, 0, 0); if ( ti.is_bool() ) { // Collapse down to one bit. @@ -959,7 +961,8 @@ static int l_write_read_for_type( cl_device_id device, cl_context context, cl_co } if ( CL_SUCCESS == err ) { log_info("OK\n"); FLUSH; } - + align_free(write_data); + align_free(read_data); return err; } @@ -1018,12 +1021,14 @@ static int l_init_write_read_for_type( cl_device_id device, cl_context context, // We need to create 5 random values of the given type, // and read 4 of them back. - cl_uchar CL_ALIGNED(ALIGNMENT) write_data[NUM_TESTED_VALUES * sizeof(cl_ulong16)]; - cl_uchar CL_ALIGNED(ALIGNMENT) read_data[ (NUM_TESTED_VALUES-1) * sizeof(cl_ulong16)]; + const size_t write_data_size = NUM_TESTED_VALUES * sizeof(cl_ulong16); + const size_t read_data_size = (NUM_TESTED_VALUES-1) * sizeof(cl_ulong16); - clMemWrapper write_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(write_data), write_data, &status ) ); + cl_uchar* write_data = (cl_uchar*)align_malloc(write_data_size, ALIGNMENT); + cl_uchar* read_data = (cl_uchar*)align_malloc(read_data_size, ALIGNMENT); + clMemWrapper write_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, write_data_size, write_data, &status ) ); test_error_ret(status,"Failed to allocate write buffer",status); - clMemWrapper read_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(read_data), read_data, &status ) ); + clMemWrapper read_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, read_data_size, read_data, &status ) ); test_error_ret(status,"Failed to allocate read buffer",status); status = clSetKernelArg(writer,0,sizeof(cl_mem),&write_mem); test_error_ret(status,"set arg",status); @@ -1043,7 +1048,7 @@ static int l_init_write_read_for_type( cl_device_id device, cl_context context, // Generate new random data to push through. // Generate 5 * 128 bytes all the time, even though the test for many types use less than all that. - cl_uchar *write_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, write_mem, CL_TRUE, CL_MAP_WRITE, 0, sizeof(write_data), 0, 0, 0, 0); + cl_uchar *write_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, write_mem, CL_TRUE, CL_MAP_WRITE, 0, write_data_size, 0, 0, 0, 0); if ( ti.is_bool() ) { // For boolean, random data cast to bool isn't very random. @@ -1055,7 +1060,7 @@ static int l_init_write_read_for_type( cl_device_id device, cl_context context, } bool_iter++; } else { - l_set_randomly( write_data, sizeof(write_data), rand_state ); + l_set_randomly( write_data, write_data_size, rand_state ); } status = clSetKernelArg(writer,1,sizeof(cl_uint),&iptr_idx); test_error_ret(status,"set arg",status); @@ -1071,7 +1076,7 @@ static int l_init_write_read_for_type( cl_device_id device, cl_context context, status = clSetKernelArg(reader,1,ti.get_size(),write_data + (NUM_TESTED_VALUES-1)*ti.get_size()); test_error_ret(status,"set arg",status); // Determine the expected values. - cl_uchar expected[ (NUM_TESTED_VALUES-1) * sizeof(cl_ulong16)]; + cl_uchar expected[read_data_size]; memset( expected, -1, sizeof(expected) ); if ( iteration ) { l_copy( expected, 0, write_data, 0, ti ); @@ -1102,8 +1107,8 @@ static int l_init_write_read_for_type( cl_device_id device, cl_context context, clEnqueueUnmapMemObject(queue, write_mem, write_ptr, 0, 0, 0); - cl_uchar *read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(read_data), 0, 0, 0, 0); - memset( read_data, -1, sizeof(read_data) ); + cl_uchar *read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, read_data_size, 0, 0, 0, 0); + memset( read_data, -1, read_data_size ); clEnqueueUnmapMemObject(queue, read_mem, read_ptr, 0, 0, 0); // Now run the kernel @@ -1117,7 +1122,7 @@ static int l_init_write_read_for_type( cl_device_id device, cl_context context, status = clEnqueueNDRangeKernel(queue,reader,1,0,&one,0,0,0,0); test_error_ret(status,"enqueue reader",status); status = clFinish(queue); test_error_ret(status,"finish",status); - read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(read_data), 0, 0, 0, 0); + read_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, read_mem, CL_TRUE, CL_MAP_READ, 0, read_data_size, 0, 0, 0, 0); if ( ti.is_bool() ) { // Collapse down to one bit. @@ -1139,6 +1144,8 @@ static int l_init_write_read_for_type( cl_device_id device, cl_context context, } if ( CL_SUCCESS == err ) { log_info("OK\n"); FLUSH; } + align_free(write_data); + align_free(read_data); return err; } @@ -1352,6 +1359,13 @@ static int l_user_type( cl_device_id device, cl_context context, cl_command_queu print_build_log(program, 1, &device, ksrc.num_str(), ksrc.strs(), ksrc.lengths(), OPTIONS); return status; } + + status = clBuildProgram(program, 1, &device, OPTIONS, 0, 0); + if(check_error(status, "Failed to compile program for user type test (%s)", IGetErrorString(status))) + { + print_build_log(program, 1, &device, ksrc.num_str(), ksrc.strs(), ksrc.lengths(), OPTIONS); + return status; + } } @@ -1372,12 +1386,12 @@ static int l_user_type( cl_device_id device, cl_context context, cl_command_queu test_error_ret(status,"Failed to create reader kernel for user type test",status); // Set up data. - cl_uchar CL_ALIGNED(ALIGNMENT) uchar_data; - cl_uint CL_ALIGNED(ALIGNMENT) uint_data; + cl_uchar* uchar_data = (cl_uchar*)align_malloc(sizeof(cl_uchar), ALIGNMENT); + cl_uint* uint_data = (cl_uint*)align_malloc(sizeof(cl_uint), ALIGNMENT); - clMemWrapper uchar_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(uchar_data), &uchar_data, &status ) ); + clMemWrapper uchar_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(cl_uchar), uchar_data, &status ) ); test_error_ret(status,"Failed to allocate uchar buffer",status); - clMemWrapper uint_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(uint_data), &uint_data, &status ) ); + clMemWrapper uint_mem( clCreateBuffer( context, CL_MEM_USE_HOST_PTR, sizeof(cl_uint), uint_data, &status ) ); test_error_ret(status,"Failed to allocate uint buffer",status); status = clSetKernelArg(reader,0,sizeof(cl_mem),&uchar_mem); test_error_ret(status,"set arg",status); @@ -1387,18 +1401,18 @@ static int l_user_type( cl_device_id device, cl_context context, cl_command_queu cl_uint expected_uint = 42; for ( unsigned iter = 0; iter < 5 ; iter++ ) { // Must go around at least twice // Read back data - uchar_data = -1; - uint_data = -1; + *uchar_data = -1; + *uint_data = -1; const size_t one = 1; status = clEnqueueNDRangeKernel(queue,reader,1,0,&one,0,0,0,0); test_error_ret(status,"enqueue reader",status); status = clFinish(queue); test_error_ret(status,"finish",status); - cl_uchar *uint_data_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, uint_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(uint_data), 0, 0, 0, 0); - cl_uchar *uchar_data_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, uchar_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(uchar_data), 0, 0, 0, 0); + cl_uchar *uint_data_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, uint_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(cl_uint), 0, 0, 0, 0); + cl_uchar *uchar_data_ptr = (cl_uchar *)clEnqueueMapBuffer(queue, uchar_mem, CL_TRUE, CL_MAP_READ, 0, sizeof(cl_uchar), 0, 0, 0, 0); - if ( expected_uchar != uchar_data || expected_uint != uint_data ) { + if ( expected_uchar != *uchar_data || expected_uint != *uint_data ) { log_error("FAILED: Iteration %d Got (0x%2x,%d) but expected (0x%2x,%d)\n", - iter, (int)uchar_data, uint_data, (int)expected_uchar, expected_uint ); + iter, (int)*uchar_data, *uint_data, (int)expected_uchar, expected_uint ); err |= 1; } @@ -1410,16 +1424,17 @@ static int l_user_type( cl_device_id device, cl_context context, cl_command_queu expected_uint++; // Write the new values into persistent store. - uchar_data = expected_uchar; - uint_data = expected_uint; - status = clSetKernelArg(writer,0,sizeof(uchar_data),&uchar_data); test_error_ret(status,"set arg",status); - status = clSetKernelArg(writer,1,sizeof(uint_data),&uint_data); test_error_ret(status,"set arg",status); + *uchar_data = expected_uchar; + *uint_data = expected_uint; + status = clSetKernelArg(writer,0,sizeof(cl_uchar),uchar_data); test_error_ret(status,"set arg",status); + status = clSetKernelArg(writer,1,sizeof(cl_uint),uint_data); test_error_ret(status,"set arg",status); status = clEnqueueNDRangeKernel(queue,writer,1,0,&one,0,0,0,0); test_error_ret(status,"enqueue writer",status); status = clFinish(queue); test_error_ret(status,"finish",status); } if ( CL_SUCCESS == err ) { log_info("OK\n"); FLUSH; } - + align_free(uchar_data); + align_free(uint_data); return err; } diff --git a/test_conformance/c11_atomics/test_atomics.cpp b/test_conformance/c11_atomics/test_atomics.cpp index 72c88b19..5ca7f6ca 100644 --- a/test_conformance/c11_atomics/test_atomics.cpp +++ b/test_conformance/c11_atomics/test_atomics.cpp @@ -1566,6 +1566,7 @@ public: using CBasicTestMemOrderScope::MemoryOrder; using CBasicTestMemOrderScope::MemoryScopeStr; using CBasicTestMemOrderScope::MemoryOrderScopeStr; + using CBasicTestMemOrderScope::UseSVM; using CBasicTestMemOrderScope::LocalMemory; CBasicTestFlag(TExplicitAtomicType dataType, bool useSVM) : CBasicTestMemOrderScope(dataType, useSVM) { @@ -1606,7 +1607,7 @@ public: program += " atomic_work_item_fence(" + std::string(LocalMemory() ? "CLK_LOCAL_MEM_FENCE, " : "CLK_GLOBAL_MEM_FENCE, ") + "memory_order_acquire," + - std::string(LocalMemory() ? "memory_scope_work_group" : "memory_scope_device") + + std::string(LocalMemory() ? "memory_scope_work_group" : (UseSVM() ? "memory_scope_all_svm_devices" : "memory_scope_device") ) + ");\n"; program += @@ -1632,7 +1633,7 @@ public: program += " atomic_work_item_fence(" + std::string(LocalMemory() ? "CLK_LOCAL_MEM_FENCE, " : "CLK_GLOBAL_MEM_FENCE, ") + "memory_order_release," + - std::string(LocalMemory() ? "memory_scope_work_group" : "memory_scope_device") + + std::string(LocalMemory() ? "memory_scope_work_group" : (UseSVM() ? "memory_scope_all_svm_devices" : "memory_scope_device") ) + ");\n"; program += diff --git a/test_conformance/compatibility/test_common/harness/compat.h b/test_conformance/compatibility/test_common/harness/compat.h index f69c8886..d177f87a 100644 --- a/test_conformance/compatibility/test_common/harness/compat.h +++ b/test_conformance/compatibility/test_common/harness/compat.h @@ -13,32 +13,63 @@ // See the License for the specific language governing permissions and // limitations under the License. // +/* + Header compat.h should be used instead of stdlib.h, stdbool.h, stdint.h, float.h, fenv.h, + math.h. It provides workarounds if these headers are not available or not complete. + + Important: It should be included before math.h, directly or indirectly, because Intel mathimf.h + is not compatible with Microsoft math.h. Including math.h before mathimf.h causes compile-time + error. +*/ #ifndef _COMPAT_H_ #define _COMPAT_H_ #if defined(_WIN32) && defined (_MSC_VER) - #include -#include -#include -#include -#include -#include - -#define MAKE_HEX_FLOAT(x,y,z) ((float)ldexp( (float)(y), z)) -#define MAKE_HEX_DOUBLE(x,y,z) ldexp( (double)(y), z) -#define MAKE_HEX_LONG(x,y,z) ((long double) ldexp( (long double)(y), z)) - -#define isfinite(x) _finite(x) - -#if !defined(__cplusplus) -typedef char bool; -#define inline - -#else -extern "C" { #endif +#ifdef __cplusplus + #define EXTERN_C extern "C" +#else + #define EXTERN_C +#endif + + +// +// stdlib.h +// + +#include // On Windows, _MAX_PATH defined there. + +// llabs appeared in MS C v16 (VS 10/2010). +#if defined( _MSC_VER ) && _MSC_VER <= 1500 + EXTERN_C inline long long llabs(long long __x) { return __x >= 0 ? __x : -__x; } +#endif + + +// +// stdbool.h +// + +// stdbool.h appeared in MS C v18 (VS 12/2013). +#if defined( _MSC_VER ) && MSC_VER <= 1700 +#if !defined(__cplusplus) +typedef char bool; + #define true 1 + #define false 0 + #endif +#else + #include +#endif + + + +// +// stdint.h +// + +// stdint.h appeared in MS C v16 (VS 10/2010) and Intel C v12. +#if defined( _MSC_VER ) && ( ! defined( __INTEL_COMPILER ) && _MSC_VER <= 1500 || defined( __INTEL_COMPILER ) && __INTEL_COMPILER < 1200 ) typedef unsigned char uint8_t; typedef char int8_t; typedef unsigned short uint16_t; @@ -47,25 +78,83 @@ typedef unsigned int uint32_t; typedef int int32_t; typedef unsigned long long uint64_t; typedef long long int64_t; - -#define MAXPATHLEN MAX_PATH - -typedef unsigned short ushort; -typedef unsigned int uint; -typedef unsigned long ulong; +#else +#ifndef __STDC_LIMIT_MACROS +#define __STDC_LIMIT_MACROS +#endif + #include +#endif -#define INFINITY (FLT_MAX + FLT_MAX) -//#define NAN (INFINITY | 1) -//const static int PINFBITPATT_SP32 = INFINITY; + +// +// float.h +// + +#include + + + +// +// fenv.h +// + +// fenv.h appeared in MS C v18 (VS 12/2013). +#if defined( _MSC_VER ) && _MSC_VER <= 1700 && ! defined( __INTEL_COMPILER ) + // reimplement fenv.h because windows doesn't have it + #define FE_INEXACT 0x0020 + #define FE_UNDERFLOW 0x0010 + #define FE_OVERFLOW 0x0008 + #define FE_DIVBYZERO 0x0004 + #define FE_INVALID 0x0001 + #define FE_ALL_EXCEPT 0x003D + int fetestexcept(int excepts); + int feclearexcept(int excepts); +#else + #include +#endif + + +// +// math.h +// + +#if defined( __INTEL_COMPILER ) + #include +#else + #include +#endif + +#if defined( _MSC_VER ) + + #ifdef __cplusplus + extern "C" { + #endif #ifndef M_PI #define M_PI 3.14159265358979323846264338327950288 #endif + #if ! defined( __INTEL_COMPILER ) + #ifndef NAN + #define NAN (INFINITY - INFINITY) + #endif + #ifndef HUGE_VALF + #define HUGE_VALF (float)HUGE_VAL + #endif + #ifndef INFINITY + #define INFINITY (FLT_MAX + FLT_MAX) + #endif + #ifndef isfinite + #define isfinite(x) _finite(x) + #endif + #ifndef isnan #define isnan( x ) ((x) != (x)) + #endif + #ifndef isinf #define isinf( _x) ((_x) == INFINITY || (_x) == -INFINITY) + #endif double rint( double x); float rintf( float x); @@ -99,27 +188,6 @@ long double remquol( long double x, long double y, int *quo); long double scalblnl(long double x, long n); -inline long long -llabs(long long __x) { return __x >= 0 ? __x : -__x; } - - -// end of math functions - -uint64_t ReadTime( void ); -double SubtractTime( uint64_t endTime, uint64_t startTime ); - -#define sleep(X) Sleep(1000*X) -#define snprintf sprintf_s -//#define hypotl _hypot - -float make_nan(); -float nanf( const char* str); -double nan( const char* str); -long double nanl( const char* str); - -//#if defined USE_BOOST -//#include -//double hypot(double x, double y); float hypotf(float x, float y); long double hypotl(long double x, long double y) ; double lgamma(double x); @@ -144,67 +212,179 @@ double round(double x); float roundf(float x); long double roundl(long double x); -int signbit(double x); -int signbitf(float x); + int cf_signbit(double x); + int cf_signbitf(float x); -//bool signbitl(long double x) { return boost::math::tr1::signbit(x); } -//#endif // USE_BOOST + static int signbit(double x) { return cf_signbit(x); } + static int signbitf(float x) { return cf_signbitf(x); } long int lrint (double flt); long int lrintf (float flt); - float int2float (int32_t ix); int32_t float2int (float fx); + #endif + + #if ! defined( __INTEL_COMPILER ) || __INTEL_COMPILER < 1300 + // These functions appeared in Intel C v13. + float nanf( const char* str); + double nan( const char* str); + long double nanl( const char* str); + #endif + + #ifdef __cplusplus + } + #endif + +#endif + +#if defined( __ANDROID__ ) + #define log2(X) (log(X)/log(2)) +#endif + + + +// +// stdio.h +// + +#if defined( _MSC_VER ) + #define snprintf sprintf_s +#endif + + + +// +// unistd.h +// + +#if defined( _MSC_VER ) + EXTERN_C unsigned int sleep( unsigned int sec ); + EXTERN_C int usleep( int usec ); +#endif + + + +// +// syscall.h +// + +#if defined( __ANDROID__ ) + // Android bionic's isn't providing SYS_sysctl wrappers. + #define SYS__sysctl __NR__sysctl +#endif + + + +// Some tests use _malloca which defined in malloc.h. +#if !defined (__APPLE__) +#include +#endif + + +// +// ??? +// + +#if defined( _MSC_VER ) + + #define MAXPATHLEN _MAX_PATH + + EXTERN_C uint64_t ReadTime( void ); + EXTERN_C double SubtractTime( uint64_t endTime, uint64_t startTime ); + /** Returns the number of leading 0-bits in x, starting at the most significant bit position. If x is 0, the result is undefined. */ -int __builtin_clz(unsigned int pattern); - - -static const double zero= 0.00000000000000000000e+00; -#define NAN (INFINITY - INFINITY) -#define HUGE_VALF (float)HUGE_VAL - -int usleep(int usec); - -// reimplement fenv.h because windows doesn't have it -#define FE_INEXACT 0x0020 -#define FE_UNDERFLOW 0x0010 -#define FE_OVERFLOW 0x0008 -#define FE_DIVBYZERO 0x0004 -#define FE_INVALID 0x0001 -#define FE_ALL_EXCEPT 0x003D - -int fetestexcept(int excepts); -int feclearexcept(int excepts); - -#ifdef __cplusplus -} -#endif - -#else // !((defined(_WIN32) && defined(_MSC_VER) -#if defined(__MINGW32__) -#include -#define sleep(X) Sleep(1000*X) + EXTERN_C int __builtin_clz(unsigned int pattern); #endif -#if defined(__linux__) || defined(__MINGW32__) || defined(__APPLE__) -#ifndef __STDC_LIMIT_MACROS -#define __STDC_LIMIT_MACROS + +#ifndef MIN + #define MIN(x,y) (((x)<(y))?(x):(y)) #endif -#include -#include -#include -#include +#ifndef MAX + #define MAX(x,y) (((x)>(y))?(x):(y)) #endif + + +/* + ------------------------------------------------------------------------------------------------ + WARNING: DO NOT USE THESE MACROS: MAKE_HEX_FLOAT, MAKE_HEX_DOUBLE, MAKE_HEX_LONG. + + This is a typical usage of the macros: + + double yhi = MAKE_HEX_DOUBLE(0x1.5555555555555p-2,0x15555555555555LL,-2); + + (taken from math_brute_force/reference_math.c). There are two problems: + + 1. There is an error here. On Windows in will produce incorrect result + `0x1.5555555555555p+50'. To have a correct result it should be written as + `MAKE_HEX_DOUBLE(0x1.5555555555555p-2,0x15555555555555LL,-54)'. A proper value of the + third argument is not obvious -- sometimes it should be the same as exponent of the + first argument, but sometimes not. + + 2. Information is duplicated. It is easy to make a mistake. + + Use HEX_FLT, HEX_DBL, HEX_LDBL macros instead (see them in the bottom of the file). + ------------------------------------------------------------------------------------------------ +*/ +#if defined ( _MSC_VER ) && ! defined( __INTEL_COMPILER ) + + #define MAKE_HEX_FLOAT(x,y,z) ((float)ldexp( (float)(y), z)) + #define MAKE_HEX_DOUBLE(x,y,z) ldexp( (double)(y), z) + #define MAKE_HEX_LONG(x,y,z) ((long double) ldexp( (long double)(y), z)) + +#else + +// Do not use these macros in new code, use HEX_FLT, HEX_DBL, HEX_LDBL instead. #define MAKE_HEX_FLOAT(x,y,z) x #define MAKE_HEX_DOUBLE(x,y,z) x #define MAKE_HEX_LONG(x,y,z) x -#endif // !((defined(_WIN32) && defined(_MSC_VER) +#endif +/* + ------------------------------------------------------------------------------------------------ + HEX_FLT, HEXT_DBL, HEX_LDBL -- Create hex floating point literal of type float, double, long + double respectively. Arguments: + + sm -- sign of number, + int -- integer part of mantissa (without `0x' prefix), + fract -- fractional part of mantissa (without decimal point and `L' or `LL' suffixes), + se -- sign of exponent, + exp -- absolute value of (binary) exponent. + + Example: + + double yhi = HEX_DBL( +, 1, 5555555555555, -, 2 ); // == 0x1.5555555555555p-2 + + Note: + + We have to pass signs as separate arguments because gcc pass negative integer values + (e. g. `-2') into a macro as two separate tokens, so `HEX_FLT( 1, 0, -2 )' produces result + `0x1.0p- 2' (note a space between minus and two) which is not a correct floating point + literal. + ------------------------------------------------------------------------------------------------ +*/ +#if defined ( _MSC_VER ) && ! defined( __INTEL_COMPILER ) + // If compiler does not support hex floating point literals: + #define HEX_FLT( sm, int, fract, se, exp ) sm ldexpf( (float)( 0x ## int ## fract ## UL ), se exp + ilogbf( (float) 0x ## int ) - ilogbf( ( float )( 0x ## int ## fract ## UL ) ) ) + #define HEX_DBL( sm, int, fract, se, exp ) sm ldexp( (double)( 0x ## int ## fract ## ULL ), se exp + ilogb( (double) 0x ## int ) - ilogb( ( double )( 0x ## int ## fract ## ULL ) ) ) + #define HEX_LDBL( sm, int, fract, se, exp ) sm ldexpl( (long double)( 0x ## int ## fract ## ULL ), se exp + ilogbl( (long double) 0x ## int ) - ilogbl( ( long double )( 0x ## int ## fract ## ULL ) ) ) +#else + // If compiler supports hex floating point literals: just concatenate all the parts into a literal. + #define HEX_FLT( sm, int, fract, se, exp ) sm 0x ## int ## . ## fract ## p ## se ## exp ## F + #define HEX_DBL( sm, int, fract, se, exp ) sm 0x ## int ## . ## fract ## p ## se ## exp + #define HEX_LDBL( sm, int, fract, se, exp ) sm 0x ## int ## . ## fract ## p ## se ## exp ## L +#endif + +#if defined(__MINGW32__) + #include + #define sleep(sec) Sleep((sec) * 1000) +#endif + #endif // _COMPAT_H_ diff --git a/test_conformance/compatibility/test_common/harness/kernelHelpers.c b/test_conformance/compatibility/test_common/harness/kernelHelpers.c index 3680c06e..42f41aa4 100644 --- a/test_conformance/compatibility/test_common/harness/kernelHelpers.c +++ b/test_conformance/compatibility/test_common/harness/kernelHelpers.c @@ -475,14 +475,14 @@ size_t get_pixel_bytes( const cl_image_format *fmt ) return 0; } -int verifyImageSupport( cl_device_id device ) +test_status verifyImageSupport( cl_device_id device ) { if( checkForImageSupport( device ) ) { log_error( "ERROR: Device does not supported images as required by this test!\n" ); - return CL_IMAGE_FORMAT_NOT_SUPPORTED; + return TEST_FAIL; } - return 0; + return TEST_PASS; } int checkForImageSupport( cl_device_id device ) diff --git a/test_conformance/compatibility/test_common/harness/kernelHelpers.h b/test_conformance/compatibility/test_common/harness/kernelHelpers.h index 59c01b5f..09515e28 100644 --- a/test_conformance/compatibility/test_common/harness/kernelHelpers.h +++ b/test_conformance/compatibility/test_common/harness/kernelHelpers.h @@ -17,6 +17,7 @@ #define _kernelHelpers_h #include "compat.h" +#include "testHarness.h" #include #include @@ -84,8 +85,8 @@ extern int is_image_format_supported( cl_context context, cl_mem_flags flags, cl /* Helper to get pixel size for a pixel format */ size_t get_pixel_bytes( const cl_image_format *fmt ); -/* Verify the given device supports images. 0 means you're good to go, otherwise an error */ -extern int verifyImageSupport( cl_device_id device ); +/* Verify the given device supports images. */ +extern test_status verifyImageSupport( cl_device_id device ); /* Checks that the given device supports images. Same as verify, but doesn't print an error */ extern int checkForImageSupport( cl_device_id device ); diff --git a/test_conformance/compatibility/test_common/harness/msvc9.c b/test_conformance/compatibility/test_common/harness/msvc9.c index 7d559bce..093bb978 100644 --- a/test_conformance/compatibility/test_common/harness/msvc9.c +++ b/test_conformance/compatibility/test_common/harness/msvc9.c @@ -13,15 +13,18 @@ // See the License for the specific language governing permissions and // limitations under the License. // -#if defined(_WIN32) && defined (_MSC_VER) - #include "compat.h" -#include -#include -#include -#include +#if defined ( _MSC_VER ) +#include +#include + +#include + +#include + +#if ! defined( __INTEL_COMPILER ) /////////////////////////////////////////////////////////////////// // @@ -387,86 +390,6 @@ long double log2l(long double x) return 1.44269504088896340735992468100189214L * log(x); } -/////////////////////////////////////////////////////////////////// -// -// misc functions -// -/////////////////////////////////////////////////////////////////// - -/* -// This function is commented out because the Windows implementation should never call munmap. -// If it is calling it, we have a bug. Please file a bugzilla. -int munmap(void *addr, size_t len) -{ -// FIXME: this is not correct. munmap is like free() http://www.opengroup.org/onlinepubs/7990989775/xsh/munmap.html - - return (int)VirtualAlloc( (LPVOID)addr, len, - MEM_COMMIT|MEM_RESERVE, PAGE_NOACCESS ); -} -*/ - -uint64_t ReadTime( void ) -{ - LARGE_INTEGER current; - QueryPerformanceCounter(¤t); - return (uint64_t)current.QuadPart; -} - -double SubtractTime( uint64_t endTime, uint64_t startTime ) -{ - static double PerformanceFrequency = 0.0; - - if (PerformanceFrequency == 0.0) { - LARGE_INTEGER frequency; - QueryPerformanceFrequency(&frequency); - PerformanceFrequency = (double) frequency.QuadPart; - } - - return (double)(endTime - startTime) / PerformanceFrequency * 1e9; -} - -float make_nan() -{ -/* This is the IEEE 754 single-precision format: - unsigned int mantissa: 22; - unsigned int quiet_nan: 1; - unsigned int exponent: 8; - unsigned int negative: 1; -*/ - //const static unsigned - static const int32_t _nan = 0x7fc00000; - return *(const float*)(&_nan); -} - -float nanf( const char* str) -{ - cl_uint u = atoi( str ); - u |= 0x7fc00000U; - return *( float*)(&u); -} - - -double nan( const char* str) -{ - cl_ulong u = atoi( str ); - u |= 0x7ff8000000000000ULL; - return *( double*)(&u); -} - -// double check this implementatation -long double nanl( const char* str) -{ - union - { - long double f; - struct { cl_ulong m; cl_ushort sexp; }u; - }u; - u.u.sexp = 0x7fff; - u.u.m = 0x8000000000000000ULL | atoi( str ); - - return u.f; -} - double trunc(double x) { double absx = fabs(x); @@ -589,7 +512,165 @@ long double roundl(long double x) return x; } -int signbit(double x) +float cbrtf( float x ) +{ + float z = pow( fabs((double) x), 1.0 / 3.0 ); + return copysignf( z, x ); +} + +double cbrt( double x ) +{ + return copysign( pow( fabs( x ), 1.0 / 3.0 ), x ); +} + +long int lrint (double x) +{ + double absx = fabs(x); + + if( x >= (double) LONG_MAX ) + return LONG_MAX; + + if( absx < 4503599627370496.0 /* 0x1.0p52 */ ) + { + double magic = copysign( 4503599627370496.0 /* 0x1.0p52 */, x ); + double rounded = x + magic; + rounded -= magic; + return (long int) rounded; + } + + return (long int) x; +} + +long int lrintf (float x) +{ + float absx = fabsf(x); + + if( x >= (float) LONG_MAX ) + return LONG_MAX; + + if( absx < 8388608.0f /* 0x1.0p23f */ ) + { + float magic = copysignf( 8388608.0f /* 0x1.0p23f */, x ); + float rounded = x + magic; + rounded -= magic; + return (long int) rounded; + } + + return (long int) x; +} + + +/////////////////////////////////////////////////////////////////// +// +// fenv functions +// +/////////////////////////////////////////////////////////////////// + +int fetestexcept(int excepts) +{ + unsigned int status = _statusfp(); + return excepts & ( + ((status & _SW_INEXACT) ? FE_INEXACT : 0) | + ((status & _SW_UNDERFLOW) ? FE_UNDERFLOW : 0) | + ((status & _SW_OVERFLOW) ? FE_OVERFLOW : 0) | + ((status & _SW_ZERODIVIDE) ? FE_DIVBYZERO : 0) | + ((status & _SW_INVALID) ? FE_INVALID : 0) + ); +} + +int feclearexcept(int excepts) +{ + _clearfp(); + return 0; +} + +#endif // __INTEL_COMPILER + +#if ! defined( __INTEL_COMPILER ) || __INTEL_COMPILER < 1300 + +float make_nan() +{ +/* This is the IEEE 754 single-precision format: + unsigned int mantissa: 22; + unsigned int quiet_nan: 1; + unsigned int exponent: 8; + unsigned int negative: 1; +*/ + //const static unsigned + static const int32_t _nan = 0x7fc00000; + return *(const float*)(&_nan); +} + +float nanf( const char* str) +{ + cl_uint u = atoi( str ); + u |= 0x7fc00000U; + return *( float*)(&u); +} + + +double nan( const char* str) +{ + cl_ulong u = atoi( str ); + u |= 0x7ff8000000000000ULL; + return *( double*)(&u); +} + +// double check this implementatation +long double nanl( const char* str) +{ + union + { + long double f; + struct { cl_ulong m; cl_ushort sexp; }u; + }u; + u.u.sexp = 0x7fff; + u.u.m = 0x8000000000000000ULL | atoi( str ); + + return u.f; +} + +#endif + +/////////////////////////////////////////////////////////////////// +// +// misc functions +// +/////////////////////////////////////////////////////////////////// + +/* +// This function is commented out because the Windows implementation should never call munmap. +// If it is calling it, we have a bug. Please file a bugzilla. +int munmap(void *addr, size_t len) +{ +// FIXME: this is not correct. munmap is like free() http://www.opengroup.org/onlinepubs/7990989775/xsh/munmap.html + + return (int)VirtualAlloc( (LPVOID)addr, len, + MEM_COMMIT|MEM_RESERVE, PAGE_NOACCESS ); +} +*/ + +uint64_t ReadTime( void ) +{ + LARGE_INTEGER current; + QueryPerformanceCounter(¤t); + return (uint64_t)current.QuadPart; +} + +double SubtractTime( uint64_t endTime, uint64_t startTime ) +{ + static double PerformanceFrequency = 0.0; + + if (PerformanceFrequency == 0.0) { + LARGE_INTEGER frequency; + QueryPerformanceFrequency(&frequency); + PerformanceFrequency = (double) frequency.QuadPart; + } + + return (double)(endTime - startTime) / PerformanceFrequency * 1e9; +} + +int cf_signbit(double x) { union { @@ -600,7 +681,7 @@ int signbit(double x) return u.u >> 63; } -int signbitf(float x) +int cf_signbitf(float x) { union { @@ -611,17 +692,6 @@ int signbitf(float x) return u.u >> 31; } -float cbrtf( float x ) -{ - float z = pow( fabs((double) x), 1.0 / 3.0 ); - return copysignf( z, x ); -} - -double cbrt( double x ) -{ - return copysign( pow( fabs( x ), 1.0 / 3.0 ), x ); -} - float int2float (int32_t ix) { union { @@ -642,7 +712,7 @@ int32_t float2int (float fx) return u.i; } -#if defined(_MSC_VER) && !defined(_WIN64) +#if !defined(_WIN64) /** Returns the number of leading 0-bits in x, starting at the most significant bit position. If x is 0, the result is undefined. @@ -682,45 +752,10 @@ int __builtin_clz(unsigned int pattern) return count; } -#endif //defined(_MSC_VER) && !defined(_WIN64) +#endif // !defined(_WIN64) #include #include -long int lrint (double x) -{ - double absx = fabs(x); - - if( x >= (double) LONG_MAX ) - return LONG_MAX; - - if( absx < 4503599627370496.0 /* 0x1.0p52 */ ) - { - double magic = copysign( 4503599627370496.0 /* 0x1.0p52 */, x ); - double rounded = x + magic; - rounded -= magic; - return (long int) rounded; - } - - return (long int) x; -} - -long int lrintf (float x) -{ - float absx = fabsf(x); - - if( x >= (float) LONG_MAX ) - return LONG_MAX; - - if( absx < 8388608.0f /* 0x1.0p23f */ ) - { - float magic = copysignf( 8388608.0f /* 0x1.0p23f */, x ); - float rounded = x + magic; - rounded -= magic; - return (long int) rounded; - } - - return (long int) x; -} int usleep(int usec) { @@ -728,22 +763,10 @@ int usleep(int usec) return 0; } -int fetestexcept(int excepts) +unsigned int sleep( unsigned int sec ) { - unsigned int status = _statusfp(); - return excepts & ( - ((status & _SW_INEXACT) ? FE_INEXACT : 0) | - ((status & _SW_UNDERFLOW) ? FE_UNDERFLOW : 0) | - ((status & _SW_OVERFLOW) ? FE_OVERFLOW : 0) | - ((status & _SW_ZERODIVIDE) ? FE_DIVBYZERO : 0) | - ((status & _SW_INVALID) ? FE_INVALID : 0) - ); -} - -int feclearexcept(int excepts) -{ - _clearfp(); + Sleep( sec * 1000 ); return 0; } -#endif //defined(_WIN32) +#endif // defined( _MSC_VER ) diff --git a/test_conformance/compatibility/test_common/harness/testHarness.c b/test_conformance/compatibility/test_common/harness/testHarness.c index 1994399d..af05c8d5 100644 --- a/test_conformance/compatibility/test_common/harness/testHarness.c +++ b/test_conformance/compatibility/test_common/harness/testHarness.c @@ -439,10 +439,18 @@ int runTestHarnessWithCheck( int argc, const char *argv[], unsigned int num_fns, /* If we have a device checking function, run it */ - if( ( deviceCheckFn != NULL ) && deviceCheckFn( device ) != CL_SUCCESS ) + if( ( deviceCheckFn != NULL ) ) { - test_finish(); - return -1; + test_status status = deviceCheckFn( device ); + switch (status) + { + case TEST_PASS: + break; + case TEST_FAIL: + return 1; + case TEST_SKIP: + return 0; + } } if (num_elements <= 0) diff --git a/test_conformance/compatibility/test_common/harness/testHarness.h b/test_conformance/compatibility/test_common/harness/testHarness.h index c2620647..7c1d9cb2 100644 --- a/test_conformance/compatibility/test_common/harness/testHarness.h +++ b/test_conformance/compatibility/test_common/harness/testHarness.h @@ -23,6 +23,13 @@ extern "C" { #endif +typedef enum test_status +{ + TEST_PASS = 0, + TEST_FAIL = 1, + TEST_SKIP = 2, +} test_status; + extern cl_uint gReSeed; extern cl_uint gRandomSeed; @@ -32,8 +39,8 @@ extern int runTestHarness( int argc, const char *argv[], unsigned int num_fns, basefn fnList[], const char *fnNames[], int imageSupportRequired, int forceNoContextCreation, cl_command_queue_properties queueProps ); -// Device checking function. See runTestHarnessWithCheck. If this function returns anything other than CL_SUCCESS (0), the harness exits. -typedef int (*DeviceCheckFn)( cl_device_id device ); +// Device checking function. See runTestHarnessWithCheck. If this function returns anything other than TEST_PASS, the harness exits. +typedef test_status (*DeviceCheckFn)( cl_device_id device ); // Same as runTestHarness, but also supplies a function that checks the created device for required functionality. extern int runTestHarnessWithCheck( int argc, const char *argv[], unsigned int num_fns, diff --git a/test_conformance/compatibility/test_conformance/api/CMakeLists.txt b/test_conformance/compatibility/test_conformance/api/CMakeLists.txt index 50dd64ef..4af76989 100644 --- a/test_conformance/compatibility/test_conformance/api/CMakeLists.txt +++ b/test_conformance/compatibility/test_conformance/api/CMakeLists.txt @@ -20,6 +20,7 @@ set(${MODULE_NAME}_SOURCES test_mem_object_info.cpp test_null_buffer_arg.c test_kernel_arg_info.c + test_queue_properties.cpp ../../test_common/harness/errorHelpers.c ../../test_common/harness/threadTesting.c ../../test_common/harness/testHarness.c diff --git a/test_conformance/compatibility/test_conformance/api/main.c b/test_conformance/compatibility/test_conformance/api/main.c index 1870bf8f..a8e9e993 100644 --- a/test_conformance/compatibility/test_conformance/api/main.c +++ b/test_conformance/compatibility/test_conformance/api/main.c @@ -113,6 +113,7 @@ basefn basefn_list[] = { test_get_image1d_info, test_get_image1d_array_info, test_get_image2d_array_info, + test_queue_properties, }; @@ -200,6 +201,7 @@ const char *basefn_names[] = { "get_image1d_info", "get_image1d_array_info", "get_image2d_array_info", + "queue_properties", }; ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); diff --git a/test_conformance/compatibility/test_conformance/api/procs.h b/test_conformance/compatibility/test_conformance/api/procs.h index ff796a38..e0a85356 100644 --- a/test_conformance/compatibility/test_conformance/api/procs.h +++ b/test_conformance/compatibility/test_conformance/api/procs.h @@ -105,4 +105,5 @@ extern int test_get_image1d_info( cl_device_id deviceID, cl_context context extern int test_get_image1d_array_info( cl_device_id deviceID, cl_context context, cl_command_queue ignoreQueue, int num_elements ); extern int test_get_image2d_array_info( cl_device_id deviceID, cl_context context, cl_command_queue ignoreQueue, int num_elements ); extern int test_get_kernel_arg_info( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ); +extern int test_queue_properties( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ); diff --git a/test_conformance/compatibility/test_conformance/api/test_api_min_max.c b/test_conformance/compatibility/test_conformance/api/test_api_min_max.c index aa733996..2dc43d74 100644 --- a/test_conformance/compatibility/test_conformance/api/test_api_min_max.c +++ b/test_conformance/compatibility/test_conformance/api/test_api_min_max.c @@ -1319,12 +1319,12 @@ int test_min_max_constant_buffer_size(cl_device_id deviceID, cl_context context, log_info("Reported max constant buffer size of %lld bytes.\n", maxSize); - // Limit test buffer size to 1/4 of CL_DEVICE_GLOBAL_MEM_SIZE + // Limit test buffer size to 1/8 of CL_DEVICE_GLOBAL_MEM_SIZE error = clGetDeviceInfo(deviceID, CL_DEVICE_GLOBAL_MEM_SIZE, sizeof(maxGlobalSize), &maxGlobalSize, 0); test_error(error, "Unable to get CL_DEVICE_GLOBAL_MEM_SIZE"); - if (maxSize > maxGlobalSize / 4) - maxSize = maxGlobalSize / 4; + if (maxSize > maxGlobalSize / 8) + maxSize = maxGlobalSize / 8; error = clGetDeviceInfo(deviceID, CL_DEVICE_MAX_MEM_ALLOC_SIZE , sizeof(maxAllocSize), &maxAllocSize, 0); test_error(error, "Unable to get CL_DEVICE_MAX_MEM_ALLOC_SIZE "); @@ -1422,7 +1422,7 @@ int test_min_max_constant_buffer_size(cl_device_id deviceID, cl_context context, if (allocPassed) { if (currentSize < maxSize/PASSING_FRACTION) { - log_error("Failed to allocate at least 1/4 of the reported constant size.\n"); + log_error("Failed to allocate at least 1/8 of the reported constant size.\n"); return -1; } else if (currentSize != maxSize) { log_info("Passed at reduced size. (%lld of %lld bytes)\n", currentSize, maxSize); diff --git a/test_conformance/compatibility/test_conformance/api/test_queue_properties.cpp b/test_conformance/compatibility/test_conformance/api/test_queue_properties.cpp new file mode 100644 index 00000000..3b368077 --- /dev/null +++ b/test_conformance/compatibility/test_conformance/api/test_queue_properties.cpp @@ -0,0 +1,174 @@ +// +// Copyright (c) 2018 The Khronos Group Inc. +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// + + +#include "testBase.h" +#include "../../test_common/harness/typeWrappers.h" +#include "../../test_common/harness/conversions.h" +#include +#include +#include + +using namespace std; +/* +The test against cl_khr_create_command_queue extension. It validates if devices with Opencl 1.X can use clCreateCommandQueueWithPropertiesKHR function. +Based on device capabilities test will create queue with NULL properties, CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE property and +CL_QUEUE_PROFILING_ENABLE property. Finally simple kernel will be executed on such queue. +*/ + +const char *queue_test_kernel[] = { +"__kernel void vec_cpy(__global int *src, __global int *dst)\n" +"{\n" +" int tid = get_global_id(0);\n" +"\n" +" dst[tid] = src[tid];\n" +"\n" +"}\n" }; + +int enqueue_kernel(cl_context context, const cl_queue_properties_khr *queue_prop_def, cl_device_id deviceID, clKernelWrapper& kernel, size_t num_elements) +{ + clMemWrapper streams[2]; + int error; + std::vector buf(num_elements); + clCreateCommandQueueWithPropertiesKHR_fn clCreateCommandQueueWithPropertiesKHR = NULL; + cl_platform_id platform; + clEventWrapper event; + + error = clGetDeviceInfo(deviceID, CL_DEVICE_PLATFORM, sizeof(cl_platform_id), &platform, NULL); + test_error(error, "clGetDeviceInfo for CL_DEVICE_PLATFORM failed"); + + clCreateCommandQueueWithPropertiesKHR = (clCreateCommandQueueWithPropertiesKHR_fn) clGetExtensionFunctionAddressForPlatform(platform, "clCreateCommandQueueWithPropertiesKHR"); + if (clCreateCommandQueueWithPropertiesKHR == NULL) + { + log_error("ERROR: clGetExtensionFunctionAddressForPlatform failed\n"); + return -1; + } + + clCommandQueueWrapper queue = clCreateCommandQueueWithPropertiesKHR(context, deviceID, queue_prop_def, &error); + test_error(error, "clCreateCommandQueueWithPropertiesKHR failed"); + + for (int i = 0; i < num_elements; ++i) + { + buf[i] = i; + } + + streams[0] = clCreateBuffer(context, CL_MEM_READ_WRITE | CL_MEM_USE_HOST_PTR, num_elements * sizeof(int), buf.data(), &error); + test_error( error, "clCreateBuffer failed." ); + streams[1] = clCreateBuffer(context, CL_MEM_READ_WRITE | CL_MEM_ALLOC_HOST_PTR, num_elements * sizeof(int), NULL, &error); + test_error( error, "clCreateBuffer failed." ); + + error = clSetKernelArg(kernel, 0, sizeof(streams[0]), &streams[0]); + test_error( error, "clSetKernelArg failed." ); + + error = clSetKernelArg(kernel, 1, sizeof(streams[1]), &streams[1]); + test_error( error, "clSetKernelArg failed." ); + + error = clEnqueueNDRangeKernel(queue, kernel, 1, NULL, &num_elements, NULL, 0, NULL, &event); + test_error( error, "clEnqueueNDRangeKernel failed." ); + + error = clWaitForEvents(1, &event); + test_error(error, "clWaitForEvents failed."); + + error = clEnqueueReadBuffer(queue, streams[1], CL_TRUE, 0, num_elements, buf.data(), 0, NULL, NULL); + test_error( error, "clEnqueueReadBuffer failed." ); + + for (int i = 0; i < num_elements; ++i) + { + if (buf[i] != i) + { + log_error("ERROR: Incorrect vector copy result."); + return -1; + } + } + + return 0; +} + +int test_queue_properties(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + if (num_elements <= 0) + { + num_elements = 128; + } + int error = 0; + + clProgramWrapper program; + clKernelWrapper kernel; + size_t strSize; + std::string strExt(0, '\0'); + cl_queue_properties_khr device_props = NULL; + cl_queue_properties_khr queue_prop_def[] = { CL_QUEUE_PROPERTIES, 0, 0 }; + + // Query extension + error = clGetDeviceInfo(deviceID, CL_DEVICE_EXTENSIONS, 0, NULL, &strSize); + test_error(error, "clGetDeviceInfo for CL_DEVICE_EXTENSIONS failed"); + strExt.resize(strSize); + error = clGetDeviceInfo(deviceID, CL_DEVICE_EXTENSIONS, strExt.size(), &strExt[0], NULL); + test_error(error, "clGetDeviceInfo for CL_DEVICE_EXTENSIONS failed"); + log_info("CL_DEVICE_EXTENSIONS:\n%s\n\n", strExt.c_str()); + + if (strExt.find("cl_khr_create_command_queue") == string::npos) + { + log_info("extension cl_khr_create_command_queue is not supported.\n"); + return 0; + } + + error = create_single_kernel_helper(context, &program, &kernel, 1, queue_test_kernel, "vec_cpy"); + test_error(error, "create_single_kernel_helper failed"); + + log_info("Queue property NULL. Testing ... \n"); + error = enqueue_kernel(context, NULL,deviceID, kernel, (size_t)num_elements); + test_error(error, "enqueue_kernel failed"); + + error = clGetDeviceInfo(deviceID, CL_DEVICE_QUEUE_PROPERTIES, sizeof(device_props), &device_props, NULL); + test_error(error, "clGetDeviceInfo for CL_DEVICE_QUEUE_PROPERTIES failed"); + + if (device_props & CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE) + { + log_info("Queue property CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE supported. Testing ... \n"); + queue_prop_def[1] = CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE; + error = enqueue_kernel(context, queue_prop_def, deviceID, kernel, (size_t)num_elements); + test_error(error, "enqueue_kernel failed"); + } else + { + log_info("Queue property CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE not supported \n"); + } + + if (device_props & CL_QUEUE_PROFILING_ENABLE) + { + log_info("Queue property CL_QUEUE_PROFILING_ENABLE supported. Testing ... \n"); + queue_prop_def[1] = CL_QUEUE_PROFILING_ENABLE; + error = enqueue_kernel(context, queue_prop_def, deviceID, kernel, (size_t)num_elements); + test_error(error, "enqueue_kernel failed"); + } else + { + log_info("Queue property CL_QUEUE_PROFILING_ENABLE not supported \n"); + } + + if (device_props & CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE && device_props & CL_QUEUE_PROFILING_ENABLE) + { + log_info("Queue property CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE & CL_QUEUE_PROFILING_ENABLE supported. Testing ... \n"); + queue_prop_def[1] = CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE|CL_QUEUE_PROFILING_ENABLE; + error = enqueue_kernel(context, queue_prop_def, deviceID, kernel, (size_t)num_elements); + test_error(error, "enqueue_kernel failed"); + } + else + { + log_info("Queue property CL_QUEUE_OUT_OF_ORDER_EXEC_MODE_ENABLE or CL_QUEUE_PROFILING_ENABLE not supported \n"); + } + + return 0; +} \ No newline at end of file diff --git a/test_conformance/compatibility/test_conformance/basic/run_array b/test_conformance/compatibility/test_conformance/basic/run_array old mode 100644 new mode 100755 diff --git a/test_conformance/compatibility/test_conformance/basic/run_array_image_copy b/test_conformance/compatibility/test_conformance/basic/run_array_image_copy old mode 100644 new mode 100755 diff --git a/test_conformance/compatibility/test_conformance/basic/run_image b/test_conformance/compatibility/test_conformance/basic/run_image old mode 100644 new mode 100755 diff --git a/test_conformance/compatibility/test_conformance/basic/run_multi_read_image b/test_conformance/compatibility/test_conformance/basic/run_multi_read_image old mode 100644 new mode 100755 diff --git a/test_conformance/compatibility/test_conformance/basic/test_async_strided_copy.cpp b/test_conformance/compatibility/test_conformance/basic/test_async_strided_copy.cpp index 6db06398..dca52b5e 100644 --- a/test_conformance/compatibility/test_conformance/basic/test_async_strided_copy.cpp +++ b/test_conformance/compatibility/test_conformance/basic/test_async_strided_copy.cpp @@ -202,10 +202,10 @@ int test_strided_copy(cl_device_id deviceID, cl_context context, cl_command_queu log_error( "ERROR: Results of copy did not validate!\n" ); sprintf(values + strlen( values), "%d -> [", i); for (int j=0; j<(int)elementSize; j++) - sprintf(values + strlen( values), "%2x ", inchar[i*elementSize+j]); + sprintf(values + strlen( values), "%2x ", inchar[j]); sprintf(values + strlen(values), "] != ["); for (int j=0; j<(int)elementSize; j++) - sprintf(values + strlen( values), "%2x ", outchar[i*elementSize+j]); + sprintf(values + strlen( values), "%2x ", outchar[j]); sprintf(values + strlen(values), "]"); log_error("%s\n", values); diff --git a/test_conformance/compatibility/test_conformance/basic/test_imagedim.c b/test_conformance/compatibility/test_conformance/basic/test_imagedim.c index 2dbaaa7b..81de4cbc 100644 --- a/test_conformance/compatibility/test_conformance/basic/test_imagedim.c +++ b/test_conformance/compatibility/test_conformance/basic/test_imagedim.c @@ -16,6 +16,7 @@ #include "../../test_common/harness/compat.h" #include +#include #include #include #include @@ -112,6 +113,10 @@ test_imagedim_pow2(cl_device_id device, cl_context context, cl_command_queue que log_info("Device reported max image sizes of %lu x %lu, and max mem size of %gMB.\n", max_image2d_width, max_image2d_height, max_mem_size/(1024.0*1024.0)); + if (max_mem_size > (cl_ulong)SIZE_MAX) { + max_mem_size = (cl_ulong)SIZE_MAX; + } + cl_sampler sampler = clCreateSampler(context, CL_FALSE, CL_ADDRESS_CLAMP_TO_EDGE, CL_FILTER_NEAREST, &err); test_error(err, "clCreateSampler failed"); @@ -182,7 +187,7 @@ test_imagedim_pow2(cl_device_id device, cl_context context, cl_command_queue que size_t origin[3] = {0,0,0}; size_t region[3] = {img_width, img_height, 1}; - err = clEnqueueWriteImage(queue, streams[0], CL_TRUE, origin, region, 0, 0, input_ptr, 0, NULL, NULL); + err = clEnqueueWriteImage(queue, streams[0], CL_FALSE, origin, region, 0, 0, input_ptr, 0, NULL, NULL); if (err != CL_SUCCESS) { log_error("clWriteImage failed\n"); @@ -324,6 +329,10 @@ test_imagedim_non_pow2(cl_device_id device, cl_context context, cl_command_queue max_img_width = (int)max_image2d_width; max_img_height = (int)max_image2d_height; + if (max_mem_size > (cl_ulong)SIZE_MAX) { + max_mem_size = (cl_ulong)SIZE_MAX; + } + // determine max image dim we can allocate - assume RGBA image, 4 bytes per pixel, // and we want to consume 1/4 of global memory (this is the minimum required to be // supported by the spec) @@ -351,6 +360,9 @@ test_imagedim_non_pow2(cl_device_id device, cl_context context, cl_command_queue max_img_width, max_img_height, (max_img_width*max_img_height*4)/(1024.0*1024.0)); d = init_genrand( gRandomSeed ); + input_ptr = generate_8888_image(max_img_width, max_img_height, d); + output_ptr = (unsigned char*)malloc(sizeof(unsigned char) * 4 * max_img_width * max_img_height); + int plus_minus; for (plus_minus=0; plus_minus < 3; plus_minus++) { @@ -390,9 +402,6 @@ test_imagedim_non_pow2(cl_device_id device, cl_context context, cl_command_queue break; } - input_ptr = generate_8888_image(effective_img_width, effective_img_height, d); - output_ptr = (unsigned char*)malloc(sizeof(unsigned char) * 4 * effective_img_width * effective_img_height); - img_format.image_channel_order = CL_RGBA; img_format.image_channel_data_type = CL_UNORM_INT8; streams[0] = create_image_2d(context, (cl_mem_flags)(CL_MEM_READ_WRITE), &img_format, effective_img_width, effective_img_height, 0, NULL, NULL); @@ -419,7 +428,7 @@ test_imagedim_non_pow2(cl_device_id device, cl_context context, cl_command_queue size_t origin[3] = {0,0,0}; size_t region[3] = {effective_img_width, effective_img_height, 1}; - err = clEnqueueWriteImage(queue, streams[0], CL_TRUE, origin, region, 0, 0, input_ptr, 0, NULL, NULL); + err = clEnqueueWriteImage(queue, streams[0], CL_FALSE, origin, region, 0, 0, input_ptr, 0, NULL, NULL); if (err != CL_SUCCESS) { log_error("clWriteImage failed\n"); @@ -484,14 +493,14 @@ test_imagedim_non_pow2(cl_device_id device, cl_context context, cl_command_queue clReleaseMemObject(streams[0]); clReleaseMemObject(streams[1]); - free(input_ptr); - free(output_ptr); } } } // cleanup + free(input_ptr); + free(output_ptr); free_mtdata(d); clReleaseSampler(sampler); clReleaseKernel(kernel); diff --git a/test_conformance/compatibility/test_conformance/basic/test_sizeof.c b/test_conformance/compatibility/test_conformance/basic/test_sizeof.c index bece1b94..9c56bb58 100644 --- a/test_conformance/compatibility/test_conformance/basic/test_sizeof.c +++ b/test_conformance/compatibility/test_conformance/basic/test_sizeof.c @@ -133,7 +133,7 @@ const size_table vector_table[] = const char *ptr_table[] = { - "void*", + "global void*", "size_t", "sizeof(int)", // check return type of sizeof "ptrdiff_t" diff --git a/test_conformance/compatibility/test_conformance/images/image_helpers.h b/test_conformance/compatibility/test_conformance/images/image_helpers.h index d2132c7e..cd0eff6c 100644 --- a/test_conformance/compatibility/test_conformance/images/image_helpers.h +++ b/test_conformance/compatibility/test_conformance/images/image_helpers.h @@ -481,7 +481,6 @@ extern char *create_random_image_data( ExplicitType dataType, image_descriptor * extern void get_sampler_kernel_code( image_sampler_data *imageSampler, char *outLine ); extern float get_max_absolute_error( cl_image_format *format, image_sampler_data *sampler); extern float get_max_relative_error( cl_image_format *format, image_sampler_data *sampler, int is3D, int isLinearFilter ); -extern int issubnormal(float); #define errMax( _x , _y ) ( (_x) != (_x) ? (_x) : (_x) > (_y) ? (_x) : (_y) ) diff --git a/test_conformance/compiler/test_compiler_defines_for_extensions.cpp b/test_conformance/compiler/test_compiler_defines_for_extensions.cpp index 3a03e1d5..cfb01a34 100644 --- a/test_conformance/compiler/test_compiler_defines_for_extensions.cpp +++ b/test_conformance/compiler/test_compiler_defines_for_extensions.cpp @@ -54,6 +54,9 @@ const char *known_extensions[] = { "cl_khr_egl_image", "cl_khr_egl_event", "cl_khr_il_program", + "cl_khr_create_command_queue", + "cl_khr_throttle_hints", + "cl_khr_priority_hints", }; size_t num_known_extensions = sizeof(known_extensions)/sizeof(char*); diff --git a/test_conformance/contractions/contractions.c b/test_conformance/contractions/contractions.c index 6fb444b9..cb9069b0 100644 --- a/test_conformance/contractions/contractions.c +++ b/test_conformance/contractions/contractions.c @@ -515,6 +515,8 @@ static void PrintArch( void ) vlog( "\tARCH:\tx86_64\n" ); #elif defined( __arm__ ) vlog( "\tARCH:\tarm\n" ); +#elif defined( __aarch64__ ) + vlog( "\tARCH:\taarch64\n" ); #else vlog( "\tARCH:\tunknown\n" ); #endif diff --git a/test_conformance/conversions/CMakeLists.txt b/test_conformance/conversions/CMakeLists.txt index 35acc7a6..4c65c69d 100644 --- a/test_conformance/conversions/CMakeLists.txt +++ b/test_conformance/conversions/CMakeLists.txt @@ -19,6 +19,7 @@ set (${MODULE_NAME}_SOURCES ../../test_common/harness/errorHelpers.c ../../test_common/harness/kernelHelpers.c ../../test_common/harness/testHarness.c + ../../test_common/harness/parseParameters.cpp ) if(ANDROID) diff --git a/test_conformance/conversions/basic_test_conversions.c b/test_conformance/conversions/basic_test_conversions.c index 73f38633..bfd31b27 100644 --- a/test_conformance/conversions/basic_test_conversions.c +++ b/test_conformance/conversions/basic_test_conversions.c @@ -751,16 +751,11 @@ static void ulong2uint( void *out, void *in){ ((cl_uint*) out)[0] = (cl_uint) (( static void ulong2int( void *out, void *in){ ((cl_int*) out)[0] = (cl_int) ((cl_ulong*) in)[0]; } static void ulong2float( void *out, void *in) { -#if defined(_MSC_VER) +#if defined(_MSC_VER) && defined(_M_X64) cl_ulong l = ((cl_ulong*) in)[0]; float result; - cl_long sl = ((cl_long)l < 0) ? (cl_long)((l >> 1) | (l & 1)) : (cl_long)l; -#if defined(_M_X64) _mm_store_ss(&result, _mm_cvtsi64_ss(_mm_setzero_ps(), sl)); -#else - result = sl; -#endif ((float*) out)[0] = (l == 0 ? 0.0f : (((cl_long)l < 0) ? result * 2.0f : result)); #else cl_ulong l = ((cl_ulong*) in)[0]; diff --git a/test_conformance/conversions/test_conversions.c b/test_conformance/conversions/test_conversions.c index 5b835343..fa04909b 100644 --- a/test_conformance/conversions/test_conversions.c +++ b/test_conformance/conversions/test_conversions.c @@ -18,6 +18,7 @@ #include "../../test_common/harness/ThreadPool.h" #include "../../test_common/harness/testHarness.h" #include "../../test_common/harness/kernelHelpers.h" +#include "../../test_common/harness/parseParameters.h" #if !defined(_WIN32) && !defined(__ANDROID__) #include #endif @@ -98,6 +99,7 @@ cl_mem gOutBuffers[ kCallStyleCount ]; size_t gComputeDevices = 0; uint32_t gDeviceFrequency = 0; int gWimpyMode = 0; +int gWimpyReductionFactor = 128; int gSkipTesting = 0; int gForceFTZ = 0; int gMultithread = 1; @@ -438,6 +440,9 @@ static int ParseArgs( int argc, const char **argv ) case 'w': gWimpyMode ^= 1; break; + case '[': + parseWimpyReductionFactor(arg, gWimpyReductionFactor); + break; case 'z': gForceFTZ ^= 1; break; @@ -540,6 +545,7 @@ static int ParseArgs( int argc, const char **argv ) vlog( "*** WARNING: Testing in Wimpy mode! ***\n" ); vlog( "*** Wimpy mode is not sufficient to verify correctness. ***\n" ); vlog( "*** It gives warm fuzzy feelings and then nevers calls. ***\n\n" ); + vlog("*** Wimpy Reduction Factor: %-27u ***\n\n", gWimpyReductionFactor); } return 0; @@ -566,6 +572,7 @@ static void PrintUsage( void ) vlog( "\t\t-l\tToggle link check mode. When on, testing is skipped, and we just check to see that the kernels build. (Off by default.)\n" ); vlog( "\t\t-m\tToggle Multithreading. (On by default.)\n" ); vlog( "\t\t-w\tToggle wimpy mode. When wimpy mode is on, we run a very small subset of the tests for each fn. NOT A VALID TEST! (Off by default.)\n" ); + vlog(" \t\t-[2^n]\tSet wimpy reduction factor, recommended range of n is 1-12, default factor(%u)\n", gWimpyReductionFactor); vlog( "\t\t-z\tToggle flush to zero mode (Default: per device)\n" ); vlog( "\t\t-#\tTest just vector size given by #, where # is an element of the set {1,2,3,4,8,16}\n" ); vlog( "\n" ); @@ -1243,15 +1250,12 @@ static int DoTest( Type outType, Type inType, SaturationMode sat, RoundingMode r if ( !gWimpyMode && gIsEmbedded ) step = blockCount * EMBEDDED_REDUCTION_FACTOR; + if ( gWimpyMode ) + step = (size_t)blockCount * (size_t)gWimpyReductionFactor; vlog( "Testing... " ); fflush(stdout); for( i = 0; i < (uint64_t)lastCase; i += step ) { - if (gWimpyMode) { - uint64_t blockIndex = (i / blockCount) & 0xFF; - if (blockIndex != 0 && blockIndex != 0xFF) - continue; - } if( 0 == ( i & ((lastCase >> 3) -1))) { vlog("."); diff --git a/test_conformance/d3d10/harness.cpp b/test_conformance/d3d10/harness.cpp index 5caee9bb..13829760 100644 --- a/test_conformance/d3d10/harness.cpp +++ b/test_conformance/d3d10/harness.cpp @@ -200,7 +200,7 @@ cl_int HarnessD3D10_CreateDevice(IDXGIAdapter* pAdapter, ID3D10Device **ppDevice pAdapter, D3D10_DRIVER_TYPE_HARDWARE, NULL, - D3D10_CREATE_DEVICE_DEBUG, + 0, D3D10_SDK_VERSION, &sd, &HarnessD3D10_pSwapChain, diff --git a/test_conformance/device_execution/execute_block.cpp b/test_conformance/device_execution/execute_block.cpp index e10b7c6e..99589605 100644 --- a/test_conformance/device_execution/execute_block.cpp +++ b/test_conformance/device_execution/execute_block.cpp @@ -928,15 +928,16 @@ static const char* block_barrier[] = NL, " size_t gid = get_group_id(0);" NL, " size_t idx = gid*lsz;" NL, "" + NL, " res[tid]=lsz;" + NL, " barrier(CLK_GLOBAL_MEM_FENCE);" NL, " int (^kernelBlock)(int) = ^(int a)" NL, " {" - NL, " atomic_inc(res+idx);" + NL, " atomic_dec(res+idx);" NL, " barrier(CLK_GLOBAL_MEM_FENCE);" - NL, " return (int)abs(a - b) - (res[idx] != lsz ? 0 : 1);" + NL, " return (int)abs(a - b) - (res[idx] != 0 ? 0 : 1);" NL, " };" NL, "" NL, " int d = kernelBlock(2);" - NL, " barrier(CLK_GLOBAL_MEM_FENCE);" NL, " res[tid] = d;" NL, "}" NL diff --git a/test_conformance/device_execution/main.c b/test_conformance/device_execution/main.c index 3aa67de3..6d247d02 100644 --- a/test_conformance/device_execution/main.c +++ b/test_conformance/device_execution/main.c @@ -65,7 +65,7 @@ ct_assert(arr_size(commonfn_names) == arr_size(basefn_list)) static const int num_commonfns = arr_size(commonfn_names); -int deviceCheck(cl_device_id device) +test_status deviceCheck(cl_device_id device) { static const char expected_cl[] = "OpenCL 2.0"; static const char expected_clc[] = "OpenCL C 2.0"; @@ -77,7 +77,7 @@ int deviceCheck(cl_device_id device) if(res != CL_SUCCESS || ret_len < strlen(expected_cl) || strncmp(version, expected_cl, strlen(expected_cl))) { log_info("Device does not support '%s'. Skipping the test.\n", expected_cl); - return CL_INVALID_DEVICE; + return TEST_FAIL; } version[0] = 0; @@ -87,10 +87,10 @@ int deviceCheck(cl_device_id device) if(res != CL_SUCCESS || ret_len < strlen(expected_clc) || strncmp(version, expected_clc, strlen(expected_clc))) { log_info("Device does not support '%s'. Skipping the test.\n", expected_clc); - return CL_INVALID_DEVICE; + return TEST_FAIL; } - return CL_SUCCESS; + return TEST_PASS; } int diff --git a/test_conformance/device_partition/Jamfile b/test_conformance/device_partition/Jamfile index 0e1d4d6a..3bf4b29f 100644 --- a/test_conformance/device_partition/Jamfile +++ b/test_conformance/device_partition/Jamfile @@ -1,32 +1,32 @@ -project - : requirements - gcc:-xc++ - msvc:"/TP" - ; - -exe test_device_partition - : main.c - test_device_partition.cpp - ../../test_common/harness/errorHelpers.c - ../../test_common/harness/threadTesting.c - ../../test_common/harness/testHarness.c - ../../test_common/harness/kernelHelpers.c - ../../test_common/harness/genericThread.cpp - ../../test_common/harness/mt19937.c - ../../test_common/harness/conversions.c - ../../test_common/harness/typeWrappers.cpp - : windows:../../test_common/harness/msvc9.c - ; - -install dist - : test_device_partition - : debug:$(DIST)/debug/tests/conformance/1.2/x86/device_partition - release:$(DIST)/release/tests/conformance/1.2/x86/device_partition - ; - -install dist - : test_device_partition - : debug:$(DIST)/debug/tests/conformance/1.2/x86_64/device_partition - release:$(DIST)/release/tests/conformance/1.2/x86_64/device_partition - 64 - ; +project + : requirements + gcc:-xc++ + msvc:"/TP" + ; + +exe test_device_partition + : main.c + test_device_partition.cpp + ../../test_common/harness/errorHelpers.c + ../../test_common/harness/threadTesting.c + ../../test_common/harness/testHarness.c + ../../test_common/harness/kernelHelpers.c + ../../test_common/harness/genericThread.cpp + ../../test_common/harness/mt19937.c + ../../test_common/harness/conversions.c + ../../test_common/harness/typeWrappers.cpp + : windows:../../test_common/harness/msvc9.c + ; + +install dist + : test_device_partition + : debug:$(DIST)/debug/tests/conformance/1.2/x86/device_partition + release:$(DIST)/release/tests/conformance/1.2/x86/device_partition + ; + +install dist + : test_device_partition + : debug:$(DIST)/debug/tests/conformance/1.2/x86_64/device_partition + release:$(DIST)/release/tests/conformance/1.2/x86_64/device_partition + 64 + ; diff --git a/test_conformance/geometrics/test_geometrics_double.cpp b/test_conformance/geometrics/test_geometrics_double.cpp index 2d258d5d..34bd1933 100644 --- a/test_conformance/geometrics/test_geometrics_double.cpp +++ b/test_conformance/geometrics/test_geometrics_double.cpp @@ -203,7 +203,7 @@ int test_geom_cross_double(cl_device_id deviceID, cl_context context, cl_command return -1; /* Generate some streams. Note: deliberately do some random data in w to verify that it gets ignored */ - for( i = 0; i < TEST_SIZE * vecsize; i++ ) + for( i = 0; i < size * vecsize; i++ ) { inDataA[ i ] = get_random_double( -512.f, 512.f, d ); inDataB[ i ] = get_random_double( -512.f, 512.f, d ); @@ -237,7 +237,7 @@ int test_geom_cross_double(cl_device_id deviceID, cl_context context, cl_command } /* Run the kernel */ - threads[0] = TEST_SIZE; + threads[0] = size; error = get_max_common_work_group_size( context, kernel, threads[0], &localThreads[0] ); test_error( error, "Unable to get work group size to use" ); diff --git a/test_conformance/gl/test_image_methods.cpp b/test_conformance/gl/test_image_methods.cpp index fa0c00a6..06a3f393 100644 --- a/test_conformance/gl/test_image_methods.cpp +++ b/test_conformance/gl/test_image_methods.cpp @@ -34,7 +34,8 @@ typedef struct image_kernel_data cl_int numSamples; }; -static const char *methodTestKernelPattern = +static const char *methodTestKernelPattern = +"%s" "typedef struct {\n" " int width;\n" " int height;\n" @@ -75,6 +76,8 @@ static const char *channelOrderConstLine = " outData->expectedChannelOrder = CLK_%s;\n"; static const char *numSamplesKernelLine = " outData->numSamples = get_image_num_samples( input );\n"; +static const char *enableMSAAKernelLine = +"#pragma OPENCL EXTENSION cl_khr_gl_msaa_sharing : enable\n"; static int verify(cl_int input, cl_int kernelOutput, const char * description) { @@ -185,6 +188,7 @@ int test_image_format_methods( cl_device_id device, cl_context context, cl_comma bool doImageChannelOrder = false; bool doImageDim = false; bool doNumSamples = false; + bool doMSAA = false; switch(target) { case GL_TEXTURE_2D: imageType = "image2d_depth_t"; @@ -206,6 +210,7 @@ int test_image_format_methods( cl_device_id device, cl_context context, cl_comma break; case GL_TEXTURE_2D_MULTISAMPLE: doNumSamples = true; + doMSAA = true; if(format.formattype == GL_DEPTH_COMPONENT) { doImageWidth = true; imageType = "image2d_msaa_depth_t"; @@ -214,6 +219,7 @@ int test_image_format_methods( cl_device_id device, cl_context context, cl_comma } break; case GL_TEXTURE_2D_MULTISAMPLE_ARRAY: + doMSAA = true; if(format.formattype == GL_DEPTH_COMPONENT) { doImageWidth = true; imageType = "image2d_msaa_array_depth_t"; @@ -244,9 +250,11 @@ int test_image_format_methods( cl_device_id device, cl_context context, cl_comma } } - // Create a program to run against - sprintf( programSrc, methodTestKernelPattern, - imageType, + // Create a program to run against + sprintf(programSrc, + methodTestKernelPattern, + ( doMSAA ) ? enableMSAAKernelLine : "", + imageType, ( doArraySize ) ? arraySizeKernelLine : "", ( doImageWidth ) ? imageWidthKernelLine : "", ( doImageHeight ) ? imageHeightKernelLine : "", @@ -265,7 +273,7 @@ int test_image_format_methods( cl_device_id device, cl_context context, cl_comma if (error) print_error(error, "clFinish failed.\n"); const char *ptr = programSrc; - error = create_single_kernel_helper( context, &program, &kernel, 1, &ptr, "sample_kernel" ); + error = create_single_kernel_helper_with_build_options( context, &program, &kernel, 1, &ptr, "sample_kernel", "-cl-std=CL2.0" ); test_error( error, "Unable to create kernel to test against" ); // Create an output buffer diff --git a/test_conformance/gl/test_images_read_common.cpp b/test_conformance/gl/test_images_read_common.cpp index 068b9a29..f9b3e302 100644 --- a/test_conformance/gl/test_images_read_common.cpp +++ b/test_conformance/gl/test_images_read_common.cpp @@ -107,6 +107,7 @@ static const char *kernelpattern_image_read_2darray_depth = "}\n"; static const char *kernelpattern_image_multisample_read_2d = +"#pragma OPENCL EXTENSION cl_khr_gl_msaa_sharing : enable\n" "__kernel void sample_test( read_only image2d_msaa_t source, sampler_t sampler, __global %s4 *results )\n" "{\n" " int tidX = get_global_id(0);\n" @@ -121,6 +122,7 @@ static const char *kernelpattern_image_multisample_read_2d = "}\n"; static const char *kernelpattern_image_multisample_read_2d_depth = + "#pragma OPENCL EXTENSION cl_khr_gl_msaa_sharing : enable\n" "__kernel void sample_test( read_only image2d_msaa_depth_t source, sampler_t sampler, __global %s *results )\n" "{\n" " int tidX = get_global_id(0);\n" @@ -135,6 +137,7 @@ static const char *kernelpattern_image_multisample_read_2d_depth = "}\n"; static const char *kernelpattern_image_multisample_read_2darray = +"#pragma OPENCL EXTENSION cl_khr_gl_msaa_sharing : enable\n" "__kernel void sample_test( read_only image2d_array_msaa_t source, sampler_t sampler, __global %s4 *results )\n" "{\n" " int tidX = get_global_id(0);\n" @@ -151,6 +154,7 @@ static const char *kernelpattern_image_multisample_read_2darray = "}\n"; static const char *kernelpattern_image_multisample_read_2darray_depth = + "#pragma OPENCL EXTENSION cl_khr_gl_msaa_sharing : enable\n" "__kernel void sample_test( read_only image2d_array_msaa_depth_t source, sampler_t sampler, __global %s *results )\n" "{\n" " int tidX = get_global_id(0);\n" @@ -248,8 +252,8 @@ int test_cl_image_read( cl_context context, cl_command_queue queue, get_kernel_suffix( outFormat ) ); programPtr = kernelSource; - if( create_single_kernel_helper( context, &program, &kernel, 1, - (const char **)&programPtr, "sample_test" ) ) + if( create_single_kernel_helper_with_build_options( context, &program, &kernel, 1, + (const char **)&programPtr, "sample_test", "-cl-std=CL2.0" ) ) { return -1; } diff --git a/test_conformance/gl/test_images_write_common.cpp b/test_conformance/gl/test_images_write_common.cpp index 7b91f585..1345f46f 100644 --- a/test_conformance/gl/test_images_write_common.cpp +++ b/test_conformance/gl/test_images_write_common.cpp @@ -333,8 +333,8 @@ int test_cl_image_write( cl_context context, cl_command_queue queue, get_explicit_type_name( *outType ), suffix, convert); programPtr = kernelSource; - if( create_single_kernel_helper( context, &program, &kernel, 1, - (const char **)&programPtr, "sample_test" ) ) + if( create_single_kernel_helper_with_build_options( context, &program, &kernel, 1, + (const char **)&programPtr, "sample_test", "-cl-std=CL2.0" ) ) { return -1; } diff --git a/test_conformance/gles/main.cpp b/test_conformance/gles/main.cpp index e7aeb938..0b61702a 100644 --- a/test_conformance/gles/main.cpp +++ b/test_conformance/gles/main.cpp @@ -101,16 +101,14 @@ const char *basefn_names[] = { "images_write_cube", "renderbuffer_read", "renderbuffer_write", - "renderbuffer_getinfo", - "all" + "renderbuffer_getinfo" }; const char *basefn_names32[] = { - "fence_sync", - "all" + "fence_sync" }; -ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0]) - 1) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); +ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); int num_fns = sizeof(basefn_names) / sizeof(char *); int num_fns32 = sizeof(basefn_names32) / sizeof(char *); @@ -386,17 +384,17 @@ int main(int argc, const char *argv[]) // Intentional falling through cleanup: - // Cleanup EGL - glEnv->terminate_egl_display(); - // Always make sure that OpenCL context is released properly when the test exit if(sCurrentContext) { clReleaseContext( sCurrentContext ); sCurrentContext = NULL; } + + // Cleanup EGL + glEnv->terminate_egl_display(); + delete glEnv; - return error; -} \ No newline at end of file +} diff --git a/test_conformance/half/CMakeLists.txt b/test_conformance/half/CMakeLists.txt index 46931eb2..6e92a888 100644 --- a/test_conformance/half/CMakeLists.txt +++ b/test_conformance/half/CMakeLists.txt @@ -11,6 +11,7 @@ set(${MODULE_NAME}_SOURCES ../../test_common/harness/kernelHelpers.c ../../test_common/harness/ThreadPool.c ../../test_common/harness/testHarness.c + ../../test_common/harness/parseParameters.cpp ) include(../CMakeCommon.txt) diff --git a/test_conformance/half/Test_roundTrip.c b/test_conformance/half/Test_roundTrip.c index d941405b..f55f65d3 100644 --- a/test_conformance/half/Test_roundTrip.c +++ b/test_conformance/half/Test_roundTrip.c @@ -161,7 +161,7 @@ int Test_roundTrip( cl_device_id deviceID, cl_context context, cl_command_queue // Figure out how many elements are in a work block size_t elementSize = MAX( sizeof(cl_half), sizeof(cl_float)); - size_t blockCount = (size_t)getBufferSize(gDevice) / elementSize; //elementSize is a power of two + size_t blockCount = (size_t)gBufferSize / elementSize; //elementSize is a power of two uint64_t lastCase = 1ULL << (8*sizeof(cl_half)); // number of cl_half size_t stride = blockCount; diff --git a/test_conformance/half/Test_vLoadHalf.c b/test_conformance/half/Test_vLoadHalf.c index 81c76ead..3f8b53cd 100644 --- a/test_conformance/half/Test_vLoadHalf.c +++ b/test_conformance/half/Test_vLoadHalf.c @@ -454,7 +454,7 @@ int Test_vLoadHalf_private( bool aligned ) // Figure out how many elements are in a work block size_t elementSize = MAX( sizeof(cl_half), sizeof(cl_float)); - size_t blockCount = getBufferSize(gDevice) / elementSize; // elementSize is power of 2 + size_t blockCount = gBufferSize / elementSize; // elementSize is power of 2 uint64_t lastCase = 1ULL << (8*sizeof(cl_half)); // number of things of size cl_half // we handle 64-bit types a bit differently. @@ -504,7 +504,7 @@ int Test_vLoadHalf_private( bool aligned ) continue; } */ - memset_pattern4( gOut_single, &pattern, getBufferSize(gDevice)); + memset_pattern4( gOut_single, &pattern, gBufferSize); if( (error = clEnqueueWriteBuffer(gQueue, gOutBuffer_single, CL_TRUE, 0, count * sizeof( float ), gOut_single, 0, NULL, NULL)) ) { vlog_error( "Failure in clWriteArray\n" ); diff --git a/test_conformance/half/Test_vStoreHalf.c b/test_conformance/half/Test_vStoreHalf.c index 80b74ea2..5d9a1b0a 100644 --- a/test_conformance/half/Test_vStoreHalf.c +++ b/test_conformance/half/Test_vStoreHalf.c @@ -1045,7 +1045,7 @@ int Test_vStoreHalf_private( f2h referenceFunc, d2h doubleReferenceFunc, const c size_t stride = blockCount; if (gWimpyMode) - stride = 0x10000000U; + stride = (uint64_t)blockCount * (uint64_t)gWimpyReductionFactor; // we handle 64-bit types a bit differently. if( lastCase == 0 ) @@ -1654,7 +1654,7 @@ int Test_vStoreaHalf_private( f2h referenceFunc, d2h doubleReferenceFunc, const size_t stride = blockCount; if (gWimpyMode) - stride = 0x10000000U; + stride = (uint64_t)blockCount * (uint64_t)gWimpyReductionFactor; // we handle 64-bit types a bit differently. if( lastCase == 0 ) diff --git a/test_conformance/half/cl_utils.c b/test_conformance/half/cl_utils.c index 0c587805..4a6123b7 100644 --- a/test_conformance/half/cl_utils.c +++ b/test_conformance/half/cl_utils.c @@ -61,8 +61,10 @@ size_t gMaxThreadGroupSize = 0; size_t gWorkGroupSize = 0; int gFailCount = 0; bool gWimpyMode = false; +int gWimpyReductionFactor = 512; int gTestDouble = 0; uint32_t gDeviceIndex = 0; +size_t gBufferSize = 0; #if defined( __APPLE__ ) int gReportTimes = 1; @@ -178,17 +180,19 @@ int InitCL( void ) #if defined( __APPLE__ ) // FIXME: use clProtectedArray #endif + gBufferSize = getBufferSize(gDevice); + //Allocate buffers - gIn_half = malloc( getBufferSize(gDevice)/2 ); + gIn_half = malloc( gBufferSize/2 ); gOut_half = malloc( BUFFER_SIZE/2 ); gOut_half_reference = malloc( BUFFER_SIZE/2 ); gOut_half_reference_double = malloc( BUFFER_SIZE/2 ); gIn_single = malloc( BUFFER_SIZE ); - gOut_single = malloc( getBufferSize(gDevice) ); - gOut_single_reference = malloc( getBufferSize(gDevice) ); + gOut_single = malloc( gBufferSize ); + gOut_single_reference = malloc( gBufferSize ); gIn_double = malloc( 2*BUFFER_SIZE ); - // gOut_double = malloc( (2*getBufferSize(gDevice)) ); - // gOut_double_reference = malloc( (2*getBufferSize(gDevice)) ); + // gOut_double = malloc( (2*gBufferSize) ); + // gOut_double_reference = malloc( (2*gBufferSize) ); if ( NULL == gIn_half || NULL == gOut_half || @@ -201,7 +205,7 @@ int InitCL( void ) ) return -3; - gInBuffer_half = clCreateBuffer(gContext, CL_MEM_READ_ONLY, getBufferSize(gDevice) / 2, NULL, &error); + gInBuffer_half = clCreateBuffer(gContext, CL_MEM_READ_ONLY, gBufferSize / 2, NULL, &error); if( gInBuffer_half == NULL ) { vlog_error( "clCreateArray failed for input (%d)\n", error ); @@ -229,7 +233,7 @@ int InitCL( void ) return -5; } - gOutBuffer_single = clCreateBuffer(gContext, CL_MEM_WRITE_ONLY, getBufferSize(gDevice), NULL, &error ); + gOutBuffer_single = clCreateBuffer(gContext, CL_MEM_WRITE_ONLY, gBufferSize, NULL, &error ); if( gOutBuffer_single == NULL ) { vlog_error( "clCreateArray failed for output (%d)\n", error ); @@ -237,7 +241,7 @@ int InitCL( void ) } #if 0 - gOutBuffer_double = clCreateBuffer(gContext, CL_MEM_WRITE_ONLY, (size_t)(2*getBufferSize(gDevice)), NULL, &error ); + gOutBuffer_double = clCreateBuffer(gContext, CL_MEM_WRITE_ONLY, (size_t)(2*gBufferSize), NULL, &error ); if( gOutBuffer_double == NULL ) { vlog_error( "clCreateArray failed for output (%d)\n", error ); @@ -310,6 +314,15 @@ void ReleaseCL(void) // clReleaseMemObject(gOutBuffer_double); clReleaseCommandQueue(gQueue); clReleaseContext(gContext); + + free(gIn_half); + free(gOut_half); + free(gOut_half_reference); + free(gOut_half_reference_double); + free(gIn_single); + free(gOut_single); + free(gOut_single_reference); + free(gIn_double); } cl_uint numVecs(cl_uint count, int vectorSizeIdx, bool aligned) { @@ -427,21 +440,30 @@ size_t getBufferSize(cl_device_id device_id) if(s_initialized == 0 || s_device_id != device_id) { - cl_ulong result; + cl_ulong result, maxGlobalSize; cl_int err = clGetDeviceInfo (device_id, CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE, sizeof(result), (void *)&result, NULL); if(err) { - vlog_error("clGetDeviceInfo() failed\n"); + vlog_error("clGetDeviceInfo(CL_DEVICE_MAX_CONSTANT_BUFFER_SIZE) failed\n"); s_result = 64*1024; goto exit; } + log_info("Const buffer size is %llx (%llu)\n", result, result); + err = clGetDeviceInfo (device_id, + CL_DEVICE_GLOBAL_MEM_SIZE, + sizeof(maxGlobalSize), (void *)&maxGlobalSize, + NULL); + if(err) + { + vlog_error("clGetDeviceInfo(CL_DEVICE_GLOBAL_MEM_SIZE) failed\n"); + goto exit; + } result = result / 2; - if (result > BUFFER_SIZE) - result = BUFFER_SIZE; - log_info("Using const buffer size 0x%lx (%lu)\n", (unsigned long)result, (unsigned long)result); + if(maxGlobalSize < result * 10) + result = result / 10; s_initialized = 1; s_device_id = device_id; s_result = result; diff --git a/test_conformance/half/cl_utils.h b/test_conformance/half/cl_utils.h index 6299d3de..aba31e2f 100644 --- a/test_conformance/half/cl_utils.h +++ b/test_conformance/half/cl_utils.h @@ -71,11 +71,13 @@ extern size_t gWorkGroupSize; extern int gFailCount; extern int gTestDouble; extern int gReportTimes; +extern size_t gBufferSize; // gWimpyMode indicates if we run the test in wimpy mode where we limit the // size of 32 bit ranges to a much smaller set. This is meant to be used // as a smoke test extern bool gWimpyMode; +extern int gWimpyReductionFactor; uint64_t ReadTime( void ); double SubtractTime( uint64_t endTime, uint64_t startTime ); diff --git a/test_conformance/half/main.c b/test_conformance/half/main.c index 21b2226f..a09639c3 100644 --- a/test_conformance/half/main.c +++ b/test_conformance/half/main.c @@ -28,6 +28,7 @@ #include "../../test_common/harness/testHarness.h" #include "../../test_common/harness/mingw_compat.h" +#include "../../test_common/harness/parseParameters.h" #if defined (__MINGW32__) #include #endif @@ -260,7 +261,9 @@ static int ParseArgs( int argc, const char **argv ) case 'w': // Wimpy mode gWimpyMode = true; break; - + case '[': + parseWimpyReductionFactor( arg, gWimpyReductionFactor); + break; default: vlog_error( " <-- unknown flag: %c (0x%2.2x)\n)", *arg, *arg ); PrintUsage(); @@ -302,6 +305,7 @@ static int ParseArgs( int argc, const char **argv ) vlog( "*** WARNING: Testing in Wimpy mode! ***\n" ); vlog( "*** Wimpy mode is not sufficient to verify correctness. ***\n" ); vlog( "*** It gives warm fuzzy feelings and then nevers calls. ***\n\n" ); + vlog( "*** Wimpy Reduction Factor: %-27u ***\n\n", gWimpyReductionFactor); } return 0; } @@ -312,6 +316,7 @@ static void PrintUsage( void ) vlog( "\t\t-d\tToggle double precision testing (default: on if double supported)\n" ); vlog( "\t\t-t\tToggle reporting performance data.\n" ); vlog( "\t\t-w\tRun in wimpy mode\n" ); + vlog( "\t\t-[2^n]\tSet wimpy reduction factor, recommended range of n is 1-12, default factor(%u)\n", gWimpyReductionFactor); vlog( "\t\t-h\tHelp\n" ); for( int i = 0; i < num_fns; i++ ) { @@ -334,6 +339,8 @@ static void PrintArch( void ) vlog( "ARCH:\tx86_64\n" ); #elif defined( __arm__ ) vlog( "ARCH:\tarm\n" ); +#elif defined( __aarch64__ ) + vlog( "\tARCH:\taarch64\n" ); #else #error unknown arch #endif diff --git a/test_conformance/headers/CMakeLists.txt b/test_conformance/headers/CMakeLists.txt index 1fdccaa6..82e2d397 100644 --- a/test_conformance/headers/CMakeLists.txt +++ b/test_conformance/headers/CMakeLists.txt @@ -3,6 +3,7 @@ set(HEADERS_SOURCES ../../test_common/harness/errorHelpers.c ../../test_common/harness/kernelHelpers.c ../../test_common/harness/testHarness.c + ../../test_common/harness/msvc9.c ) set_source_files_properties(${HEADERS_SOURCES} PROPERTIES LANGUAGE CXX) @@ -24,6 +25,8 @@ set(CL_H_SOURCES test_cl.h.c ) +set_source_files_properties(${CL_H_SOURCES} PROPERTIES LANGUAGE CXX) + set(CL_H_OUT ${CONFORMANCE_PREFIX}cl_h${CONFORMANCE_SUFFIX}) add_executable( @@ -41,6 +44,8 @@ set(CL_PLATFORM_H_SOURCES test_cl_platform.h.c ) +set_source_files_properties(${CL_PLATFORM_H_SOURCES} PROPERTIES LANGUAGE CXX) + set(CL_PLATFORM_H_OUT ${CONFORMANCE_PREFIX}cl_platform_h${CONFORMANCE_SUFFIX}) add_executable( @@ -58,6 +63,8 @@ set(CL_GL_H_SOURCES test_cl_gl.h.c ) +set_source_files_properties(${CL_GL_H_SOURCES} PROPERTIES LANGUAGE CXX) + set(CL_GL_H_OUT ${CONFORMANCE_PREFIX}cl_gl_h${CONFORMANCE_SUFFIX}) add_executable( @@ -75,6 +82,8 @@ set(OPENCL_H_SOURCES test_opencl.h.c ) +set_source_files_properties(${OPENCL_H_SOURCES} PROPERTIES LANGUAGE CXX) + set(OPENCL_H_OUT ${CONFORMANCE_PREFIX}opencl_h${CONFORMANCE_SUFFIX}) add_executable( @@ -88,5 +97,4 @@ TARGET_LINK_LIBRARIES(${OPENCL_H_OUT} ${CLConform_LIBRARIES}) ######################################################################################## - # end of file # diff --git a/test_conformance/images/clFillImage/test_fill_2D_array.cpp b/test_conformance/images/clFillImage/test_fill_2D_array.cpp index 2ec35f6b..d88a49f0 100644 --- a/test_conformance/images/clFillImage/test_fill_2D_array.cpp +++ b/test_conformance/images/clFillImage/test_fill_2D_array.cpp @@ -152,9 +152,27 @@ int test_fill_image_set_2D_array( cl_device_id device, cl_image_format *format, imageInfo.slicePitch = imageInfo.rowPitch * (imageInfo.height + slicePadding); - log_info( "Testing %d x %d x %d\n", (int)sizes[ idx ][ 0 ], (int)sizes[ idx ][ 1 ], (int)sizes[ idx ][ 2 ] ); - if ( gDebugTrace ) - log_info( " at max size %d,%d,%d\n", (int)sizes[ idx ][ 0 ], (int)sizes[ idx ][ 1 ], (int)sizes[ idx ][ 2 ] ); + // Loop until we get a size that a) will fit in the max alloc size and b) that an allocation of that + // image, the result array, plus offset arrays, will fit in the global ram space + cl_ulong size = (cl_ulong)imageInfo.slicePitch * (cl_ulong)imageInfo.arraySize * 4 * 4; + + while (size > maxAllocSize || (size * 3) > memSize) { + if (imageInfo.arraySize == 1) { + // arraySize cannot be 0. + break; + } + imageInfo.arraySize--; + size = (cl_ulong)imageInfo.slicePitch * (cl_ulong)imageInfo.arraySize * 4 * 4; + } + + while (size > maxAllocSize || (size * 3) > memSize) { + imageInfo.height--; + imageInfo.slicePitch = imageInfo.height * imageInfo.rowPitch; + size = (cl_ulong)imageInfo.slicePitch * (cl_ulong)imageInfo.arraySize * 4 * 4; + } + + log_info( "Testing %d x %d x %d\n", (int)imageInfo.width, (int)imageInfo.height, (int)imageInfo.arraySize); + if ( test_fill_image_2D_array( device, &imageInfo, outputType, seed ) ) return -1; } diff --git a/test_conformance/images/clGetInfo/main.cpp b/test_conformance/images/clGetInfo/main.cpp index df3a03e1..3deeed49 100644 --- a/test_conformance/images/clGetInfo/main.cpp +++ b/test_conformance/images/clGetInfo/main.cpp @@ -57,11 +57,11 @@ int test_3D(cl_device_id deviceID, cl_context context, cl_command_queue queue, i return test_image_set( device, CL_MEM_OBJECT_IMAGE3D ); } -int test_1DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_1Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE1D_ARRAY ); } -int test_2DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_2Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE2D_ARRAY ); } @@ -70,16 +70,16 @@ basefn basefn_list[] = { test_1D, test_2D, test_3D, - test_1DArray, - test_2DArray, + test_1Darray, + test_2Darray, }; const char *basefn_names[] = { "1D", "2D", "3D", - "1DArray", - "2DArray", + "1Darray", + "2Darray", }; ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); diff --git a/test_conformance/images/clReadWriteImage/main.cpp b/test_conformance/images/clReadWriteImage/main.cpp index 260ba791..cfea18e2 100644 --- a/test_conformance/images/clReadWriteImage/main.cpp +++ b/test_conformance/images/clReadWriteImage/main.cpp @@ -52,11 +52,11 @@ int test_3D(cl_device_id deviceID, cl_context context, cl_command_queue queue, i { return test_image_set( device, CL_MEM_OBJECT_IMAGE3D ); } -int test_1DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_1Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE1D_ARRAY ); } -int test_2DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_2Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE2D_ARRAY ); } @@ -65,16 +65,16 @@ basefn basefn_list[] = { test_1D, test_2D, test_3D, - test_1DArray, - test_2DArray, + test_1Darray, + test_2Darray, }; const char *basefn_names[] = { "1D", "2D", "3D", - "1DArray", - "2DArray", + "1Darray", + "2Darray", }; ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); diff --git a/test_conformance/images/kernel_image_methods/main.cpp b/test_conformance/images/kernel_image_methods/main.cpp index 22cdd698..e10da63d 100644 --- a/test_conformance/images/kernel_image_methods/main.cpp +++ b/test_conformance/images/kernel_image_methods/main.cpp @@ -52,11 +52,11 @@ int test_3D(cl_device_id deviceID, cl_context context, cl_command_queue queue, i { return test_image_set( device, CL_MEM_OBJECT_IMAGE3D ); } -int test_1DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_1Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE1D_ARRAY ); } -int test_2DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_2Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE2D_ARRAY ); } @@ -65,16 +65,16 @@ basefn basefn_list[] = { test_1D, test_2D, test_3D, - test_1DArray, - test_2DArray, + test_1Darray, + test_2Darray, }; const char *basefn_names[] = { "1D", "2D", "3D", - "1DArray", - "2DArray", + "1Darray", + "2Darray", }; ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); diff --git a/test_conformance/images/samplerlessReads/main.cpp b/test_conformance/images/samplerlessReads/main.cpp index 587e612d..f14d4e1f 100644 --- a/test_conformance/images/samplerlessReads/main.cpp +++ b/test_conformance/images/samplerlessReads/main.cpp @@ -65,11 +65,11 @@ int test_3D(cl_device_id deviceID, cl_context context, cl_command_queue queue, i { return test_image_set( device, CL_MEM_OBJECT_IMAGE3D ); } -int test_1DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_1Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE1D_ARRAY ); } -int test_2DArray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +int test_2Darray(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return test_image_set( device, CL_MEM_OBJECT_IMAGE2D_ARRAY ); } @@ -78,16 +78,16 @@ basefn basefn_list[] = { test_1D, test_2D, test_3D, - test_1DArray, - test_2DArray, + test_1Darray, + test_2Darray, }; const char *basefn_names[] = { "1D", "2D", "3D", - "1DArray", - "2DArray", + "1Darray", + "2Darray", }; ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); diff --git a/test_conformance/math_brute_force/CMakeLists.txt b/test_conformance/math_brute_force/CMakeLists.txt index 2f4900c2..9eb2f8ae 100644 --- a/test_conformance/math_brute_force/CMakeLists.txt +++ b/test_conformance/math_brute_force/CMakeLists.txt @@ -23,6 +23,10 @@ set(${MODULE_NAME}_SOURCES ../../test_common/harness/ThreadPool.c ../../test_common/harness/mt19937.c ../../test_common/harness/msvc9.c + ../../test_common/harness/kernelHelpers.c + ../../test_common/harness/errorHelpers.c + ../../test_common/harness/testHarness.c + ../../test_common/harness/parseParameters.cpp ) @@ -46,26 +50,7 @@ set_source_files_properties( endif(NOT ANDROID) set_source_files_properties( - FunctionList.c - Sleep.c - binary.c - binaryOperator.c - Utility.c - binary_i.c - binary_two_results_i.c - i_unary.c - macro_binary.c - macro_unary.c - mad.c - main.c - reference_math.c - ternary.c - unary.c - unary_two_results.c - unary_two_results_i.c unary_u.c - ../../test_common/harness/rounding_mode.c - ../../test_common/harness/ThreadPool.c - ../../test_common/harness/msvc9.c + ${MODULE_NAME}_SOURCES PROPERTIES LANGUAGE CXX) if(CMAKE_COMPILER_IS_GNUCC) diff --git a/test_conformance/math_brute_force/FunctionList.h b/test_conformance/math_brute_force/FunctionList.h index 346654fb..b5ddb715 100644 --- a/test_conformance/math_brute_force/FunctionList.h +++ b/test_conformance/math_brute_force/FunctionList.h @@ -85,7 +85,7 @@ typedef struct Func float relaxed_error; int ftz; int relaxed; - const ::vtbl *vtbl; + const vtbl *vtbl_ptr; }Func; diff --git a/test_conformance/math_brute_force/Utility.h b/test_conformance/math_brute_force/Utility.h index 13651037..0dd1826c 100644 --- a/test_conformance/math_brute_force/Utility.h +++ b/test_conformance/math_brute_force/Utility.h @@ -26,11 +26,7 @@ #include #include "../../test_common/harness/rounding_mode.h" #include "../../test_common/harness/fpcontrol.h" - -#if defined( _WIN32) && defined (_MSC_VER) #include "../../test_common/harness/testHarness.h" -#endif - #include "../../test_common/harness/ThreadPool.h" #define BUFFER_SIZE (1024*1024*2) @@ -112,7 +108,7 @@ extern "C" { float Abs_Error( float test, double reference ); float Ulp_Error( float test, double reference ); //float Ulp_Error_Half( float test, double reference ); -float Ulp_Error_Double( double test, long double reference ); +float Bruteforce_Ulp_Error_Double( double test, long double reference ); #ifdef __cplusplus } //extern "C" #endif diff --git a/test_conformance/math_brute_force/binary.c b/test_conformance/math_brute_force/binary.c index 5800aaf5..7bf136ff 100644 --- a/test_conformance/math_brute_force/binary.c +++ b/test_conformance/math_brute_force/binary.c @@ -233,6 +233,7 @@ typedef struct TestInfo cl_kernel *k[VECTOR_SIZE_COUNT ]; // arrays of thread-specific kernels for each worker thread: k[vector_size][thread_id] ThreadInfo *tinfo; // An array of thread specific information for each worker thread cl_uint threadCount; // Number of worker threads + cl_uint jobCount; // Number of jobs cl_uint step; // step between each chunk and the next. cl_uint scale; // stride between individual test values float ulps; // max_allowed ulps @@ -268,6 +269,16 @@ int TestFunc_Float_Float_Float_common(const Func *f, MTdata d, int isNextafter) test_info.scale = (cl_uint) sizeof(cl_float) * 2 * gWimpyReductionFactor; } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ulps = gIsEmbedded ? f->float_embedded_ulps : f->float_ulps; test_info.ftz = f->ftz || gForceFTZ || 0 == (CL_FP_DENORM & gFloatCapabilities); @@ -341,7 +352,7 @@ int TestFunc_Float_Float_Float_common(const Func *f, MTdata d, int isNextafter) // Run the kernels if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestFloat, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestFloat, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors for( i = 0; i < test_info.threadCount; i++ ) @@ -991,6 +1002,16 @@ int TestFunc_Double_Double_Double_common(const Func *f, MTdata d, int isNextafte test_info.scale = (cl_uint) sizeof(cl_double) * 2 * gWimpyReductionFactor; } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ulps = f->double_ulps; test_info.ftz = f->ftz || gForceFTZ; @@ -1063,7 +1084,7 @@ int TestFunc_Double_Double_Double_common(const Func *f, MTdata d, int isNextafte if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestDouble, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestDouble, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors for( i = 0; i < test_info.threadCount; i++ ) @@ -1359,7 +1380,7 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { cl_double test = ((cl_double*) q)[j]; long double correct = func.f_ff( s[j], s2[j] ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); int fail = ! (fabsf(err) <= ulps); if( fail && ftz ) @@ -1399,8 +1420,8 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { long double correct2 = func.f_ff( 0.0, s2[j] ); long double correct3 = func.f_ff( -0.0, s2[j] ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; @@ -1422,10 +1443,10 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) correct3 = func.f_ff( -0.0, 0.0 ); long double correct4 = func.f_ff( 0.0, -0.0 ); long double correct5 = func.f_ff( -0.0, -0.0 ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps)) && (!(fabsf(err4) <= ulps)) && (!(fabsf(err5) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -1451,8 +1472,8 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { long double correct2 = func.f_ff( s[j], 0.0 ); long double correct3 = func.f_ff( s[j], -0.0 ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; diff --git a/test_conformance/math_brute_force/binaryOperator.c b/test_conformance/math_brute_force/binaryOperator.c index 718afd3d..09946cbe 100644 --- a/test_conformance/math_brute_force/binaryOperator.c +++ b/test_conformance/math_brute_force/binaryOperator.c @@ -207,6 +207,7 @@ typedef struct TestInfo cl_kernel *k[VECTOR_SIZE_COUNT ]; // arrays of thread-specific kernels for each worker thread: k[vector_size][thread_id] ThreadInfo *tinfo; // An array of thread specific information for each worker thread cl_uint threadCount; // Number of worker threads + cl_uint jobCount; // Number of jobs cl_uint step; // step between each chunk and the next. cl_uint scale; // stride between individual test values float ulps; // max_allowed ulps @@ -260,6 +261,16 @@ int TestFunc_Float_Float_Float_Operator(const Func *f, MTdata d) } test_info.step = test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ulps = gIsEmbedded ? f->float_embedded_ulps : f->float_ulps; test_info.ftz = f->ftz || gForceFTZ || 0 == (CL_FP_DENORM & gFloatCapabilities); @@ -329,7 +340,7 @@ int TestFunc_Float_Float_Float_Operator(const Func *f, MTdata d) if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestFloat, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestFloat, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors for( i = 0; i < test_info.threadCount; i++ ) @@ -501,63 +512,51 @@ static cl_int TestFloat( cl_uint job_id, cl_uint thread_id, void *data ) int totalSpecialValueCount = specialValuesFloatCount * specialValuesFloatCount; int indx = (totalSpecialValueCount - 1) / buffer_elements; - if( job_id <= (cl_uint)indx ) - { // test edge cases - float *fp = (float *)p; - float *fp2 = (float *)p2; + + if( job_id <= (cl_uint)indx ) { + // Insert special values uint32_t x, y; - x = (job_id * buffer_elements) % specialValuesFloatCount; - y = (job_id * buffer_elements) / specialValuesFloatCount; + x = (job_id * buffer_elements) % specialValuesFloatCount; + y = (job_id * buffer_elements) / specialValuesFloatCount; - for( ; j < buffer_elements; j++ ) - { - fp[j] = specialValuesFloat[x]; - fp2[j] = specialValuesFloat[y]; - if( ++x >= specialValuesFloatCount ) - { + for( ; j < buffer_elements; j++ ) { + p[j] = ((cl_uint *)specialValuesFloat)[x]; + p2[j] = ((cl_uint *)specialValuesFloat)[y]; + ++x; + if (x >= specialValuesFloatCount) { x = 0; y++; - if( y >= specialValuesFloatCount ) + if (y >= specialValuesFloatCount) break; } - if(gTestFastRelaxed && strcmp(name,"divide") == 0 ) - { - float fpj = *(float*)&fp[j]; - float fpj2 = *(float*)&fp2[j]; - if(fabs(fpj) > 0x5E800000 ) //[2^-62,2^62] - { - fp[j] = NAN; - } - if( fabs(fpj2) > 0x5E800000 ) //[2^-62,2^62] - { - fp2[j] = NAN; - } + if (gTestFastRelaxed && strcmp(name,"divide") == 0) { + cl_uint pj = p[j] & 0x7fffffff; + cl_uint p2j = p2[j] & 0x7fffffff; + // Replace values outside [2^-62, 2^62] with QNaN + if (pj < 0x20800000 || pj > 0x5e800000) + p[j] = 0x7fc00000; + if (p2j < 0x20800000 || p2j > 0x5e800000) + p2[j] = 0x7fc00000; + } } } - } - //Init any remaining values. + // Init any remaining values. for( ; j < buffer_elements; j++ ) { p[j] = genrand_int32(d); p2[j] = genrand_int32(d); - if(gTestFastRelaxed) - { - if( strcmp(name,"divide")==0){ - float pj = *(float*)&p[j]; - float pj2 = *(float*)&p2[j]; - if(fabs(pj) > 0x5E800000 ) //[2^-62,2^62] - { - p[j] = NAN; - } - if( fabs(pj2) > 0x5E800000 ) //[2^-62,2^62] - { - p2[j] = NAN; - } - } - } + if (gTestFastRelaxed && strcmp(name,"divide") == 0) { + cl_uint pj = p[j] & 0x7fffffff; + cl_uint p2j = p2[j] & 0x7fffffff; + // Replace values outside [2^-62, 2^62] with QNaN + if (pj < 0x20800000 || pj > 0x5e800000) + p[j] = 0x7fc00000; + if (p2j < 0x20800000 || p2j > 0x5e800000) + p2[j] = 0x7fc00000; + } } if( (error = clEnqueueWriteBuffer( tinfo->tQueue, tinfo->inBuf, CL_FALSE, 0, buffer_size, p, 0, NULL, NULL) )) @@ -950,6 +949,16 @@ int TestFunc_Double_Double_Double_Operator(const Func *f, MTdata d) } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ulps = f->double_ulps; test_info.ftz = f->ftz || gForceFTZ; @@ -1020,7 +1029,7 @@ int TestFunc_Double_Double_Double_Operator(const Func *f, MTdata d) if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestDouble, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestDouble, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors for( i = 0; i < test_info.threadCount; i++ ) @@ -1315,7 +1324,7 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { cl_double test = ((cl_double*) q)[j]; long double correct = func.f_ff( s[j], s2[j] ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); int fail = ! (fabsf(err) <= ulps); if( fail && ftz ) @@ -1334,8 +1343,8 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { long double correct2 = func.f_ff( 0.0, s2[j] ); long double correct3 = func.f_ff( -0.0, s2[j] ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; @@ -1357,10 +1366,10 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) correct3 = func.f_ff( -0.0, 0.0 ); long double correct4 = func.f_ff( 0.0, -0.0 ); long double correct5 = func.f_ff( -0.0, -0.0 ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps)) && (!(fabsf(err4) <= ulps)) && (!(fabsf(err5) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -1386,8 +1395,8 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { long double correct2 = func.f_ff( s[j], 0.0 ); long double correct3 = func.f_ff( s[j], -0.0 ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; diff --git a/test_conformance/math_brute_force/binary_i.c b/test_conformance/math_brute_force/binary_i.c index b72d117f..314d65dd 100644 --- a/test_conformance/math_brute_force/binary_i.c +++ b/test_conformance/math_brute_force/binary_i.c @@ -230,6 +230,7 @@ typedef struct TestInfo cl_kernel *k[VECTOR_SIZE_COUNT ]; // arrays of thread-specific kernels for each worker thread: k[vector_size][thread_id] ThreadInfo *tinfo; // An array of thread specific information for each worker thread cl_uint threadCount; // Number of worker threads + cl_uint jobCount; // Number of jobs cl_uint step; // step between each chunk and the next. cl_uint scale; // stride between individual test values float ulps; // max_allowed ulps @@ -262,6 +263,16 @@ int TestFunc_Float_Float_Int(const Func *f, MTdata d) test_info.scale = (cl_uint) sizeof(cl_float) * 2 * gWimpyReductionFactor; } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ulps = gIsEmbedded ? f->float_embedded_ulps : f->float_ulps; test_info.ftz = f->ftz || gForceFTZ || 0 == (CL_FP_DENORM & gFloatCapabilities); @@ -330,7 +341,7 @@ int TestFunc_Float_Float_Int(const Func *f, MTdata d) } // Run the kernels - error = ThreadPool_Do( TestFloat, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestFloat, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors @@ -758,6 +769,16 @@ int TestFunc_Double_Double_Int(const Func *f, MTdata d) test_info.scale = (cl_uint) sizeof(cl_double) * 2 * gWimpyReductionFactor; } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ulps = f->double_ulps; test_info.ftz = f->ftz || gForceFTZ; @@ -831,7 +852,7 @@ int TestFunc_Double_Double_Int(const Func *f, MTdata d) // Run the kernels if( !gSkipCorrectnessTesting ) - error = ThreadPool_Do( TestDouble, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestDouble, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors @@ -1128,7 +1149,7 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { cl_double test = ((cl_double*) q)[j]; long double correct = func.f_fi( s[j], s2[j] ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); int fail = ! (fabsf(err) <= ulps); if( fail && ftz ) @@ -1146,8 +1167,8 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { long double correct2 = func.f_fi( 0.0, s2[j] ); long double correct3 = func.f_fi( -0.0, s2[j] ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; diff --git a/test_conformance/math_brute_force/binary_two_results_i.c b/test_conformance/math_brute_force/binary_two_results_i.c index ab06c450..b1e80ede 100644 --- a/test_conformance/math_brute_force/binary_two_results_i.c +++ b/test_conformance/math_brute_force/binary_two_results_i.c @@ -871,7 +871,7 @@ int TestFunc_DoubleI_Double_Double(const Func *f, MTdata d) double test = ((double*) q)[j]; int correct2 = INT_MIN; long double correct = f->dfunc.f_ffpI( s[j], s2[j], &correct2 ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); int64_t iErr; // in case of remquo, we only care about the sign and last seven bits of @@ -907,8 +907,8 @@ int TestFunc_DoubleI_Double_Double(const Func *f, MTdata d) int correct3i, correct4i; long double correct3 = f->dfunc.f_ffpI( 0.0, s2[j], &correct3i ); long double correct4 = f->dfunc.f_ffpI( -0.0, s2[j], &correct4i ); - float err2 = Ulp_Error_Double( test, correct3 ); - float err3 = Ulp_Error_Double( test, correct4 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct4 ); int64_t iErr3 = (long long) q2[j] - (long long) correct3i; int64_t iErr4 = (long long) q2[j] - (long long) correct4i; fail = fail && ((!(fabsf(err2) <= f->double_ulps && iErr3 == 0)) && (!(fabsf(err3) <= f->double_ulps && iErr4 == 0))); @@ -937,10 +937,10 @@ int TestFunc_DoubleI_Double_Double(const Func *f, MTdata d) correct4 = f->dfunc.f_ffpI( -0.0, 0.0, &correct4i ); long double correct7 = f->dfunc.f_ffpI( 0.0, -0.0, &correct7i ); long double correct8 = f->dfunc.f_ffpI( -0.0, -0.0, &correct8i ); - err2 = Ulp_Error_Double( test, correct3 ); - err3 = Ulp_Error_Double( test, correct4 ); - float err4 = Ulp_Error_Double( test, correct7 ); - float err5 = Ulp_Error_Double( test, correct8 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct3 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct7 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct8 ); iErr3 = (long long) q2[j] - (long long) correct3i; iErr4 = (long long) q2[j] - (long long) correct4i; int64_t iErr7 = (long long) q2[j] - (long long) correct7i; @@ -979,8 +979,8 @@ int TestFunc_DoubleI_Double_Double(const Func *f, MTdata d) int correct3i, correct4i; long double correct3 = f->dfunc.f_ffpI( s[j], 0.0, &correct3i ); long double correct4 = f->dfunc.f_ffpI( s[j], -0.0, &correct4i ); - float err2 = Ulp_Error_Double( test, correct3 ); - float err3 = Ulp_Error_Double( test, correct4 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct4 ); int64_t iErr3 = (long long) q2[j] - (long long) correct3i; int64_t iErr4 = (long long) q2[j] - (long long) correct4i; fail = fail && ((!(fabsf(err2) <= f->double_ulps && iErr3 == 0)) && (!(fabsf(err3) <= f->double_ulps && iErr4 == 0))); diff --git a/test_conformance/math_brute_force/macro_binary.c b/test_conformance/math_brute_force/macro_binary.c index e489c598..b65948ee 100644 --- a/test_conformance/math_brute_force/macro_binary.c +++ b/test_conformance/math_brute_force/macro_binary.c @@ -222,6 +222,7 @@ typedef struct TestInfo cl_kernel *k[VECTOR_SIZE_COUNT ]; // arrays of thread-specific kernels for each worker thread: k[vector_size][thread_id] ThreadInfo *tinfo; // An array of thread specific information for each worker thread cl_uint threadCount; // Number of worker threads + cl_uint jobCount; // Number of jobs cl_uint step; // step between each chunk and the next. cl_uint scale; // stride between individual test values int ftz; // non-zero if running in flush to zero mode @@ -249,6 +250,16 @@ int TestMacro_Int_Float_Float(const Func *f, MTdata d) test_info.scale = (cl_uint) sizeof(cl_float) * 2 * gWimpyReductionFactor; } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ftz = f->ftz || gForceFTZ || 0 == (CL_FP_DENORM & gFloatCapabilities); @@ -319,7 +330,7 @@ int TestMacro_Int_Float_Float(const Func *f, MTdata d) // Run the kernels if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestFloat, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestFloat, test_info.jobCount, &test_info ); if( error ) goto exit; @@ -749,6 +760,16 @@ int TestMacro_Int_Double_Double(const Func *f, MTdata d) } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ftz = f->ftz || gForceFTZ; @@ -820,7 +841,7 @@ int TestMacro_Int_Double_Double(const Func *f, MTdata d) if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestDouble, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestDouble, test_info.jobCount, &test_info ); if( error ) goto exit; diff --git a/test_conformance/math_brute_force/macro_unary.c b/test_conformance/math_brute_force/macro_unary.c index 74e1dece..95af882a 100644 --- a/test_conformance/math_brute_force/macro_unary.c +++ b/test_conformance/math_brute_force/macro_unary.c @@ -193,6 +193,7 @@ typedef struct TestInfo cl_kernel *k[VECTOR_SIZE_COUNT ]; // arrays of thread-specific kernels for each worker thread: k[vector_size][thread_id] ThreadInfo *tinfo; // An array of thread specific information for each worker thread cl_uint threadCount; // Number of worker threads + cl_uint jobCount; // Number of jobs cl_uint step; // step between each chunk and the next. cl_uint scale; // stride between individual test values int ftz; // non-zero if running in flush to zero mode @@ -220,6 +221,16 @@ int TestMacro_Int_Float(const Func *f, MTdata d) test_info.scale = (cl_uint) sizeof(cl_float) * 2 * gWimpyReductionFactor; } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ftz = f->ftz || gForceFTZ || 0 == (CL_FP_DENORM & gFloatCapabilities); // cl_kernels aren't thread safe, so we make one for each vector size for every thread @@ -279,7 +290,7 @@ int TestMacro_Int_Float(const Func *f, MTdata d) if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestFloat, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestFloat, test_info.jobCount, &test_info ); if( error ) goto exit; @@ -602,6 +613,16 @@ int TestMacro_Int_Double(const Func *f, MTdata d) } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ftz = f->ftz || gForceFTZ; @@ -664,7 +685,7 @@ int TestMacro_Int_Double(const Func *f, MTdata d) if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestDouble, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestDouble, test_info.jobCount, &test_info ); if( error ) goto exit; diff --git a/test_conformance/math_brute_force/mad.c b/test_conformance/math_brute_force/mad.c index 844da097..652ab360 100644 --- a/test_conformance/math_brute_force/mad.c +++ b/test_conformance/math_brute_force/mad.c @@ -785,7 +785,7 @@ int TestFunc_mad_Double(const Func *f, MTdata d) { double test = ((double*) q)[j]; long double correct = f->dfunc.f_fff( s[j], s2[j], s3[j] ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); int fail = ! (fabsf(err) <= f->double_ulps); if( fail && ftz ) @@ -803,8 +803,8 @@ int TestFunc_mad_Double(const Func *f, MTdata d) { // look at me, long double correct2 = f->dfunc.f_fff( 0.0, s2[j], s3[j] ); long double correct3 = f->dfunc.f_fff( -0.0, s2[j], s3[j] ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; @@ -826,10 +826,10 @@ int TestFunc_mad_Double(const Func *f, MTdata d) correct3 = f->dfunc.f_fff( -0.0, 0.0, s3[j] ); long double correct4 = f->dfunc.f_fff( 0.0, -0.0, s3[j] ); long double correct5 = f->dfunc.f_fff( -0.0, -0.0, s3[j] ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -860,14 +860,14 @@ int TestFunc_mad_Double(const Func *f, MTdata d) long double correct7 = f->dfunc.f_fff( -0.0, 0.0, -0.0f ); long double correct8 = f->dfunc.f_fff( 0.0, -0.0, -0.0f ); long double correct9 = f->dfunc.f_fff( -0.0, -0.0, -0.0f ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - err4 = Ulp_Error_Double( test, correct4 ); - err5 = Ulp_Error_Double( test, correct5 ); - float err6 = Ulp_Error_Double( test, correct6 ); - float err7 = Ulp_Error_Double( test, correct7 ); - float err8 = Ulp_Error_Double( test, correct8 ); - float err9 = Ulp_Error_Double( test, correct9 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); + float err6 = Bruteforce_Ulp_Error_Double( test, correct6 ); + float err7 = Bruteforce_Ulp_Error_Double( test, correct7 ); + float err8 = Bruteforce_Ulp_Error_Double( test, correct8 ); + float err9 = Bruteforce_Ulp_Error_Double( test, correct9 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps)) && (!(fabsf(err6) <= f->double_ulps)) && @@ -907,10 +907,10 @@ int TestFunc_mad_Double(const Func *f, MTdata d) correct3 = f->dfunc.f_fff( -0.0, s2[j], 0.0 ); long double correct4 = f->dfunc.f_fff( 0.0, s2[j], -0.0 ); long double correct5 = f->dfunc.f_fff( -0.0, s2[j], -0.0 ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -936,8 +936,8 @@ int TestFunc_mad_Double(const Func *f, MTdata d) { long double correct2 = f->dfunc.f_fff( s[j], 0.0, s3[j] ); long double correct3 = f->dfunc.f_fff( s[j], -0.0, s3[j] ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; @@ -959,10 +959,10 @@ int TestFunc_mad_Double(const Func *f, MTdata d) correct3 = f->dfunc.f_fff( s[j], -0.0, 0.0 ); long double correct4 = f->dfunc.f_fff( s[j], 0.0, -0.0 ); long double correct5 = f->dfunc.f_fff( s[j], -0.0, -0.0 ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -988,8 +988,8 @@ int TestFunc_mad_Double(const Func *f, MTdata d) { long double correct2 = f->dfunc.f_fff( s[j], s2[j], 0.0 ); long double correct3 = f->dfunc.f_fff( s[j], s2[j], -0.0 ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; diff --git a/test_conformance/math_brute_force/main.c b/test_conformance/math_brute_force/main.c index 6e34071b..92600e9a 100644 --- a/test_conformance/math_brute_force/main.c +++ b/test_conformance/math_brute_force/main.c @@ -13,6 +13,7 @@ // See the License for the specific language governing permissions and // limitations under the License. // +#include "../../test_common/harness/parseParameters.h" #include "Utility.h" #include @@ -39,6 +40,8 @@ #include #endif +#include "../../test_common/harness/testHarness.h" + #define kPageSize 4096 #define DOUBLE_REQUIRED_FEATURES ( CL_FP_FMA | CL_FP_ROUND_TO_NEAREST | CL_FP_ROUND_TO_ZERO | CL_FP_ROUND_TO_INF | CL_FP_INF_NAN | CL_FP_DENORM ) @@ -51,10 +54,11 @@ cl_context gContext = NULL; cl_command_queue gQueue = NULL; int gTestCount = 0; int gFailCount = 0; -int32_t gStartTestNumber = -1; -int32_t gEndTestNumber = -1; +static int32_t gStartTestNumber; +static int32_t gEndTestNumber; int gSkipCorrectnessTesting = 0; int gStopOnError = 0; +static bool gSkipRestOfTests; #if defined( __APPLE__ ) int gMeasureTimes = 1; #else @@ -78,8 +82,6 @@ int gDeviceILogb0 = 1; int gDeviceILogbNaN = 1; int gCheckTininessBeforeRounding = 1; int gIsInRTZMode = 0; -int gInfNanSupport = 1; -int gIsEmbedded = 0; uint32_t gMaxVectorSizeIndex = VECTOR_SIZE_COUNT; uint32_t gMinVectorSizeIndex = 0; const char *method[] = { "Best", "Average" }; @@ -100,7 +102,7 @@ uint32_t gSimdSize = 1; uint32_t gDeviceFrequency = 0; cl_uint chosen_device_index = 0; cl_uint chosen_platform_index = 0; -cl_uint gRandomSeed = 0; +static MTdata gMTdata; cl_device_fp_config gFloatCapabilities = 0; cl_device_fp_config gDoubleCapabilities = 0; int gWimpyReductionFactor = 32; @@ -136,11 +138,786 @@ static int IsTininessDetectedBeforeRounding( void ); static int IsInRTZMode( void ); //expensive. Please check gIsInRTZMode global instead. static void TestFinishAtExit(void); + +int doTest( const char* name ) +{ + if( gSkipRestOfTests ) + { + vlog( "Skipping function because of an earlier error.\n" ); + return 1; + } + + int error = 0; + const Func* func_data = NULL; + + for( size_t i = 0; i < functionListCount; i++ ) + { + const Func* const temp_func = functionList + i; + if( strcmp( temp_func->name, name ) == 0 ) + { + if( i < gStartTestNumber || i > gEndTestNumber ) + { + vlog( "Skipping function #%d\n", i ); + return 0; + } + + func_data = temp_func; + break; + } + } + + if( func_data == NULL ) + { + vlog( "Function '%s' doesn't exist!\n", name ); + exit( EXIT_FAILURE ); + } + + if( func_data->func.p == NULL ) + { + vlog( "'%s' is missing implementation, skipping function.\n", func_data->name ); + return 0; + } + + // if correctly rounded divide & sqrt are supported by the implementation + // then test it; otherwise skip the test + if( strcmp( func_data->name, "sqrt_cr" ) == 0 || strcmp( func_data->name, "divide_cr" ) == 0 ) + { + if( ( gFloatCapabilities & CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT ) == 0 ) + { + vlog( "Correctly rounded divide and sqrt are not supported, skipping function.\n" ); + return 0; + } + } + + { + extern int my_ilogb(double); + if( 0 == strcmp( "ilogb", func_data->name ) ) + { + InitILogbConstants(); + } + + if ( gTestFastRelaxed ) + { + if( func_data->relaxed ) + { + gTestCount++; + vlog( "%3d: ", gTestCount ); + if( func_data->vtbl_ptr->TestFunc( func_data, gMTdata ) ) + { + gFailCount++; + error++; + if( gStopOnError ) + { + gSkipRestOfTests = true; + return error; + } + } + } + } + + if( gTestFloat ) + { + int testFastRelaxedTmp = gTestFastRelaxed; + gTestFastRelaxed = 0; + + gTestCount++; + vlog( "%3d: ", gTestCount ); + if( func_data->vtbl_ptr->TestFunc( func_data, gMTdata ) ) + { + gFailCount++; + error++; + if( gStopOnError ) + { + gTestFastRelaxed = testFastRelaxedTmp; + gSkipRestOfTests = true; + return error; + } + } + gTestFastRelaxed = testFastRelaxedTmp; + } + + if( gHasDouble && NULL != func_data->vtbl_ptr->DoubleTestFunc && NULL != func_data->dfunc.p ) + { + //Disable fast-relaxed-math for double precision floating-point + int testFastRelaxedTmp = gTestFastRelaxed; + gTestFastRelaxed = 0; + + gTestCount++; + vlog( "%3d: ", gTestCount ); + if( func_data->vtbl_ptr->DoubleTestFunc( func_data, gMTdata ) ) + { + gFailCount++; + error++; + if( gStopOnError ) + { + gTestFastRelaxed = testFastRelaxedTmp; + gSkipRestOfTests = true; + return error; + } + } + + //Re-enable testing fast-relaxed-math mode + gTestFastRelaxed = testFastRelaxedTmp; + } + +#if defined( __APPLE__ ) + { + if( gHasBasicDouble && NULL != func_data->vtbl_ptr->DoubleTestFunc && NULL != func_data->dfunc.p) + { + //Disable fast-relaxed-math for double precision floating-point + int testFastRelaxedTmp = gTestFastRelaxed; + gTestFastRelaxed = 0; + + int isBasicTest = 0; + for( j = 0; j < gNumBasicDoubleFuncs; j++ ) { + if( 0 == strcmp(gBasicDoubleFuncs[j], func_data->name ) ) { + isBasicTest = 1; + break; + } + } + if (isBasicTest) { + gTestCount++; + if( gTestFloat ) + vlog( " " ); + if( func_data->vtbl->DoubleTestFunc( func_data, gMTdata ) ) + { + gFailCount++; + error++; + if( gStopOnError ) + { + gTestFastRelaxed = testFastRelaxedTmp; + gSkipRestOfTests = true; + return error; + } + } + } + + //Re-enable testing fast-relaxed-math mode + gTestFastRelaxed = testFastRelaxedTmp; + } + } +#endif + } + + return error; +} + +int test_acos( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "acos" ); +} +int test_acosh( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "acosh" ); +} +int test_acospi( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "acospi" ); +} +int test_asin( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "asin" ); +} +int test_asinh( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "asinh" ); +} +int test_asinpi( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "asinpi" ); +} +int test_atan( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "atan" ); +} +int test_atanh( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "atanh" ); +} +int test_atanpi( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "atanpi" ); +} +int test_atan2( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "atan2" ); +} +int test_atan2pi( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "atan2pi" ); +} +int test_cbrt( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "cbrt" ); +} +int test_ceil( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "ceil" ); +} +int test_copysign( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "copysign" ); +} +int test_cos( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "cos" ); +} +int test_cosh( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "cosh" ); +} +int test_cospi( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "cospi" ); +} +int test_exp( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "exp" ); +} +int test_exp2( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "exp2" ); +} +int test_exp10( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "exp10" ); +} +int test_expm1( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "expm1" ); +} +int test_fabs( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "fabs" ); +} +int test_fdim( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "fdim" ); +} +int test_floor( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "floor" ); +} +int test_fma( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "fma" ); +} +int test_fmax( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "fmax" ); +} +int test_fmin( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "fmin" ); +} +int test_fmod( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "fmod" ); +} +int test_fract( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "fract" ); +} +int test_frexp( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "frexp" ); +} +int test_hypot( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "hypot" ); +} +int test_ilogb( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "ilogb" ); +} +int test_isequal( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isequal" ); +} +int test_isfinite( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isfinite" ); +} +int test_isgreater( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isgreater" ); +} +int test_isgreaterequal( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isgreaterequal" ); +} +int test_isinf( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isinf" ); +} +int test_isless( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isless" ); +} +int test_islessequal( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "islessequal" ); +} +int test_islessgreater( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "islessgreater" ); +} +int test_isnan( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isnan" ); +} +int test_isnormal( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isnormal" ); +} +int test_isnotequal( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isnotequal" ); +} +int test_isordered( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isordered" ); +} +int test_isunordered( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "isunordered" ); +} +int test_ldexp( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "ldexp" ); +} +int test_lgamma( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "lgamma" ); +} +int test_lgamma_r( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "lgamma_r" ); +} +int test_log( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "log" ); +} +int test_log2( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "log2" ); +} +int test_log10( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "log10" ); +} +int test_log1p( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "log1p" ); +} +int test_logb( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "logb" ); +} +int test_mad( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "mad" ); +} +int test_maxmag( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "maxmag" ); +} +int test_minmag( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "minmag" ); +} +int test_modf( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "modf" ); +} +int test_nan( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "nan" ); +} +int test_nextafter( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "nextafter" ); +} +int test_pow( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "pow" ); +} +int test_pown( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "pown" ); +} +int test_powr( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "powr" ); +} +int test_remainder( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "remainder" ); +} +int test_remquo( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "remquo" ); +} +int test_rint( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "rint" ); +} +int test_rootn( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "rootn" ); +} +int test_round( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "round" ); +} +int test_rsqrt( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "rsqrt" ); +} +int test_signbit( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "signbit" ); +} +int test_sin( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "sin" ); +} +int test_sincos( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "sincos" ); +} +int test_sinh( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "sinh" ); +} +int test_sinpi( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "sinpi" ); +} +int test_sqrt( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "sqrt" ); +} +int test_sqrt_cr( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "sqrt_cr" ); +} +int test_tan( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "tan" ); +} +int test_tanh( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "tanh" ); +} +int test_tanpi( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "tanpi" ); +} +int test_trunc( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "trunc" ); +} +int test_half_cos( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_cos" ); +} +int test_half_divide( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_divide" ); +} +int test_half_exp( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_exp" ); +} +int test_half_exp2( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_exp2" ); +} +int test_half_exp10( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_exp10" ); +} +int test_half_log( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_log" ); +} +int test_half_log2( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_log2" ); +} +int test_half_log10( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_log10" ); +} +int test_half_powr( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_powr" ); +} +int test_half_recip( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_recip" ); +} +int test_half_rsqrt( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_rsqrt" ); +} +int test_half_sin( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_sin" ); +} +int test_half_sqrt( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_sqrt" ); +} +int test_half_tan( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "half_tan" ); +} +int test_add( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "add" ); +} +int test_subtract( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "subtract" ); +} +int test_divide( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "divide" ); +} +int test_divide_cr( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "divide_cr" ); +} +int test_multiply( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "multiply" ); +} +int test_assignment( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "assignment" ); +} +int test_not( cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements ) +{ + return doTest( "not" ); +} + +basefn basefn_list[] = { + test_acos, + test_acosh, + test_acospi, + test_asin, + test_asinh, + test_asinpi, + test_atan, + test_atanh, + test_atanpi, + test_atan2, + test_atan2pi, + test_cbrt, + test_ceil, + test_copysign, + test_cos, + test_cosh, + test_cospi, + test_exp, + test_exp2, + test_exp10, + test_expm1, + test_fabs, + test_fdim, + test_floor, + test_fma, + test_fmax, + test_fmin, + test_fmod, + test_fract, + test_frexp, + test_hypot, + test_ilogb, + test_isequal, + test_isfinite, + test_isgreater, + test_isgreaterequal, + test_isinf, + test_isless, + test_islessequal, + test_islessgreater, + test_isnan, + test_isnormal, + test_isnotequal, + test_isordered, + test_isunordered, + test_ldexp, + test_lgamma, + test_lgamma_r, + test_log, + test_log2, + test_log10, + test_log1p, + test_logb, + test_mad, + test_maxmag, + test_minmag, + test_modf, + test_nan, + test_nextafter, + test_pow, + test_pown, + test_powr, + test_remainder, + test_remquo, + test_rint, + test_rootn, + test_round, + test_rsqrt, + test_signbit, + test_sin, + test_sincos, + test_sinh, + test_sinpi, + test_sqrt, + test_sqrt_cr, + test_tan, + test_tanh, + test_tanpi, + test_trunc, + test_half_cos, + test_half_divide, + test_half_exp, + test_half_exp2, + test_half_exp10, + test_half_log, + test_half_log2, + test_half_log10, + test_half_powr, + test_half_recip, + test_half_rsqrt, + test_half_sin, + test_half_sqrt, + test_half_tan, + test_add, + test_subtract, + test_divide, + test_divide_cr, + test_multiply, + test_assignment, + test_not, +}; + +const char *basefn_names[] = { + "acos", + "acosh", + "acospi", + "asin", + "asinh", + "asinpi", + "atan", + "atanh", + "atanpi", + "atan2", + "atan2pi", + "cbrt", + "ceil", + "copysign", + "cos", + "cosh", + "cospi", + "exp", + "exp2", + "exp10", + "expm1", + "fabs", + "fdim", + "floor", + "fma", + "fmax", + "fmin", + "fmod", + "fract", + "frexp", + "hypot", + "ilogb", + "isequal", + "isfinite", + "isgreater", + "isgreaterequal", + "isinf", + "isless", + "islessequal", + "islessgreater", + "isnan", + "isnormal", + "isnotequal", + "isordered", + "isunordered", + "ldexp", + "lgamma", + "lgamma_r", + "log", + "log2", + "log10", + "log1p", + "logb", + "mad", + "maxmag", + "minmag", + "modf", + "nan", + "nextafter", + "pow", + "pown", + "powr", + "remainder", + "remquo", + "rint", + "rootn", + "round", + "rsqrt", + "signbit", + "sin", + "sincos", + "sinh", + "sinpi", + "sqrt", + "sqrt_cr", + "tan", + "tanh", + "tanpi", + "trunc", + "half_cos", + "half_divide", + "half_exp", + "half_exp2", + "half_exp10", + "half_log", + "half_log2", + "half_log10", + "half_powr", + "half_recip", + "half_rsqrt", + "half_sin", + "half_sqrt", + "half_tan", + "add", + "subtract", + "divide", + "divide_cr", + "multiply", + "assignment", + "not", +}; + +ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); + +const int num_fns = sizeof(basefn_names) / sizeof(char *); + #pragma mark - int main (int argc, const char * argv[]) { - unsigned int i, j, error = 0; + int error; test_start(); atexit(TestFinishAtExit); @@ -178,7 +955,7 @@ int main (int argc, const char * argv[]) vlog( " \t "); if( gWimpyMode ) vlog( " " ); - for( i = gMinVectorSizeIndex; i < gMaxVectorSizeIndex; i++ ) + for( int i = gMinVectorSizeIndex; i < gMaxVectorSizeIndex; i++ ) vlog( "\t float%s", sizeNames[i] ); } else @@ -192,147 +969,21 @@ int main (int argc, const char * argv[]) vlog( "\n-----------------------------------------------------------------------------------------------------------\n" ); - uint32_t start = 0; - if( gStartTestNumber > (int) start ) + gMTdata = init_genrand( gRandomSeed ); + if( gEndTestNumber == 0 ) { - vlog( "Skipping to test %d...\n", gStartTestNumber ); - start = gStartTestNumber; + gEndTestNumber = functionListCount; } - uint32_t stop = (uint32_t) functionListCount; - MTdata d = init_genrand( gRandomSeed ); - if( gStartTestNumber <= gEndTestNumber && -1 != gEndTestNumber && (int) functionListCount > gEndTestNumber + 1) - stop = gEndTestNumber + 1; - FPU_mode_type oldMode; DisableFTZ( &oldMode ); - for( i = start; i < stop; i++ ) - { - const Func *f = functionList + i; - - // If the user passed a list of functions to run, make sure we are in that list - if( gTestNameCount ) - { - for( j = 0; j < gTestNameCount; j++ ) - if( 0 == strcmp(gTestNames[j], f->name ) ) - break; - - // If this function doesn't match any on the list skip to the next function - if( j == gTestNameCount ) - continue; - } - - // if correctly rounded divide & sqrt are supported by the implementation - // then test it; otherwise skip the test - if (!strcmp(f->name, "sqrt_cr") || !strcmp(f->name, "divide_cr")) - { - if(( gFloatCapabilities & CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT ) == 0 ) - continue; - - } - - - { - extern int my_ilogb(double); - if( 0 == strcmp( "ilogb", f->name) ) - InitILogbConstants(); - - if ( gTestFastRelaxed ) - { - if( f->relaxed ) - { - gTestCount++; - vlog( "%3d: ", gTestCount ); - if( f->vtbl->TestFunc( f, d ) ) - { - gFailCount++; - error++; - if( gStopOnError ) - break; - } - } - } - - if( gTestFloat ) - { - int testFastRelaxedTmp = gTestFastRelaxed; - gTestFastRelaxed = 0; - gTestCount++; - vlog( "%3d: ", gTestCount ); - if( f->vtbl->TestFunc( f, d ) ) - { - gFailCount++; - error++; - if( gStopOnError ) - { - gTestFastRelaxed = testFastRelaxedTmp; - break; - } - } - gTestFastRelaxed = testFastRelaxedTmp; - } - - if( gHasDouble && NULL != f->vtbl->DoubleTestFunc && NULL != f->dfunc.p ) - { - //Disable fast-relaxed-math for double precision floating-point - int testFastRelaxedTmp = gTestFastRelaxed; - gTestFastRelaxed = 0; - - gTestCount++; - vlog( "%3d: ", gTestCount ); - if( f->vtbl->DoubleTestFunc( f, d ) ) - { - gFailCount++; - error++; - if( gStopOnError ) - break; - } - - //Re-enable testing fast-relaxed-math mode - gTestFastRelaxed = testFastRelaxedTmp; - } - -#if defined( __APPLE__ ) - { - if( gHasBasicDouble && NULL != f->vtbl->DoubleTestFunc && NULL != f->dfunc.p) - { - //Disable fast-relaxed-math for double precision floating-point - int testFastRelaxedTmp = gTestFastRelaxed; - gTestFastRelaxed = 0; - - int isBasicTest = 0; - for( j = 0; j < gNumBasicDoubleFuncs; j++ ) { - if( 0 == strcmp(gBasicDoubleFuncs[j], f->name ) ) { - isBasicTest = 1; - break; - } - } - if (isBasicTest) { - gTestCount++; - if( gTestFloat ) - vlog( " " ); - if( f->vtbl->DoubleTestFunc( f, d ) ) - { - gFailCount++; - error++; - if( gStopOnError ) - break; - } - } - - //Re-enable testing fast-relaxed-math mode - gTestFastRelaxed = testFastRelaxedTmp; - } - } -#endif - } - } + int ret = parseAndCallCommandLineTests( gTestNameCount, gTestNames, NULL, num_fns, basefn_list, basefn_names, true, 0, 0 ); RestoreFPState( &oldMode ); - free_mtdata(d); d = NULL; - vlog( "\ndone.\n" ); + free_mtdata(gMTdata); + free(gTestNames); int error_code = clFinish(gQueue); if (error_code) @@ -341,16 +992,16 @@ int main (int argc, const char * argv[]) if (gFailCount == 0) { if (gTestCount > 1) - vlog("PASSED %d of %d tests.\n", gTestCount, gTestCount); + vlog("PASSED %d of %d sub-tests.\n", gTestCount, gTestCount); else - vlog("PASSED test.\n"); + vlog("PASSED sub-test.\n"); } else if (gFailCount > 0) { if (gTestCount > 1) - vlog_error("FAILED %d of %d tests.\n", gFailCount, gTestCount); + vlog_error("FAILED %d of %d sub-tests.\n", gFailCount, gTestCount); else - vlog_error("FAILED test.\n"); + vlog_error("FAILED sub-test.\n"); } ReleaseCL(); @@ -363,23 +1014,22 @@ int main (int argc, const char * argv[]) vlog( "time: %f s\n", time ); #endif - - if (gFailCount > 0) - return -1; - return error; + return ret; } static int ParseArgs( int argc, const char **argv ) { int i; gTestNames = (const char**) calloc( argc - 1, sizeof( char*) ); - gTestNameCount = 0; + if( NULL == gTestNames ) + { + vlog( "Failed to allocate memory for gTestNames array.\n" ); + return 1; + } + gTestNames[0] = argv[0]; + gTestNameCount = 1; int singleThreaded = 0; - // Parse arg list - if( NULL == gTestNames && argc > 1 ) - return -1; - { // Extract the app name strncpy( appName, argv[0], MAXPATHLEN ); @@ -490,24 +1140,7 @@ static int ParseArgs( int argc, const char **argv ) break; case '[': - // wimpy reduction factor can be set with the option -[2^n] - // Default factor is 32, and n practically can be from 1 to 10 - { - const char *arg_temp = strchr(&arg[1], ']'); - if( arg_temp != 0) - { - int new_factor = atoi(&arg[1]); - arg=arg_temp; // Advance until ']' - if(new_factor && !(new_factor & (new_factor - 1))) - { - vlog( " WimpyReduction factor changed from %d to %d \n",gWimpyReductionFactor, new_factor); - gWimpyReductionFactor = new_factor; - }else - { - vlog( " Error in WimpyReduction factor %d, must be power of 2 \n",gWimpyReductionFactor); - } - } - } + parseWimpyReductionFactor(arg, gWimpyReductionFactor); break; case 'z': @@ -573,7 +1206,7 @@ static int ParseArgs( int argc, const char **argv ) long number = strtol( arg, &t, 0 ); if( t != arg ) { - if( -1 == gStartTestNumber ) + if( 0 == gStartTestNumber ) gStartTestNumber = (int32_t) number; else gEndTestNumber = gStartTestNumber + (int32_t) number; @@ -596,19 +1229,18 @@ static int ParseArgs( int argc, const char **argv ) if (k >= functionListCount) { //It may be a device type or rundomize parameter - if( 0 == strcmp(arg, "CL_DEVICE_TYPE_CPU")) { + if( 0 == strcmp(arg, "CL_DEVICE_TYPE_CPU")) { gDeviceType = CL_DEVICE_TYPE_CPU; - } else if( 0 == strcmp(arg, "CL_DEVICE_TYPE_GPU")) { + } else if( 0 == strcmp(arg, "CL_DEVICE_TYPE_GPU")) { gDeviceType = CL_DEVICE_TYPE_GPU; - } else if( 0 == strcmp(arg, "CL_DEVICE_TYPE_ACCELERATOR")) { + } else if( 0 == strcmp(arg, "CL_DEVICE_TYPE_ACCELERATOR")) { gDeviceType = CL_DEVICE_TYPE_ACCELERATOR; - } else if( 0 == strcmp(arg, "randomize")) { + } else if( 0 == strcmp(arg, "randomize")) { gRandomSeed = (cl_uint) time( NULL ); vlog( "\nRandom seed: %u.\n", gRandomSeed ); - } else { - vlog_error("\nInvalid function name: %s\n", arg); - test_finish(); - exit(-1); + } else { + gTestNames[gTestNameCount] = arg; + gTestNameCount++; } } } @@ -690,6 +1322,8 @@ static void PrintArch( void ) vlog( "\tARCH:\tx86_64\n" ); #elif defined( __arm__ ) vlog( "\tARCH:\tarm\n" ); + #elif defined( __aarch64__ ) + vlog( "\tARCH:\taarch64\n"); #else vlog( "\tARCH:\tunknown\n" ); #endif @@ -770,7 +1404,7 @@ static void PrintUsage( void ) vlog( "\n" ); } -static void CL_CALLBACK notify_callback(const char *errinfo, const void *private_info, size_t cb, void *user_data) +static void CL_CALLBACK bruteforce_notify_callback(const char *errinfo, const void *private_info, size_t cb, void *user_data) { vlog( "%s (%p, %zd, %p)\n", errinfo, private_info, cb, user_data ); } @@ -979,7 +1613,7 @@ static int InitCL( void ) else isEmbedded = NULL != strstr(profile, "EMBEDDED_PROFILE"); // we will verify this with a kernel below - gContext = clCreateContext( NULL, 1, &gDevice, notify_callback, NULL, &error ); + gContext = clCreateContext( NULL, 1, &gDevice, bruteforce_notify_callback, NULL, &error ); if( NULL == gContext || error ) { vlog_error( "clCreateContext failed. (%d) \n", error ); @@ -1137,7 +1771,7 @@ static int InitCL( void ) vlog( "\t\t All double results that do not match the reference result have their reported\n" ); vlog( "\t\t error inflated by 0.5 ulps to account for the fact that this system\n" ); vlog( "\t\t can not accurately represent the right result to an accuracy closer\n" ); - vlog( "\t\t than half an ulp. See comments in Ulp_Error_Double() for more details.\n\n" ); + vlog( "\t\t than half an ulp. See comments in Bruteforce_Ulp_Error_Double() for more details.\n\n" ); } #if defined( __APPLE__ ) vlog( "\tTesting basic double precision? %s\n", no_yes[0 != gHasBasicDouble] ); @@ -1512,7 +2146,7 @@ const char *sizeNames[ VECTOR_SIZE_COUNT] = { "", "2", "3", "4", "8", "16" }; const int sizeValues[ VECTOR_SIZE_COUNT] = { 1, 2, 3, 4, 8, 16 }; // TODO: There is another version of Ulp_Error_Double defined in test_common/harness/errorHelpers.c -float Ulp_Error_Double( double test, long double reference ) +float Bruteforce_Ulp_Error_Double( double test, long double reference ) { //Check for Non-power-of-two and NaN @@ -1609,74 +2243,6 @@ float Ulp_Error_Double( double test, long double reference ) return result; } - -float Ulp_Error( float test, double reference ) -{ - union{ double d; uint64_t u; }u; u.d = reference; - double testVal = test; - - // Note: This function presumes that someone has already tested whether the result is correctly, - // rounded before calling this function. That test: - // - // if( (float) reference == test ) - // return 0.0f; - // - // would ensure that cases like fabs(reference) > FLT_MAX are weeded out before we get here. - // Otherwise, we'll return inf ulp error here, for what are otherwise correctly rounded - // results. - - - if( isinf( reference ) ) - { - if( testVal == reference ) - return 0.0f; - - return (float) (testVal - reference ); - } - - if( isinf( testVal) ) - { // infinite test value, but finite (but possibly overflowing in float) reference. - // - // The function probably overflowed prematurely here. Formally, the spec says this is - // an infinite ulp error and should not be tolerated. Unfortunately, this would mean - // that the internal precision of some half_pow implementations would have to be 29+ bits - // at half_powr( 0x1.fffffep+31, 4) to correctly determine that 4*log2( 0x1.fffffep+31 ) - // is not exactly 128.0. You might represent this for example as 4*(32 - ~2**-24), which - // after rounding to single is 4*32 = 128, which will ultimately result in premature - // overflow, even though a good faith representation would be correct to within 2**-29 - // interally. - - // In the interest of not requiring the implementation go to extraordinary lengths to - // deliver a half precision function, we allow premature overflow within the limit - // of the allowed ulp error. Towards, that end, we "pretend" the test value is actually - // 2**128, the next value that would appear in the number line if float had sufficient range. - testVal = copysign( MAKE_HEX_DOUBLE(0x1.0p128, 0x1LL, 128), testVal ); - - // Note that the same hack may not work in long double, which is not guaranteed to have - // more range than double. It is not clear that premature overflow should be tolerated for - // double. - } - - if( u.u & 0x000fffffffffffffULL ) - { // Non-power of two and NaN - if( isnan( reference ) && isnan( test ) ) - return 0.0f; // if we are expecting a NaN, any NaN is fine - - // The unbiased exponent of the ulp unit place - int ulp_exp = FLT_MANT_DIG - 1 - MAX( ilogb( reference), FLT_MIN_EXP-1 ); - - // Scale the exponent of the error - return (float) scalbn( testVal - reference, ulp_exp ); - } - - // reference is a normal power of two or a zero - // The unbiased exponent of the ulp unit place - int ulp_exp = FLT_MANT_DIG - 1 - MAX( ilogb( reference) - 1, FLT_MIN_EXP-1 ); - - // Scale the exponent of the error - return (float) scalbn( testVal - reference, ulp_exp ); -} - float Abs_Error( float test, double reference ) { if( isnan(test) && isnan(reference) ) @@ -1786,25 +2352,6 @@ cl_uint RoundUpToNextPowerOfTwo( cl_uint x ) return x+x; } -#if !defined( __APPLE__ ) -void memset_pattern4(void *dest, const void *src_pattern, size_t bytes ) -{ - uint32_t pat = ((uint32_t*) src_pattern)[0]; - size_t count = bytes / 4; - size_t i; - uint32_t *d = (uint32_t*)dest; - - for( i = 0; i < count; i++ ) - d[i] = pat; - - d += i; - - bytes &= 3; - if( bytes ) - memcpy( d, src_pattern, bytes ); -} -#endif - void TestFinishAtExit(void) { test_finish(); } diff --git a/test_conformance/math_brute_force/reference_math.c b/test_conformance/math_brute_force/reference_math.c index d90f4508..6e8f79aa 100644 --- a/test_conformance/math_brute_force/reference_math.c +++ b/test_conformance/math_brute_force/reference_math.c @@ -1790,7 +1790,7 @@ static const double //two52 = 4.50359962737049600000e+15, /* 0x43300000, 0x00000 // *signgamp = 1; ix = hx&0x7fffffff; if(ix>=0x7ff00000) return x*x; - if((ix|lx)==0) return one/zero; + if((ix|lx)==0) return INFINITY; if(ix<0x3b900000) { /* |x|<2**-70, return -log(|x|) */ if(hx<0) { // *signgamp = -1; @@ -1799,9 +1799,9 @@ static const double //two52 = 4.50359962737049600000e+15, /* 0x43300000, 0x00000 } if(hx<0) { if(ix>=0x43300000) /* |x|>=2**52, must be -integer */ - return one/zero; + return INFINITY; t = reference_sinpi(x); - if(t==zero) return one/zero; /* -integer */ + if(t==zero) return INFINITY; /* -integer */ nadj = reference_log(pi/reference_fabs(t*x)); // if(tdfunc.f_fff( s[j], s2[j], s3[j] ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); int fail = ! (fabsf(err) <= f->double_ulps); if( fail && ftz ) @@ -1028,8 +1028,8 @@ int TestFunc_Double_Double_Double_Double(const Func *f, MTdata d) { // look at me, long double correct2 = f->dfunc.f_fff( 0.0, s2[j], s3[j] ); long double correct3 = f->dfunc.f_fff( -0.0, s2[j], s3[j] ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; @@ -1051,10 +1051,10 @@ int TestFunc_Double_Double_Double_Double(const Func *f, MTdata d) correct3 = f->dfunc.f_fff( -0.0, 0.0, s3[j] ); long double correct4 = f->dfunc.f_fff( 0.0, -0.0, s3[j] ); long double correct5 = f->dfunc.f_fff( -0.0, -0.0, s3[j] ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -1085,14 +1085,14 @@ int TestFunc_Double_Double_Double_Double(const Func *f, MTdata d) long double correct7 = f->dfunc.f_fff( -0.0, 0.0, -0.0f ); long double correct8 = f->dfunc.f_fff( 0.0, -0.0, -0.0f ); long double correct9 = f->dfunc.f_fff( -0.0, -0.0, -0.0f ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - err4 = Ulp_Error_Double( test, correct4 ); - err5 = Ulp_Error_Double( test, correct5 ); - float err6 = Ulp_Error_Double( test, correct6 ); - float err7 = Ulp_Error_Double( test, correct7 ); - float err8 = Ulp_Error_Double( test, correct8 ); - float err9 = Ulp_Error_Double( test, correct9 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); + float err6 = Bruteforce_Ulp_Error_Double( test, correct6 ); + float err7 = Bruteforce_Ulp_Error_Double( test, correct7 ); + float err8 = Bruteforce_Ulp_Error_Double( test, correct8 ); + float err9 = Bruteforce_Ulp_Error_Double( test, correct9 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps)) && (!(fabsf(err6) <= f->double_ulps)) && @@ -1132,10 +1132,10 @@ int TestFunc_Double_Double_Double_Double(const Func *f, MTdata d) correct3 = f->dfunc.f_fff( -0.0, s2[j], 0.0 ); long double correct4 = f->dfunc.f_fff( 0.0, s2[j], -0.0 ); long double correct5 = f->dfunc.f_fff( -0.0, s2[j], -0.0 ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -1161,8 +1161,8 @@ int TestFunc_Double_Double_Double_Double(const Func *f, MTdata d) { long double correct2 = f->dfunc.f_fff( s[j], 0.0, s3[j] ); long double correct3 = f->dfunc.f_fff( s[j], -0.0, s3[j] ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; @@ -1184,10 +1184,10 @@ int TestFunc_Double_Double_Double_Double(const Func *f, MTdata d) correct3 = f->dfunc.f_fff( s[j], -0.0, 0.0 ); long double correct4 = f->dfunc.f_fff( s[j], 0.0, -0.0 ); long double correct5 = f->dfunc.f_fff( s[j], -0.0, -0.0 ); - err2 = Ulp_Error_Double( test, correct2 ); - err3 = Ulp_Error_Double( test, correct3 ); - float err4 = Ulp_Error_Double( test, correct4 ); - float err5 = Ulp_Error_Double( test, correct5 ); + err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err4 = Bruteforce_Ulp_Error_Double( test, correct4 ); + float err5 = Bruteforce_Ulp_Error_Double( test, correct5 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps)) && (!(fabsf(err4) <= f->double_ulps)) && (!(fabsf(err5) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) @@ -1213,8 +1213,8 @@ int TestFunc_Double_Double_Double_Double(const Func *f, MTdata d) { long double correct2 = f->dfunc.f_fff( s[j], s2[j], 0.0 ); long double correct3 = f->dfunc.f_fff( s[j], s2[j], -0.0 ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= f->double_ulps)) && (!(fabsf(err3) <= f->double_ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; diff --git a/test_conformance/math_brute_force/unary.c b/test_conformance/math_brute_force/unary.c index d8b3dbae..fc802327 100644 --- a/test_conformance/math_brute_force/unary.c +++ b/test_conformance/math_brute_force/unary.c @@ -200,6 +200,7 @@ typedef struct TestInfo cl_kernel *k[VECTOR_SIZE_COUNT ]; // arrays of thread-specific kernels for each worker thread: k[vector_size][thread_id] ThreadInfo *tinfo; // An array of thread specific information for each worker thread cl_uint threadCount; // Number of worker threads + cl_uint jobCount; // Number of jobs cl_uint step; // step between each chunk and the next. cl_uint scale; // stride between individual test values float ulps; // max_allowed ulps @@ -234,6 +235,16 @@ int TestFunc_Float_Float(const Func *f, MTdata d) test_info.scale = (cl_uint) sizeof(cl_float) * 2 * gWimpyReductionFactor; } test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } + test_info.f = f; test_info.ulps = gIsEmbedded ? f->float_embedded_ulps : f->float_ulps; test_info.ftz = f->ftz || gForceFTZ || 0 == (CL_FP_DENORM & gFloatCapabilities); @@ -309,7 +320,7 @@ int TestFunc_Float_Float(const Func *f, MTdata d) if( !gSkipCorrectnessTesting || skipTestingRelaxed) { - error = ThreadPool_Do( TestFloat, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestFloat, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors for( i = 0; i < test_info.threadCount; i++ ) @@ -892,7 +903,7 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { cl_double test = ((cl_double*) q)[j]; long double correct = func.f_f( s[j] ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); int fail = ! (fabsf(err) <= ulps); if( fail ) @@ -912,8 +923,8 @@ static cl_int TestDouble( cl_uint job_id, cl_uint thread_id, void *data ) { long double correct2 = func.f_f( 0.0L ); long double correct3 = func.f_f( -0.0L ); - float err2 = Ulp_Error_Double( test, correct2 ); - float err3 = Ulp_Error_Double( test, correct3 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct2 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct3 ); fail = fail && ((!(fabsf(err2) <= ulps)) && (!(fabsf(err3) <= ulps))); if( fabsf( err2 ) < fabsf(err ) ) err = err2; @@ -997,7 +1008,16 @@ int TestFunc_Double_Double(const Func *f, MTdata d) test_info.subBufferSize = gWimpyBufferSize / (sizeof( cl_double) * RoundUpToNextPowerOfTwo(test_info.threadCount)); test_info.scale = (cl_uint) sizeof(cl_double) * 2 * gWimpyReductionFactor; } - test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + test_info.step = (cl_uint) test_info.subBufferSize * test_info.scale; + if (test_info.step / test_info.subBufferSize != test_info.scale) + { + //there was overflow + test_info.jobCount = 1; + } + else + { + test_info.jobCount = (cl_uint)((1ULL << 32) / test_info.step); + } test_info.f = f; test_info.ulps = f->double_ulps; @@ -1062,7 +1082,7 @@ int TestFunc_Double_Double(const Func *f, MTdata d) if( !gSkipCorrectnessTesting ) { - error = ThreadPool_Do( TestDouble, (cl_uint) ((1ULL<<32) / test_info.step), &test_info ); + error = ThreadPool_Do( TestDouble, test_info.jobCount, &test_info ); // Accumulate the arithmetic errors for( i = 0; i < test_info.threadCount; i++ ) diff --git a/test_conformance/math_brute_force/unary_two_results.c b/test_conformance/math_brute_force/unary_two_results.c index a3fb307d..26756edf 100644 --- a/test_conformance/math_brute_force/unary_two_results.c +++ b/test_conformance/math_brute_force/unary_two_results.c @@ -800,8 +800,8 @@ int TestFunc_Double2_Double(const Func *f, MTdata d) double test2 = ((double*) q2)[j]; long double correct2; long double correct = f->dfunc.f_fpf( s[j], &correct2 ); - float err = Ulp_Error_Double( test, correct ); - float err2 = Ulp_Error_Double( test2, correct2 ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); + float err2 = Bruteforce_Ulp_Error_Double( test2, correct2 ); int fail = ! (fabsf(err) <= f->double_ulps && fabsf(err2) <= f->double_ulps); if( ftz ) { @@ -837,10 +837,10 @@ int TestFunc_Double2_Double(const Func *f, MTdata d) long double correct2p, correct2n; long double correctp = f->dfunc.f_fpf( 0.0, &correct2p ); long double correctn = f->dfunc.f_fpf( -0.0, &correct2n ); - float errp = Ulp_Error_Double( test, correctp ); - float err2p = Ulp_Error_Double( test, correct2p ); - float errn = Ulp_Error_Double( test, correctn ); - float err2n = Ulp_Error_Double( test, correct2n ); + float errp = Bruteforce_Ulp_Error_Double( test, correctp ); + float err2p = Bruteforce_Ulp_Error_Double( test, correct2p ); + float errn = Bruteforce_Ulp_Error_Double( test, correctn ); + float err2n = Bruteforce_Ulp_Error_Double( test, correct2n ); fail = fail && ((!(fabsf(errp) <= f->double_ulps)) && (!(fabsf(err2p) <= f->double_ulps)) && ((!(fabsf(errn) <= f->double_ulps)) && (!(fabsf(err2n) <= f->double_ulps))) ); if( fabsf( errp ) < fabsf(err ) ) diff --git a/test_conformance/math_brute_force/unary_two_results_i.c b/test_conformance/math_brute_force/unary_two_results_i.c index c4eea8f1..cdd24f8e 100644 --- a/test_conformance/math_brute_force/unary_two_results_i.c +++ b/test_conformance/math_brute_force/unary_two_results_i.c @@ -633,7 +633,7 @@ int TestFunc_DoubleI_Double(const Func *f, MTdata d) double test = ((double*) q)[j]; int correct2 = INT_MIN; long double correct = f->dfunc.f_fpI( s[j], &correct2 ); - float err = Ulp_Error_Double( test, correct ); + float err = Bruteforce_Ulp_Error_Double( test, correct ); cl_long iErr = (long long) q2[j] - (long long) correct2; int fail = ! (fabsf(err) <= f->double_ulps && abs_cl_long( iErr ) <= maxiError ); if( ftz ) @@ -652,8 +652,8 @@ int TestFunc_DoubleI_Double(const Func *f, MTdata d) int correct5, correct6; long double correct3 = f->dfunc.f_fpI( 0.0, &correct5 ); long double correct4 = f->dfunc.f_fpI( -0.0, &correct6 ); - float err2 = Ulp_Error_Double( test, correct3 ); - float err3 = Ulp_Error_Double( test, correct4 ); + float err2 = Bruteforce_Ulp_Error_Double( test, correct3 ); + float err3 = Bruteforce_Ulp_Error_Double( test, correct4 ); cl_long iErr2 = (long long) q2[j] - (long long) correct5; cl_long iErr3 = (long long) q2[j] - (long long) correct6; diff --git a/test_conformance/math_brute_force/unary_u.c b/test_conformance/math_brute_force/unary_u.c index 131d1e7e..336fdd24 100644 --- a/test_conformance/math_brute_force/unary_u.c +++ b/test_conformance/math_brute_force/unary_u.c @@ -567,7 +567,7 @@ int TestFunc_Double_ULong(const Func *f, MTdata d) { double test = ((double*) q)[j]; long double correct = f->dfunc.f_u( s[j] ); - float err = Ulp_Error_Double(test, correct); + float err = Bruteforce_Ulp_Error_Double(test, correct); int fail = ! (fabsf(err) <= f->double_ulps); // half_sin/cos/tan are only valid between +-2**16, Inf, NaN diff --git a/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.cpp b/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.cpp index d9366293..16ddad44 100644 --- a/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.cpp +++ b/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.cpp @@ -613,6 +613,28 @@ void TestNonUniformWorkGroup::showTestInfo () { } } +size_t TestNonUniformWorkGroup::adjustLocalArraySize (size_t localArraySize) { + // In case if localArraySize is too big, sometimes we can not run kernel because of lack + // of resources due to kernel itself requires some local memory to run + int err; + + cl_ulong kernelLocalMemSize = 0; + err = clGetKernelWorkGroupInfo(_testKernel, _device, CL_KERNEL_LOCAL_MEM_SIZE, sizeof(kernelLocalMemSize), &kernelLocalMemSize, NULL); + test_error(err, "clGetKernelWorkGroupInfo failed"); + + cl_ulong deviceLocalMemSize = 0; + err = clGetDeviceInfo(_device, CL_DEVICE_LOCAL_MEM_SIZE, sizeof(deviceLocalMemSize), &deviceLocalMemSize, NULL); + test_error(err, "clGetDeviceInfo failed"); + + if (kernelLocalMemSize + localArraySize > deviceLocalMemSize) { + size_t adjustedLocalArraySize = deviceLocalMemSize - kernelLocalMemSize; + log_info("localArraySize was adjusted from %lu to %lu\n", localArraySize, adjustedLocalArraySize); + localArraySize = adjustedLocalArraySize; + } + + return localArraySize; +} + int TestNonUniformWorkGroup::runKernel () { int err; @@ -630,7 +652,8 @@ int TestNonUniformWorkGroup::runKernel () { test_error(err, "clSetKernelArg failed"); //creating local buffer - err = clSetKernelArg(_testKernel, 1, localArraySize*sizeof(unsigned int), NULL); + localArraySize = adjustLocalArraySize(localArraySize*sizeof(unsigned int)); + err = clSetKernelArg(_testKernel, 1, localArraySize, NULL); test_error(err, "clSetKernelArg failed"); clMemWrapper testGlobalArray = clCreateBuffer(_context, CL_MEM_READ_WRITE, _numOfGlobalWorkItems*sizeof(cl_uint), NULL, &err); diff --git a/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.h b/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.h index e7f261b5..a077296d 100644 --- a/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.h +++ b/test_conformance/non_uniform_work_group/TestNonUniformWorkGroup.h @@ -116,6 +116,7 @@ private: void verifyData (DataContainerAttrib * reference, DataContainerAttrib * results, short regionNumber); void calculateExpectedValues (); void showTestInfo (); + size_t adjustLocalArraySize(size_t localArraySize); }; // Class responsible for running subtest scenarios in test function diff --git a/test_conformance/printf/test_printf.c b/test_conformance/printf/test_printf.c index a5c5d585..cd5f38cd 100644 --- a/test_conformance/printf/test_printf.c +++ b/test_conformance/printf/test_printf.c @@ -17,6 +17,7 @@ #include #include +#include #if ! defined( _WIN32) #if ! defined( __ANDROID__ ) @@ -356,9 +357,6 @@ static cl_program makePrintfProgram(cl_kernel *kernel_ptr, const cl_context cont //----------------------------------------- static bool isLongSupported(cl_device_id device_id) { - //profile type && device extention for long support checking - char *profileType = NULL,*devExt = NULL; - size_t tempSize = 0; cl_int status; bool extSupport = true; @@ -377,7 +375,7 @@ static bool isLongSupported(cl_device_id device_id) return false; } - profileType = new char[tempSize]; + std::unique_ptr profileType(new char[tempSize]); if(profileType == NULL) { log_error("Failed to allocate memory(profileType)"); @@ -388,11 +386,11 @@ static bool isLongSupported(cl_device_id device_id) device_id, CL_DEVICE_PROFILE, sizeof(char) * tempSize, - profileType, + profileType.get(), NULL); - if(!strcmp("EMBEDDED_PROFILE",profileType)) + if(!strcmp("EMBEDDED_PROFILE",profileType.get())) { // Device extention status = clGetDeviceInfo( @@ -408,7 +406,7 @@ static bool isLongSupported(cl_device_id device_id) return false; } - devExt = new char[tempSize]; + std::unique_ptr devExt(new char[tempSize]); if(devExt == NULL) { log_error("Failed to allocate memory(devExt)"); @@ -419,13 +417,10 @@ static bool isLongSupported(cl_device_id device_id) device_id, CL_DEVICE_EXTENSIONS, sizeof(char) * tempSize, - devExt, + devExt.get(), NULL); - extSupport = (strstr(devExt,"cles_khr_int64") != NULL); - - delete devExt; - delete profileType; + extSupport = (strstr(devExt.get(),"cles_khr_int64") != NULL); } return extSupport; } @@ -501,7 +496,8 @@ static int doTest(cl_command_queue queue, cl_context context, const unsigned int int err; cl_program program; cl_kernel kernel; - cl_mem d_out; + cl_mem d_out = NULL; + cl_mem d_a = NULL; char _analysisBuffer[ANALYSIS_BUFFER_SIZE]; cl_uint out32 = 0; cl_ulong out64 = 0; @@ -523,7 +519,7 @@ static int doTest(cl_command_queue queue, cl_context context, const unsigned int if(isKernelArgument(allTestCase[testId],testNum)) { int a = 2; - cl_mem d_a = clCreateBuffer(context, CL_MEM_READ_ONLY|CL_MEM_COPY_HOST_PTR, + d_a = clCreateBuffer(context, CL_MEM_READ_ONLY|CL_MEM_COPY_HOST_PTR, sizeof(int), &a, &err); if(err!= CL_SUCCESS || d_a == NULL) { log_error("clCreateBuffer failed\n"); @@ -613,6 +609,10 @@ exit: log_error("clReleaseKernel failed\n"); if(clReleaseProgram(program) != CL_SUCCESS) log_error("clReleaseProgram failed\n"); + if(d_out) + clReleaseMemObject(d_out); + if(d_a) + clReleaseMemObject(d_a); ++s_test_cnt; @@ -639,6 +639,8 @@ static void printArch( void ) log_info( "ARCH:\tx86_64\n" ); #elif defined( __arm__ ) log_info( "ARCH:\tarm\n" ); +#elif defined( __aarch64__ ) + log_info( "ARCH:\taarch64\n" ); #else #error unknown arch #endif @@ -757,7 +759,6 @@ int test_float_15(cl_device_id deviceID, cl_context context, cl_command_queue qu { return doTest(gQueue, gContext, TYPE_FLOAT, 15, gDevice); } -#if ! defined( __ANDROID__ ) int test_float_16(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return doTest(gQueue, gContext, TYPE_FLOAT, 16, gDevice); @@ -766,7 +767,6 @@ int test_float_17(cl_device_id deviceID, cl_context context, cl_command_queue qu { return doTest(gQueue, gContext, TYPE_FLOAT, 17, gDevice); } -#endif int test_float_18(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { return doTest(gQueue, gContext, TYPE_FLOAT, 18, gDevice); @@ -857,10 +857,6 @@ int test_string_2(cl_device_id deviceID, cl_context context, cl_command_queue qu { return doTest(gQueue, gContext, TYPE_STRING, 2, gDevice); } -int test_string_3(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) -{ - return doTest(gQueue, gContext, TYPE_STRING, 3, gDevice); -} int test_vector_0(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) @@ -933,10 +929,8 @@ basefn basefn_list[] = { test_float_13, test_float_14, test_float_15, -#if ! defined( __ANDROID__ ) test_float_16, test_float_17, -#endif test_float_18, test_float_19, test_float_20, @@ -962,7 +956,6 @@ basefn basefn_list[] = { test_string_0, test_string_1, test_string_2, - test_string_3, test_vector_0, test_vector_1, @@ -1004,10 +997,8 @@ const char *basefn_names[] = { "float_13", "float_14", "float_15", -#if ! defined( __ANDROID__ ) "float_16", "float_17", -#endif "float_18", "float_19", "float_20", @@ -1033,7 +1024,6 @@ const char *basefn_names[] = { "string_0", "string_1", "string_2", - "string_3", "vector_0", "vector_1", diff --git a/test_conformance/printf/util_printf.c b/test_conformance/printf/util_printf.c index 5bd9be1a..544072a7 100644 --- a/test_conformance/printf/util_printf.c +++ b/test_conformance/printf/util_printf.c @@ -212,8 +212,6 @@ struct printDataGenParameters printFloatGenParameters[] = { {"%+#21.15E","789456123.0"}, -#if ! defined( __ANDROID__ ) - //Double argument representing floating-point,in [-]xh.hhhhpAd style {"%.6a","0.1"}, @@ -222,8 +220,6 @@ struct printDataGenParameters printFloatGenParameters[] = { {"%10.2a","9990.235"}, -#endif - //Infinity (1.0/0.0) {"%f","1.0f/0.0f"}, @@ -275,14 +271,10 @@ const char* correctBufferFloat[] = { "+7.894561230000000E+8", -#if ! defined( __ANDROID__ ) - "0x1.99999ap-4", "0x1.38p+13", -#endif - "inf", "-nan", @@ -622,10 +614,6 @@ struct printDataGenParameters printStringGenParameters[] = { {"%s","\"%%\""}, - //null string - - {"%s","(void*)0"} - }; //--------------------------------------------------------- @@ -887,7 +875,7 @@ size_t verifyOutputBuffer(char *analysisBuffer,testCase* pTestCase,size_t testId if(!strcmp(pTestCase->_correctBuffer[testId],"inf")) return strcmp(analysisBuffer,"inf")&&strcmp(analysisBuffer,"infinity")&&strcmp(analysisBuffer,"1.#INF00")&&strcmp(analysisBuffer,"Inf"); if(!strcmp(pTestCase->_correctBuffer[testId],"nan") || !strcmp(pTestCase->_correctBuffer[testId],"-nan")) { - return strcmp(analysisBuffer,"nan")&&strcmp(analysisBuffer,"-nan")&&strcmp(analysisBuffer,"1.#IND00")&&strcmp(analysisBuffer,"-1.#IND00")&&strcmp(analysisBuffer,"NaN")&&strcmp(analysisBuffer,"nan(ind)")&&strcmp(analysisBuffer,"nan(snan)"); + return strcmp(analysisBuffer,"nan")&&strcmp(analysisBuffer,"-nan")&&strcmp(analysisBuffer,"1.#IND00")&&strcmp(analysisBuffer,"-1.#IND00")&&strcmp(analysisBuffer,"NaN")&&strcmp(analysisBuffer,"nan(ind)")&&strcmp(analysisBuffer,"nan(snan)")&&strcmp(analysisBuffer,"-nan(ind)"); } return strcmp(analysisBuffer,pTestCase->_correctBuffer[testId]); } diff --git a/test_conformance/run_conformance.py b/test_conformance/run_conformance.py old mode 100644 new mode 100755 diff --git a/test_conformance/select/CMakeLists.txt b/test_conformance/select/CMakeLists.txt index d8d90229..6f25c466 100644 --- a/test_conformance/select/CMakeLists.txt +++ b/test_conformance/select/CMakeLists.txt @@ -8,6 +8,7 @@ set(${MODULE_NAME}_SOURCES ../../test_common/harness/msvc9.c ../../test_common/harness/kernelHelpers.c ../../test_common/harness/errorHelpers.c + ../../test_common/harness/parseParameters.cpp ) include(../CMakeCommon.txt) diff --git a/test_conformance/select/test_select.c b/test_conformance/select/test_select.c index 8aa39a2a..a94d7229 100644 --- a/test_conformance/select/test_select.c +++ b/test_conformance/select/test_select.c @@ -27,12 +27,10 @@ #include #include "test_select.h" - #include "../../test_common/harness/testHarness.h" - - #include "../../test_common/harness/kernelHelpers.h" #include "../../test_common/harness/mt19937.h" +#include "../../test_common/harness/parseParameters.h" //----------------------------------------- @@ -57,6 +55,9 @@ static cl_program makeSelectProgram(cl_kernel *kernel_ptr, const cl_context cont static int doTest(cl_command_queue queue, cl_context context, Type stype, Type cmptype, cl_device_id device); + +static void printUsage( void ); + //----------------------------------------- // Definitions and initializations //----------------------------------------- @@ -71,6 +72,7 @@ static int doTest(cl_command_queue queue, cl_context context, // range. Otherwise, we test a subset of the range // [-min_short, min_short] static bool s_wimpy_mode = false; +static int s_wimpy_reduction_factor = 256; // Tests are broken into the major test which is based on the // src and cmp type and their corresponding vector types and @@ -344,7 +346,7 @@ static int doTest(cl_command_queue queue, cl_context context, Type stype, Type c cl_ulong blocks = type_size[stype] * 0x100000000ULL / BUFFER_SIZE; size_t block_elements = BUFFER_SIZE / type_size[stype]; - size_t step = s_wimpy_mode ? 256 : 1; + size_t step = s_wimpy_mode ? s_wimpy_reduction_factor : 1; cl_ulong cmp_stride = block_elements * step; // It is more efficient to create the tests all at once since we @@ -506,99 +508,152 @@ exit: return err; } -static void printUsage( void ) +int test_select_uchar_uchar(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) { - log_info("test_select: [-cghw] [test_name|start_test_num] \n"); - log_info(" default is to run the full test on the default device\n"); - log_info(" -w run in wimpy mode (smoke test)\n"); - log_info(" test_name will run only one test of that name\n"); - log_info(" start_test_num will start running from that num\n"); + return doTest(queue, context, kuchar, kuchar, deviceID); +} +int test_select_uchar_char(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kuchar, kchar, deviceID); +} +int test_select_char_uchar(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kchar, kuchar, deviceID); +} +int test_select_char_char(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kchar, kchar, deviceID); +} +int test_select_ushort_ushort(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kushort, kushort, deviceID); +} +int test_select_ushort_short(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kushort, kshort, deviceID); +} +int test_select_short_ushort(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kshort, kushort, deviceID); +} +int test_select_short_short(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kshort, kshort, deviceID); +} +int test_select_uint_uint(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kuint, kuint, deviceID); +} +int test_select_uint_int(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kuint, kint, deviceID); +} +int test_select_int_uint(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kint, kuint, deviceID); +} +int test_select_int_int(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kint, kint, deviceID); +} +int test_select_float_uint(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kfloat, kuint, deviceID); +} +int test_select_float_int(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kfloat, kint, deviceID); +} +int test_select_ulong_ulong(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kulong, kulong, deviceID); +} +int test_select_ulong_long(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kulong, klong, deviceID); +} +int test_select_long_ulong(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, klong, kulong, deviceID); +} +int test_select_long_long(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, klong, klong, deviceID); +} +int test_select_double_ulong(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kdouble, kulong, deviceID); +} +int test_select_double_long(cl_device_id deviceID, cl_context context, cl_command_queue queue, int num_elements) +{ + return doTest(queue, context, kdouble, klong, deviceID); } -static void printArch( void ) +basefn basefn_list[] = { + test_select_uchar_uchar, + test_select_uchar_char, + test_select_char_uchar, + test_select_char_char, + test_select_ushort_ushort, + test_select_ushort_short, + test_select_short_ushort, + test_select_short_short, + test_select_uint_uint, + test_select_uint_int, + test_select_int_uint, + test_select_int_int, + test_select_float_uint, + test_select_float_int, + test_select_ulong_ulong, + test_select_ulong_long, + test_select_long_ulong, + test_select_long_long, + test_select_double_ulong, + test_select_double_long, +}; + +const char *basefn_names[] = { + "select_uchar_uchar", + "select_uchar_char", + "select_char_uchar", + "select_char_char", + "select_ushort_ushort", + "select_ushort_short", + "select_short_ushort", + "select_short_short", + "select_uint_uint", + "select_uint_int", + "select_int_uint", + "select_int_int", + "select_float_uint", + "select_float_int", + "select_ulong_ulong", + "select_ulong_long", + "select_long_ulong", + "select_long_long", + "select_double_ulong", + "select_double_long", +}; + +ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_list) / sizeof(basefn_list[0]))); + +int num_fns = sizeof(basefn_names) / sizeof(char *); + +int main(int argc, char* argv[]) { - log_info( "sizeof( void*) = %d\n", (int) sizeof( void *) ); + const char ** argList = (const char **)calloc( argc, sizeof( char*) ); -#if defined( __APPLE__ ) - -#if defined( __ppc__ ) - log_info( "ARCH:\tppc\n" ); -#elif defined( __ppc64__ ) - log_info( "ARCH:\tppc64\n" ); -#elif defined( __i386__ ) - log_info( "ARCH:\ti386\n" ); -#elif defined( __x86_64__ ) - log_info( "ARCH:\tx86_64\n" ); -#elif defined( __arm__ ) - log_info( "ARCH:\tarm\n" ); -#else -#error unknown arch -#endif - - int type = 0; - size_t typeSize = sizeof( type ); - sysctlbyname( "hw.cputype", &type, &typeSize, NULL, 0 ); - log_info( "cpu type:\t%d\n", type ); - typeSize = sizeof( type ); - sysctlbyname( "hw.cpusubtype", &type, &typeSize, NULL, 0 ); - log_info( "cpu subtype:\t%d\n", type ); - -#endif -} - - - - -//----------------------------------------- -// main -//----------------------------------------- -int main(int argc, char* argv[]) { - int i; - cl_device_type device_type = CL_DEVICE_TYPE_DEFAULT; - cl_platform_id platform_id; - long test_start_num = 0; // start test number - const char* exec_testname = NULL; - cl_device_id device_id; - uint32_t device_frequency = 0; - uint32_t compute_devices = 0; - - - test_start(); - - // Maybe we want turn off sleep - - // Check the environmental to see if there is device preference - char *device_env = getenv("CL_DEVICE_TYPE"); - if (device_env != NULL) { - if( strcmp( device_env, "gpu" ) == 0 || strcmp( device_env, "CL_DEVICE_TYPE_GPU" ) == 0 ) - device_type = CL_DEVICE_TYPE_GPU; - else if( strcmp( device_env, "cpu" ) == 0 || strcmp( device_env, "CL_DEVICE_TYPE_CPU" ) == 0 ) - device_type = CL_DEVICE_TYPE_CPU; - else if( strcmp( device_env, "accelerator" ) == 0 || strcmp( device_env, "CL_DEVICE_TYPE_ACCELERATOR" ) == 0 ) - device_type = CL_DEVICE_TYPE_ACCELERATOR; - else if( strcmp( device_env, "default" ) == 0 || strcmp( device_env, "CL_DEVICE_TYPE_DEFAULT" ) == 0 ) - device_type = CL_DEVICE_TYPE_DEFAULT; - else - { - log_error( "Unknown CL_DEVICE_TYPE environment variable: %s.\nAborting...\n", device_env ); - abort(); - } + if( NULL == argList ) + { + log_error( "Failed to allocate memory for argList array.\n" ); + return 1; } - // Check for the wimpy mode environment variable - if (getenv("CL_WIMPY_MODE")) { - log_info("*** Detected CL_WIMPY_MODE env\n"); - s_wimpy_mode = 1; - } + argList[0] = argv[0]; + size_t argCount = 1; - // Determine if we want to run a particular test or if we want to - // start running from a certain point and if we want to run on cpu/gpu - // usage: test_selects [test_name] [start test num] [run_long] - // default is to run all tests on the gpu and be short - // test names are of the form select_[src/dest type]_[cmp_type] - // In the long test, we run the full range for any type >= 32 bits - // and 32 bits subset for the 64 bit value. - for (i=1; i < argc; ++i) { + for( int i = 1; i < argc; ++i ) + { const char *arg = argv[i]; if (arg == NULL) break; @@ -612,177 +667,55 @@ int main(int argc, char* argv[]) { case 'h': printUsage(); return 0; - case 'w': // Wimpy mode + case 'w': s_wimpy_mode = true; break; + case '[': + parseWimpyReductionFactor(arg, s_wimpy_reduction_factor); + break; default: - log_error( " <-- unknown flag: %c (0x%2.2x)\n)", *arg, *arg ); - printUsage(); - return 0; + break; } arg++; } } - else { - char* t = NULL; - long num = strtol(argv[i], &t, 0); - if (t != argv[i]) - test_start_num = num; - else if( 0 == strcmp( argv[i], "CL_DEVICE_TYPE_CPU" ) ) - device_type = CL_DEVICE_TYPE_CPU; - else if( 0 == strcmp( argv[i], "CL_DEVICE_TYPE_GPU" ) ) - device_type = CL_DEVICE_TYPE_GPU; - else if( 0 == strcmp( argv[i], "CL_DEVICE_TYPE_ACCELERATOR" ) ) - device_type = CL_DEVICE_TYPE_ACCELERATOR; - else if( 0 == strcmp( argv[i], "CL_DEVICE_TYPE_DEFAULT" ) ) - device_type = CL_DEVICE_TYPE_DEFAULT; - else if( 0 == strcmp( argv[i], "randomize" ) ) { - gRandomSeed = (cl_uint) time( NULL ); - log_info("\nRandom seed: %u.\n", gRandomSeed ); - } else { - // assume it is a test name that we want to execute - exec_testname = argv[i]; - } + else + { + argList[argCount] = arg; + argCount++; } } - - int err; - - // Get platform - err = clGetPlatformIDs(1, &platform_id, NULL); - checkErr(err,"clGetPlatformIDs failed"); - - // Get Device information - err = clGetDeviceIDs(platform_id, device_type, 1, &device_id, 0); - checkErr(err,"clGetComputeDevices"); - - err = clGetDeviceInfo(device_id, CL_DEVICE_TYPE, sizeof(cl_device_type), &device_type, NULL); - checkErr(err,"clGetComputeConfigInfo 1"); - - size_t config_size = sizeof( device_frequency ); -#if MULTITHREAD - if( (err = clGetDeviceInfo(device_id, CL_DEVICE_MAX_COMPUTE_UNITS, config_size, &compute_devices, NULL )) ) -#endif - compute_devices = 1; - - config_size = sizeof(device_frequency); - if((err = clGetDeviceInfo(device_id, CL_DEVICE_MAX_CLOCK_FREQUENCY, config_size, &device_frequency, NULL ))) - device_frequency = 1; - - //detect whether profile of the device is embedded - char profile[1024] = ""; - if( (err = clGetDeviceInfo(device_id, CL_DEVICE_PROFILE, sizeof(profile), profile, NULL ) ) ){} - else if( strstr(profile, "EMBEDDED_PROFILE" ) ) - { - gIsEmbedded = 1; + if (getenv("CL_WIMPY_MODE")) { + s_wimpy_mode = true; } - - log_info( "\nCompute Device info:\n" ); - log_info( "\tProcessing with %d devices\n", compute_devices ); - log_info( "\tDevice Frequency: %d MHz\n", device_frequency ); - - printDeviceHeader( device_id ); - printArch(); - log_info( "Test binary built %s %s\n", __DATE__, __TIME__ ); if (s_wimpy_mode) { log_info("\n"); log_info("*** WARNING: Testing in Wimpy mode! ***\n"); log_info("*** Wimpy mode is not sufficient to verify correctness. ***\n"); log_info("*** It gives warm fuzzy feelings and then nevers calls. ***\n\n"); + log_info("*** Wimpy Reduction Factor: %-27u ***\n\n", s_wimpy_reduction_factor); } - cl_context context = clCreateContext(NULL, 1, &device_id, notify_callback, NULL, NULL); - checkNull(context, "clCreateContext"); + int err = runTestHarness( argCount, argList, num_fns, basefn_list, basefn_names, false, false, 0 ); - cl_command_queue queue = clCreateCommandQueueWithProperties(context, device_id, 0, NULL); - checkNull(queue, "clCreateCommandQueue"); + free( argList ); - - if (exec_testname) { - // Parse name - // Skip the first part of the name - bool success = false; - if (strncmp(exec_testname, "select_", 7) == 0) { - int i; - Type src_type = kTypeCount; - Type cmp_type = kTypeCount; - char* sptr = (char *)strchr(exec_testname, '_'); - if (sptr) { - for (++sptr, i=0; i < kTypeCount; i++) { - if (strncmp(sptr, type_name[i], strlen(type_name[i])) == 0) { - src_type = (Type)i; - break; - } - } - sptr = strchr(sptr, '_'); - if (sptr) { - for (++sptr, i=0; i < kTypeCount; i++) { - if (strncmp(sptr, type_name[i], strlen(type_name[i])) == 0) { - cmp_type = (Type)i; - break; - } - } - } - } - if (src_type != kTypeCount && cmp_type != kTypeCount) { - success = true; - log_info("Testing only select_%s_%s\n", - type_name[src_type], type_name[cmp_type]); - if (doTest(queue, context, src_type, cmp_type, device_id) != 0) - log_error("*** select_%s_%s FAILED ***\n\n", - type_name[src_type], type_name[cmp_type]); - } - } - if (!success) { - log_error("can not find test:%s", exec_testname); - return -1; - } - } - else { - int src_type, j; - int test_num; - test_num = 0; - for (src_type = 0; src_type < kTypeCount; ++src_type) { - for (j = 0; j < 2; ++j) { - Type cmp_type = ctype[src_type][j]; - if (++test_num < test_start_num) { - log_info("%d) skipping select_%s_%s\n", test_num, - type_name[src_type], type_name[cmp_type]); - } - else { - log_info("%d) Testing select_%s_%s\n", - test_num, type_name[src_type], type_name[cmp_type]); - if (doTest(queue, context, (Type)src_type, cmp_type, device_id) != 0) - log_error("*** %d) select_%s_%s FAILED ***\n\n", test_num, - type_name[src_type], type_name[cmp_type]); - } - } - } - } - - int error = clFinish(queue); - if (error) { - log_error("clFinish failed: %d\n", error); - } - - clReleaseContext(context); - clReleaseCommandQueue(queue); - - if (s_test_fail == 0) { - if (s_test_cnt > 1) - log_info("PASSED %d of %d tests.\n", s_test_cnt, s_test_cnt); - else - log_info("PASSED test.\n"); - } else if (s_test_fail > 0) { - if (s_test_cnt > 1) - log_error("FAILED %d of %d tests.\n", s_test_fail, s_test_cnt); - else - log_error("FAILED test.\n"); - } - - test_finish(); - return s_test_fail; + return err; +} + +static void printUsage( void ) +{ + log_info("test_select: [-w] \n"); + log_info("\tdefault is to run the full test on the default device\n"); + log_info("\t-w run in wimpy mode (smoke test)\n"); + log_info("\t-[2^n] Set wimpy reduction factor, recommended range of n is 1-12, default factor(%u)\n", s_wimpy_reduction_factor); + log_info("\n"); + log_info("Test names:\n"); + for( int i = 0; i < num_fns; i++ ) + { + log_info( "\t%s\n", basefn_names[i] ); + } } diff --git a/test_conformance/spir/basic.zip b/test_conformance/spir/basic.zip index d60636fb319ee08b4e462be13a5e9888b0e907a7..14c7a3f4cadaeb48b1c9d22f7ac29bea192f27c9 100644 GIT binary patch delta 457761 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

Sq9>g|%7K9dJi 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

77*e_$X;N}p;55qkW4qyOae{d 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

FdWO5idxyHv0} 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 diff --git a/test_conformance/spir/half.zip b/test_conformance/spir/half.zip index f0d3e8ff3d10d8770eae3db1ac8a1b6a14b7dd57..0b1deca1f18179bfd38378a156b5ba5bce5add0c 100644 GIT binary patch delta 102395 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 MVK;q{6NA700~{-Xt^fc4 delta 92141 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

Aed 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�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ΝEvHcPuB@&jbHC3`rZu8BO= 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 YrV8}b0s`>`e)lT_ce$B?JzdEE1JS79YXATM diff --git a/test_conformance/spir/main.cpp b/test_conformance/spir/main.cpp index 1c1ce6b3..52628e37 100644 --- a/test_conformance/spir/main.cpp +++ b/test_conformance/spir/main.cpp @@ -346,9 +346,12 @@ bool test_suite(cl_device_id device, cl_uint size_t_width, const char *folder, { std::cout << "Failed tests:" << std::endl; std::for_each(ErrList.begin(), ErrList.end(), printError); + std::cout << std::endl; + return false; } + std::cout << std::endl; - return tests_passed == number_of_tests; + return true; } static std::string getTestFolder(const std::string& TS) @@ -840,7 +843,6 @@ bool test_basic (cl_device_id device, cl_uint size_t_width, const char *folder) "test_sizeof.sizeof_uintptr_t", "test_sizeof.sizeof_image2d_t", "test_sizeof.sizeof_image3d_t", - "test_sizeof.sizeof_sampler_t", "test_sizeof.sizeof_double", "test_sizeof.sizeof_double2", "test_sizeof.sizeof_double4", diff --git a/test_conformance/spir/profiling.zip b/test_conformance/spir/profiling.zip index 17f1fbec338f6c864b434e41ec0e47cbc6d359f4..c792bbec0c81a11147bf61a92909af3446855fc5 100644 GIT binary patch literal 9184 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 SSpWdS^K13lsc;hgy80jWFlZ+L diff --git a/test_conformance/spir/run_build_test.cpp b/test_conformance/spir/run_build_test.cpp index 4dd3f0d4..b602303d 100644 --- a/test_conformance/spir/run_build_test.cpp +++ b/test_conformance/spir/run_build_test.cpp @@ -378,7 +378,10 @@ bool TestRunner::runBuildTest(cl_device_id device, const char *folder, if (strstr(test_name, "div_cr") || strstr(test_name, "sqrt_cr")) { if ((gFloatCapabilities & CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT) == 0) + { + std::cout << "Skipped. CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT is not supported." << std::endl; return true; + } else { bcoptions += " -cl-fp32-correctly-rounded-divide-sqrt"; cloptions += " -cl-fp32-correctly-rounded-divide-sqrt"; diff --git a/test_conformance/subgroups/main.cpp b/test_conformance/subgroups/main.cpp index 5a289126..9a0bf037 100644 --- a/test_conformance/subgroups/main.cpp +++ b/test_conformance/subgroups/main.cpp @@ -40,15 +40,15 @@ ct_assert((sizeof(basefn_names) / sizeof(basefn_names[0])) == (sizeof(basefn_lis static const int num_fns = sizeof(basefn_names) / sizeof(char *); -static int +static test_status checkSubGroupsExtension(cl_device_id device) { if (!is_extension_available(device, "cl_khr_subgroups")) { log_info("Device does not support 'cl_khr_subgroups'. Skipping the test.\n"); - return CL_INVALID_DEVICE; + return TEST_SKIP; } - return CL_SUCCESS; + return TEST_PASS; } int diff --git a/test_extensions/media_sharing/test_create_context.cpp b/test_extensions/media_sharing/test_create_context.cpp index 42deaa04..5637bc54 100644 --- a/test_extensions/media_sharing/test_create_context.cpp +++ b/test_extensions/media_sharing/test_create_context.cpp @@ -40,6 +40,13 @@ int context_create(cl_device_id deviceID, cl_context context, cl_command_queue q while (deviceWrapper->AdapterNext()) { + cl_int error; + //check if the test can be run on the adapter + if (CL_SUCCESS != (error = deviceExistForCLTest(gPlatformIDdetected, adapterType, deviceWrapper->Device(), result, sharedHandle))) + { + return result.Result(); + } + if (surfaceFormat != SURFACE_FORMAT_NV12 && !SurfaceFormatCheck(adapterType, *deviceWrapper, surfaceFormat)) { std::string sharedHandleStr = (sharedHandle == SHARED_HANDLE_ENABLED)? "yes": "no"; @@ -68,7 +75,6 @@ int context_create(cl_device_id deviceID, cl_context context, cl_command_queue q 0, }; - cl_int error; clContextWrapper ctx; switch(functionCreate) { @@ -230,13 +236,20 @@ int context_create(cl_device_id deviceID, cl_context context, cl_command_queue q } } - if (!deviceWrapper->Status()) + if (deviceWrapper->Status() != DEVICE_PASS) { std::string adapterName; AdapterToString(adapterType, adapterName); + if (deviceWrapper->Status() == DEVICE_FAIL) + { log_error("%s init failed\n", adapterName.c_str()); result.ResultSub(CResult::TEST_FAIL); - return result.Result(); + } + else + { + log_error("%s init incomplete due to unsupported device\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } } return result.Result(); diff --git a/test_extensions/media_sharing/test_functions_api.cpp b/test_extensions/media_sharing/test_functions_api.cpp index 21fe403d..cdc6ce86 100644 --- a/test_extensions/media_sharing/test_functions_api.cpp +++ b/test_extensions/media_sharing/test_functions_api.cpp @@ -51,6 +51,13 @@ int api_functions(cl_device_id deviceID, cl_context context, cl_command_queue qu //iterates through all devices while (deviceWrapper->AdapterNext()) { + cl_int error; + //check if the test can be run on the adapter + if (CL_SUCCESS != (error = deviceExistForCLTest(gPlatformIDdetected, adapterType, deviceWrapper->Device(), result, sharedHandle))) + { + return result.Result(); + } + if (surfaceFormat != SURFACE_FORMAT_NV12 && !SurfaceFormatCheck(adapterType, *deviceWrapper, surfaceFormat)) { std::string sharedHandleStr = (sharedHandle == SHARED_HANDLE_ENABLED)? "yes": "no"; @@ -81,7 +88,6 @@ int api_functions(cl_device_id deviceID, cl_context context, cl_command_queue qu 0, }; - cl_int error; clContextWrapper ctx = clCreateContext(&contextProperties[0], 1, &gDeviceIDdetected, NULL, NULL, &error); if (error != CL_SUCCESS) { @@ -506,13 +512,20 @@ int api_functions(cl_device_id deviceID, cl_context context, cl_command_queue qu } } - if (!deviceWrapper->Status()) + if (deviceWrapper->Status() != DEVICE_PASS) { std::string adapterName; AdapterToString(adapterType, adapterName); - log_error("%s init failed\n", adapterName.c_str()); - result.ResultSub(CResult::TEST_FAIL); - return result.Result(); + if (deviceWrapper->Status() == DEVICE_FAIL) + { + log_error("%s init failed\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_FAIL); + } + else + { + log_error("%s init incomplete due to unsupported device\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } } return result.Result(); diff --git a/test_extensions/media_sharing/test_functions_kernel.cpp b/test_extensions/media_sharing/test_functions_kernel.cpp index eff297dc..51ac0b70 100644 --- a/test_extensions/media_sharing/test_functions_kernel.cpp +++ b/test_extensions/media_sharing/test_functions_kernel.cpp @@ -71,6 +71,13 @@ int kernel_functions(cl_device_id deviceID, cl_context context, cl_command_queue while (deviceWrapper->AdapterNext()) { + cl_int error; + //check if the test can be run on the adapter + if (CL_SUCCESS != (error = deviceExistForCLTest(gPlatformIDdetected, adapterType, deviceWrapper->Device(), result, sharedHandle))) + { + return result.Result(); + } + if (surfaceFormat != SURFACE_FORMAT_NV12 && !SurfaceFormatCheck(adapterType, *deviceWrapper, surfaceFormat)) { std::string sharedHandleStr = (sharedHandle == SHARED_HANDLE_ENABLED)? "yes": "no"; @@ -109,7 +116,6 @@ int kernel_functions(cl_device_id deviceID, cl_context context, cl_command_queue 0, }; - cl_int error; clContextWrapper ctx = clCreateContext(&contextProperties[0], 1, &gDeviceIDdetected, NULL, NULL, &error); if (error != CL_SUCCESS) { @@ -335,13 +341,20 @@ int kernel_functions(cl_device_id deviceID, cl_context context, cl_command_queue } } - if (!deviceWrapper->Status()) + if (deviceWrapper->Status() != DEVICE_PASS) { - std::string adapter; - AdapterToString(adapterType, adapter); - log_error("%s init failed\n", adapter.c_str()); + std::string adapterName; + AdapterToString(adapterType, adapterName); + if (deviceWrapper->Status() == DEVICE_FAIL) + { + log_error("%s init failed\n", adapterName.c_str()); result.ResultSub(CResult::TEST_FAIL); - return result.Result(); + } + else + { + log_error("%s init incomplete due to unsupported device\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } } return result.Result(); diff --git a/test_extensions/media_sharing/test_get_device_ids.cpp b/test_extensions/media_sharing/test_get_device_ids.cpp index 68fdbf74..f8947ea6 100644 --- a/test_extensions/media_sharing/test_get_device_ids.cpp +++ b/test_extensions/media_sharing/test_get_device_ids.cpp @@ -53,6 +53,12 @@ int get_device_ids(cl_device_id deviceID, cl_context context, cl_command_queue q std::vector mediaDevices; mediaDevices.push_back(deviceWrapper->Device()); + //check if the test can be run on the adapter + if (CL_SUCCESS != (error = deviceExistForCLTest(gPlatformIDdetected, adapterType, deviceWrapper->Device(), result))) + { + return result.Result(); + } + cl_uint devicesAllNum = 0; error = clGetDeviceIDsFromDX9MediaAdapterKHR(gPlatformIDdetected, 1, &mediaAdapterTypes[0], &mediaDevices[0], CL_ALL_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR, 0, 0, &devicesAllNum); @@ -140,13 +146,20 @@ int get_device_ids(cl_device_id deviceID, cl_context context, cl_command_queue q } } - if (!deviceWrapper->Status()) + if (deviceWrapper->Status() != DEVICE_PASS) { - std::string adapter; - AdapterToString(adapterType, adapter); - log_error("%s init failed\n", adapter.c_str()); + std::string adapterName; + AdapterToString(adapterType, adapterName); + if (deviceWrapper->Status() == DEVICE_FAIL) + { + log_error("%s init failed\n", adapterName.c_str()); result.ResultSub(CResult::TEST_FAIL); - return result.Result(); + } + else + { + log_error("%s init incomplete due to unsupported device\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } } return result.Result(); diff --git a/test_extensions/media_sharing/test_interop_sync.cpp b/test_extensions/media_sharing/test_interop_sync.cpp index d15e4fbf..6831a14d 100644 --- a/test_extensions/media_sharing/test_interop_sync.cpp +++ b/test_extensions/media_sharing/test_interop_sync.cpp @@ -40,6 +40,13 @@ int interop_user_sync(cl_device_id deviceID, cl_context context, cl_command_queu while (deviceWrapper->AdapterNext()) { + cl_int error; + //check if the test can be run on the adapter + if (CL_SUCCESS != (error = deviceExistForCLTest(gPlatformIDdetected, adapterType, deviceWrapper->Device(), result, sharedHandle))) + { + return result.Result(); + } + if (surfaceFormat != SURFACE_FORMAT_NV12 && !SurfaceFormatCheck(adapterType, *deviceWrapper, surfaceFormat)) { @@ -71,7 +78,7 @@ int interop_user_sync(cl_device_id deviceID, cl_context context, cl_command_queu 0, }; - cl_int error; + clContextWrapper ctx; switch(functionCreate) { @@ -258,13 +265,21 @@ int interop_user_sync(cl_device_id deviceID, cl_context context, cl_command_queu } } - if (!deviceWrapper->Status()) + if (deviceWrapper->Status() != DEVICE_PASS) { std::string adapterName; AdapterToString(adapterType, adapterName); + + if (deviceWrapper->Status() == DEVICE_FAIL) + { log_error("%s init failed\n", adapterName.c_str()); result.ResultSub(CResult::TEST_FAIL); - return result.Result(); + } + else + { + log_error("%s init incomplete due to unsupported device\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } } return result.Result(); diff --git a/test_extensions/media_sharing/test_memory_access.cpp b/test_extensions/media_sharing/test_memory_access.cpp index 10fe7543..5aabaf6f 100644 --- a/test_extensions/media_sharing/test_memory_access.cpp +++ b/test_extensions/media_sharing/test_memory_access.cpp @@ -45,6 +45,13 @@ int memory_access(cl_device_id deviceID, cl_context context, cl_command_queue qu //iterates through all devices while (deviceWrapper->AdapterNext()) { + cl_int error; + //check if the test can be run on the adapter + if (CL_SUCCESS != (error = deviceExistForCLTest(gPlatformIDdetected, adapterType, deviceWrapper->Device(), result, sharedHandle))) + { + return result.Result(); + } + if (surfaceFormat != SURFACE_FORMAT_NV12 && !SurfaceFormatCheck(adapterType, *deviceWrapper, surfaceFormat)) { std::string sharedHandleStr = (sharedHandle == SHARED_HANDLE_ENABLED)? "yes": "no"; @@ -81,7 +88,6 @@ int memory_access(cl_device_id deviceID, cl_context context, cl_command_queue qu 0, }; - cl_int error; clContextWrapper ctx = clCreateContext(&contextProperties[0], 1, &gDeviceIDdetected, NULL, NULL, &error); if (error != CL_SUCCESS) { @@ -357,13 +363,20 @@ int memory_access(cl_device_id deviceID, cl_context context, cl_command_queue qu } } - if (!deviceWrapper->Status()) + if (deviceWrapper->Status() != DEVICE_PASS) { std::string adapterName; AdapterToString(adapterType, adapterName); + if (deviceWrapper->Status() == DEVICE_FAIL) + { log_error("%s init failed\n", adapterName.c_str()); result.ResultSub(CResult::TEST_FAIL); - return result.Result(); + } + else + { + log_error("%s init incomplete due to unsupported device\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } } return result.Result(); diff --git a/test_extensions/media_sharing/test_other_data_types.cpp b/test_extensions/media_sharing/test_other_data_types.cpp index 0e0bce35..a2aa7cbd 100644 --- a/test_extensions/media_sharing/test_other_data_types.cpp +++ b/test_extensions/media_sharing/test_other_data_types.cpp @@ -65,13 +65,19 @@ int other_data_types(cl_device_id deviceID, cl_context context, cl_command_queue while (deviceWrapper->AdapterNext()) { + cl_int error; + //check if the test can be run on the adapter + if (CL_SUCCESS != (error = deviceExistForCLTest(gPlatformIDdetected, adapterType, deviceWrapper->Device(), result, sharedHandle))) + { + return result.Result(); + } + cl_context_properties contextProperties[] = { CL_CONTEXT_PLATFORM, (cl_context_properties)gPlatformIDdetected, AdapterTypeToContextInfo(adapterType), (cl_context_properties)deviceWrapper->Device(), 0, }; - cl_int error; clContextWrapper ctx = clCreateContext(&contextProperties[0], 1, &gDeviceIDdetected, NULL, NULL, &error); if (error != CL_SUCCESS) { @@ -419,13 +425,20 @@ int other_data_types(cl_device_id deviceID, cl_context context, cl_command_queue } } - if (!deviceWrapper->Status()) + if (deviceWrapper->Status() != DEVICE_PASS) { - std::string adapter; - AdapterToString(adapterType, adapter); - log_error("%s init failed\n", adapter.c_str()); + std::string adapterName; + AdapterToString(adapterType, adapterName); + if (deviceWrapper->Status() == DEVICE_FAIL) + { + log_error("%s init failed\n", adapterName.c_str()); result.ResultSub(CResult::TEST_FAIL); - return result.Result(); + } + else + { + log_error("%s init incomplete due to unsupported device\n", adapterName.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } } return result.Result(); diff --git a/test_extensions/media_sharing/utils.cpp b/test_extensions/media_sharing/utils.cpp index b32e9556..41899b76 100644 --- a/test_extensions/media_sharing/utils.cpp +++ b/test_extensions/media_sharing/utils.cpp @@ -1935,3 +1935,36 @@ float convert_half_to_float( unsigned short halfValue ) outFloat.bits = ( sign << 31 ) | ( exponent << 23 ) | mantissa; return outFloat.floatValue; } + +cl_int deviceExistForCLTest(cl_platform_id platform, + cl_dx9_media_adapter_type_khr media_adapters_type, + void *media_adapters, + CResult &result, + TSharedHandleType sharedHandle /*default SHARED_HANDLE_ENABLED*/ + ) +{ + cl_int _error; + cl_uint devicesAllNum = 0; + std::string sharedHandleStr = (sharedHandle == SHARED_HANDLE_ENABLED)? "yes": "no"; + std::string adapterStr; + AdapterToString(media_adapters_type, adapterStr); + + _error = clGetDeviceIDsFromDX9MediaAdapterKHR(platform, 1, + &media_adapters_type, &media_adapters, CL_PREFERRED_DEVICES_FOR_DX9_MEDIA_ADAPTER_KHR, 0, 0, &devicesAllNum); + + if (_error != CL_SUCCESS) + { + if(_error != CL_DEVICE_NOT_FOUND) + { + log_error("clGetDeviceIDsFromDX9MediaAdapterKHR failed: %s\n", IGetErrorString(_error)); + result.ResultSub(CResult::TEST_ERROR); + } + else + { + log_info("Skipping test case, device type is not supported by a device (adapter type: %s, shared handle: %s)\n", adapterStr.c_str(), sharedHandleStr.c_str()); + result.ResultSub(CResult::TEST_NOTSUPPORTED); + } + } + + return _error; +} diff --git a/test_extensions/media_sharing/utils.h b/test_extensions/media_sharing/utils.h index 4731b268..295a2d25 100644 --- a/test_extensions/media_sharing/utils.h +++ b/test_extensions/media_sharing/utils.h @@ -15,17 +15,19 @@ // #ifndef __UTILS_KHR_MEDIA_H #define __UTILS_KHR_MEDIA_H - +#include "../../test_common/harness/compat.h" +#include #include "wrappers.h" #include "CL/cl_dx9_media_sharing.h" - #include "../../test_common/harness/typeWrappers.h" - -#include #include #include #include + + + + extern clGetDeviceIDsFromDX9MediaAdapterKHR_fn clGetDeviceIDsFromDX9MediaAdapterKHR; extern clCreateFromDX9MediaSurfaceKHR_fn clCreateFromDX9MediaSurfaceKHR; extern clEnqueueAcquireDX9MediaSurfacesKHR_fn clEnqueueAcquireDX9MediaSurfacesKHR; @@ -168,4 +170,5 @@ cl_ushort convert_float_to_half( float f ); float convert_half_to_float( unsigned short halfValue ); int DetectFloatToHalfRoundingMode( cl_command_queue ); +cl_int deviceExistForCLTest(cl_platform_id platform,cl_dx9_media_adapter_type_khr media_adapters_type,void *media_adapters,CResult &result,TSharedHandleType sharedHandle=SHARED_HANDLE_DISABLED); #endif // __UTILS_KHR_MEDIA_H diff --git a/test_extensions/media_sharing/wrappers.cpp b/test_extensions/media_sharing/wrappers.cpp index 27907ca3..af13633b 100644 --- a/test_extensions/media_sharing/wrappers.cpp +++ b/test_extensions/media_sharing/wrappers.cpp @@ -141,7 +141,7 @@ CDeviceWrapper::~CDeviceWrapper() #if defined(_WIN32) CD3D9Wrapper::CD3D9Wrapper(): -_d3d9(NULL), _d3dDevice(NULL), _status(true), _adapterIdx(0), _adapterFound(false) +_d3d9(NULL), _d3dDevice(NULL), _status(DEVICE_PASS), _adapterIdx(0), _adapterFound(false) { WindowInit(); @@ -149,7 +149,7 @@ _d3d9(NULL), _d3dDevice(NULL), _status(true), _adapterIdx(0), _adapterFound(fals if (!_d3d9) { log_error("Direct3DCreate9 failed\n"); - _status = false; + _status = DEVICE_FAIL; } } @@ -169,16 +169,16 @@ void CD3D9Wrapper::Destroy() _d3dDevice = 0; } -bool CD3D9Wrapper::Init() +cl_int CD3D9Wrapper::Init() { if (!WindowHandle()) { log_error("D3D9: Window is not created\n"); - _status = false; - return false; + _status = DEVICE_FAIL; + return DEVICE_FAIL; } - if(!_d3d9 || !_status || !_adapterFound) + if(!_d3d9 || DEVICE_PASS != _status || !_adapterFound) return false; _d3d9->GetAdapterDisplayMode(_adapterIdx - 1, &_d3ddm); @@ -201,8 +201,8 @@ bool CD3D9Wrapper::Init() processingType, &d3dParams, &_d3dDevice) ) ) { log_error("CreateDevice failed\n"); - _status = false; - return false; + _status = DEVICE_FAIL; + return DEVICE_FAIL; } _d3dDevice->BeginScene(); @@ -232,14 +232,14 @@ D3DADAPTER_IDENTIFIER9 CD3D9Wrapper::Adapter() return _adapter; } -bool CD3D9Wrapper::Status() const +TDeviceStatus CD3D9Wrapper::Status() const { return _status; } bool CD3D9Wrapper::AdapterNext() { - if (!_status) + if (DEVICE_PASS != _status) return false; _adapterFound = false; @@ -253,7 +253,7 @@ bool CD3D9Wrapper::AdapterNext() if(FAILED(_d3d9->GetAdapterIdentifier(_adapterIdx - 1, 0, &_adapter))) { log_error("D3D9: GetAdapterIdentifier failed\n"); - _status = false; + _status = DEVICE_FAIL; return false; } @@ -262,7 +262,7 @@ bool CD3D9Wrapper::AdapterNext() Destroy(); if(!Init()) { - _status = false; + _status = DEVICE_FAIL; _adapterFound = false; } break; @@ -278,7 +278,7 @@ unsigned int CD3D9Wrapper::AdapterIdx() const CD3D9ExWrapper::CD3D9ExWrapper(): -_d3d9Ex(NULL), _d3dDeviceEx(NULL), _status(true), _adapterIdx(0), _adapterFound(false) +_d3d9Ex(NULL), _d3dDeviceEx(NULL), _status(DEVICE_PASS), _adapterIdx(0), _adapterFound(false) { WindowInit(); @@ -286,7 +286,7 @@ _d3d9Ex(NULL), _d3dDeviceEx(NULL), _status(true), _adapterIdx(0), _adapterFound( if (FAILED(result) || !_d3d9Ex) { log_error("Direct3DCreate9Ex failed\n"); - _status = false; + _status = DEVICE_FAIL; } } @@ -319,17 +319,17 @@ D3DADAPTER_IDENTIFIER9 CD3D9ExWrapper::Adapter() return _adapter; } -bool CD3D9ExWrapper::Init() +cl_int CD3D9ExWrapper::Init() { if (!WindowHandle()) { log_error("D3D9EX: Window is not created\n"); - _status = false; - return false; + _status = DEVICE_FAIL; + return DEVICE_FAIL; } - if(!_d3d9Ex || !_status || !_adapterFound) - return false; + if(!_d3d9Ex || DEVICE_FAIL == _status || !_adapterFound) + return DEVICE_FAIL; RECT rect; GetClientRect(WindowHandle(),&rect); @@ -353,15 +353,15 @@ bool CD3D9ExWrapper::Init() processingType, &d3dParams, NULL, &_d3dDeviceEx) ) ) { log_error("CreateDeviceEx failed\n"); - _status = false; - return false; + _status = DEVICE_FAIL; + return DEVICE_FAIL; } _d3dDeviceEx->BeginScene(); _d3dDeviceEx->Clear(0, NULL, D3DCLEAR_TARGET, 0, 1.0f, 0); _d3dDeviceEx->EndScene(); - return true; + return DEVICE_PASS; } void CD3D9ExWrapper::Destroy() @@ -371,14 +371,14 @@ void CD3D9ExWrapper::Destroy() _d3dDeviceEx = 0; } -bool CD3D9ExWrapper::Status() const +TDeviceStatus CD3D9ExWrapper::Status() const { return _status; } bool CD3D9ExWrapper::AdapterNext() { - if (!_status) + if (DEVICE_FAIL == _status) return false; _adapterFound = false; @@ -392,7 +392,7 @@ bool CD3D9ExWrapper::AdapterNext() if(FAILED(_d3d9Ex->GetAdapterIdentifier(_adapterIdx - 1, 0, &_adapter))) { log_error("D3D9EX: GetAdapterIdentifier failed\n"); - _status = false; + _status = DEVICE_FAIL; return false; } @@ -400,8 +400,8 @@ bool CD3D9ExWrapper::AdapterNext() Destroy(); if(!Init()) { - _status = false; - _adapterFound = false; + _status = DEVICE_FAIL; + _adapterFound = _status; } break; @@ -416,7 +416,7 @@ unsigned int CD3D9ExWrapper::AdapterIdx() const } CDXVAWrapper::CDXVAWrapper(): -_dxvaDevice(NULL), _status(true), _adapterFound(false) +_dxvaDevice(NULL), _status(DEVICE_PASS), _adapterFound(false) { _status = _d3d9.Status(); } @@ -431,19 +431,24 @@ void * CDXVAWrapper::Device() const return _dxvaDevice; } -bool CDXVAWrapper::Status() const +TDeviceStatus CDXVAWrapper::Status() const { - return _status && _d3d9.Status(); + if(_status == DEVICE_FAIL || _d3d9.Status() == DEVICE_FAIL) + return DEVICE_FAIL; + else if(_status == DEVICE_NOTSUPPORTED || _d3d9.Status() == DEVICE_NOTSUPPORTED) + return DEVICE_NOTSUPPORTED; + else + return DEVICE_PASS; } bool CDXVAWrapper::AdapterNext() { - if (!_status) + if (DEVICE_PASS != _status) return false; _adapterFound = _d3d9.AdapterNext(); _status = _d3d9.Status(); - if (!_status) + if (DEVICE_PASS != _status) { _adapterFound = false; return false; @@ -454,7 +459,7 @@ bool CDXVAWrapper::AdapterNext() DXVAHDDestroy(); _status = DXVAHDInit(); - if (!_status) + if (DEVICE_PASS != _status) { _adapterFound = false; return false; @@ -463,10 +468,10 @@ bool CDXVAWrapper::AdapterNext() return true; } -bool CDXVAWrapper::DXVAHDInit() +TDeviceStatus CDXVAWrapper::DXVAHDInit() { - if (!_status || !_d3d9.Status() || !_adapterFound) - return false; + if ((_status == DEVICE_FAIL) || (_d3d9.Status() == DEVICE_FAIL) || !_adapterFound) + return DEVICE_FAIL; DXVAHD_RATIONAL fps = { VIDEO_FPS, 1 }; @@ -480,20 +485,27 @@ bool CDXVAWrapper::DXVAHDInit() desc.OutputHeight = WindowHeight(); #ifdef USE_SOFTWARE_PLUGIN - _status = false; - return false; + _status = DEVICE_FAIL; + return DEVICE_FAIL; #endif HRESULT hr = DXVAHD_CreateDevice(static_cast(_d3d9.Device()), &desc, DXVAHD_DEVICE_USAGE_PLAYBACK_NORMAL, NULL, &_dxvaDevice); if(FAILED(hr)) { + if (hr == E_NOINTERFACE) + { + log_error("DXVAHD_CreateDevice skipped due to no supported devices!\n"); + _status = DEVICE_NOTSUPPORTED; + } + else + { log_error("DXVAHD_CreateDevice failed\n"); - _status = false; - return false; + _status = DEVICE_FAIL; + } } - return true; + return _status; } void CDXVAWrapper::DXVAHDDestroy() diff --git a/test_extensions/media_sharing/wrappers.h b/test_extensions/media_sharing/wrappers.h index bafc8a0a..45b70326 100644 --- a/test_extensions/media_sharing/wrappers.h +++ b/test_extensions/media_sharing/wrappers.h @@ -18,10 +18,37 @@ #if defined(_WIN32) #include +#if defined (__MINGW32__) +#include +typedef unsigned char UINT8; +#define __out +#define __in +#define __inout +#define __out_bcount(size) +#define __out_bcount_opt(size) +#define __in_opt +#define __in_ecount(size) +#define __in_ecount_opt(size) +#define __out_opt +#define __out_ecount(size) +#define __out_ecount_opt(size) +#define __in_bcount_opt(size) +#define __inout_opt +#define __inout_bcount(size) +#define __in_bcount(size) +#define __deref_out +#endif #include #include #endif +enum TDeviceStatus +{ + DEVICE_NOTSUPPORTED, + DEVICE_PASS, + DEVICE_FAIL, +}; + class CDeviceWrapper { public: enum TAccelerationType @@ -36,7 +63,7 @@ public: virtual bool AdapterNext() = 0; virtual unsigned int AdapterIdx() const = 0; virtual void *Device() const = 0; - virtual bool Status() const = 0; + virtual TDeviceStatus Status() const = 0; virtual void *D3D() const = 0; #if defined(_WIN32) @@ -81,7 +108,7 @@ public: virtual bool AdapterNext(); virtual unsigned int AdapterIdx() const; virtual void *Device() const; - virtual bool Status() const; + virtual TDeviceStatus Status() const; virtual void *D3D() const; private: @@ -89,13 +116,13 @@ private: LPDIRECT3DDEVICE9 _d3dDevice; D3DDISPLAYMODE _d3ddm; D3DADAPTER_IDENTIFIER9 _adapter; - bool _status; + TDeviceStatus _status; unsigned int _adapterIdx; bool _adapterFound; D3DFORMAT Format(); D3DADAPTER_IDENTIFIER9 Adapter(); - bool Init(); + int Init(); void Destroy(); }; @@ -107,7 +134,7 @@ public: virtual bool AdapterNext(); virtual unsigned int AdapterIdx() const; virtual void *Device() const; - virtual bool Status() const; + virtual TDeviceStatus Status() const; virtual void *D3D() const; private: @@ -115,13 +142,13 @@ private: LPDIRECT3DDEVICE9EX _d3dDeviceEx; D3DDISPLAYMODEEX _d3ddmEx; D3DADAPTER_IDENTIFIER9 _adapter; - bool _status; + TDeviceStatus _status; unsigned int _adapterIdx; bool _adapterFound; D3DFORMAT Format(); D3DADAPTER_IDENTIFIER9 Adapter(); - bool Init(); + int Init(); void Destroy(); }; @@ -133,21 +160,21 @@ public: virtual bool AdapterNext(); virtual unsigned int AdapterIdx() const; virtual void *Device() const; - virtual bool Status() const; + virtual TDeviceStatus Status() const; virtual void *D3D() const; const CD3D9ExWrapper &D3D9() const; private: CD3D9ExWrapper _d3d9; IDXVAHD_Device *_dxvaDevice; - bool _status; + TDeviceStatus _status; bool _adapterFound; static const D3DFORMAT RENDER_TARGET_FORMAT; static const D3DFORMAT VIDEO_FORMAT; static const unsigned int VIDEO_FPS; - bool DXVAHDInit(); + TDeviceStatus DXVAHDInit(); void DXVAHDDestroy(); };

>p@%u3(X*g@CA*xuUM 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

|`Re$sIEbCkQCfS(Z1`h1GF2>q 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áB`qlm}8K5?t?Zx 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