From f858a5de33548f61d7a57e24732e0f66517e60cf Mon Sep 17 00:00:00 2001 From: Andrey Kasaurov Date: Wed, 9 Apr 2025 21:11:48 -0400 Subject: [PATCH] Introduce External/OpenCL subsuite prototype --- External/CMakeLists.txt | 1 + External/OpenCL/CMakeLists.txt | 49 + External/OpenCL/README | 39 + .../BufferBandwidth/BufferBandwidth.cpp | 1387 +++++++++++++++++ .../BufferBandwidth/BufferBandwidth.hpp | 212 +++ .../BufferBandwidth_Kernels.cl | 73 + .../AMDAPP_SDK/BufferBandwidth/CMakeLists.txt | 25 + .../tests/AMDAPP_SDK/BufferBandwidth/Host.cpp | 621 ++++++++ .../tests/AMDAPP_SDK/BufferBandwidth/Host.h | 50 + .../tests/AMDAPP_SDK/BufferBandwidth/Log.cpp | 172 ++ .../tests/AMDAPP_SDK/BufferBandwidth/Log.h | 74 + .../AMDAPP_SDK/BufferBandwidth/Shared.cpp | 376 +++++ .../tests/AMDAPP_SDK/BufferBandwidth/Shared.h | 78 + .../AMDAPP_SDK/BufferBandwidth/Timer.cpp | 91 ++ .../tests/AMDAPP_SDK/BufferBandwidth/Timer.h | 93 ++ .../BufferBandwidth/docs/BufferBandwidth.pdf | Bin 0 -> 217046 bytes .../OpenCL/tests/AMDAPP_SDK/CMakeLists.txt | 6 + .../AMDAPP_SDK/HelloWorld/CMakeLists.txt | 25 + .../AMDAPP_SDK/HelloWorld/HelloWorld.cpp | 171 ++ .../HelloWorld/HelloWorld.reference_output | 6 + .../HelloWorld/HelloWorld_Kernel.cl | 171 ++ .../AMDAPP_SDK/HelloWorld/doc/Hello_World.pdf | Bin 0 -> 211992 bytes .../tests/AMDAPP_SDK/Template/CMakeLists.txt | 25 + .../tests/AMDAPP_SDK/Template/Template.cpp | 680 ++++++++ .../tests/AMDAPP_SDK/Template/Template.hpp | 119 ++ .../Template/Template.reference_output | 8 + .../AMDAPP_SDK/Template/Template_Kernels.cl | 30 + .../AMDAPP_SDK/Template/docs/Template.pdf | Bin 0 -> 222842 bytes External/OpenCL/tests/CMakeLists.txt | 4 + 29 files changed, 4586 insertions(+) create mode 100644 External/OpenCL/CMakeLists.txt create mode 100644 External/OpenCL/README create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth.cpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth.hpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth_Kernels.cl create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/CMakeLists.txt create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Host.cpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Host.h create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.cpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.h create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.cpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.h create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.cpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.h create mode 100644 External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/docs/BufferBandwidth.pdf create mode 100644 External/OpenCL/tests/AMDAPP_SDK/CMakeLists.txt create mode 100644 External/OpenCL/tests/AMDAPP_SDK/HelloWorld/CMakeLists.txt create mode 100644 External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.cpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.reference_output create mode 100644 External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld_Kernel.cl create mode 100644 External/OpenCL/tests/AMDAPP_SDK/HelloWorld/doc/Hello_World.pdf create mode 100644 External/OpenCL/tests/AMDAPP_SDK/Template/CMakeLists.txt create mode 100644 External/OpenCL/tests/AMDAPP_SDK/Template/Template.cpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/Template/Template.hpp create mode 100644 External/OpenCL/tests/AMDAPP_SDK/Template/Template.reference_output create mode 100644 External/OpenCL/tests/AMDAPP_SDK/Template/Template_Kernels.cl create mode 100644 External/OpenCL/tests/AMDAPP_SDK/Template/docs/Template.pdf create mode 100644 External/OpenCL/tests/CMakeLists.txt diff --git a/External/CMakeLists.txt b/External/CMakeLists.txt index 8afa070a7c..6b03602098 100644 --- a/External/CMakeLists.txt +++ b/External/CMakeLists.txt @@ -10,3 +10,4 @@ add_subdirectory(ffmpeg) add_subdirectory(skidmarks10) add_subdirectory(sollve_vv) add_subdirectory(smoke) +add_subdirectory(OpenCL) diff --git a/External/OpenCL/CMakeLists.txt b/External/OpenCL/CMakeLists.txt new file mode 100644 index 0000000000..a039c7667b --- /dev/null +++ b/External/OpenCL/CMakeLists.txt @@ -0,0 +1,49 @@ +include(External) + +llvm_externals_find(TEST_SUITE_OPENCL_ROOT "opencl" "OpenCL prerequisites") +message(STATUS "TEST_SUITE_OPENCL_ROOT: ${TEST_SUITE_OPENCL_ROOT}") +get_filename_component(OPENCL_CLANG_PATH ${CMAKE_CXX_COMPILER} DIRECTORY) +string(REGEX REPLACE "bin$" "lib" OPENCL_LIB_PATH "${OPENCL_CLANG_PATH}") +message(STATUS "OPENCL_CLANG_PATH: ${OPENCL_CLANG_PATH}") +message(STATUS "OPENCL_LIB_PATH: ${OPENCL_LIB_PATH}") + +macro(create_local_test TestName TestSources TestData VariantCPPFLAGS VariantLDFLAGS VariantLibs) + set(_sources "${TestSources}") + set(_executable ${TestName}) + set(_data "${TestData}") + llvm_test_run(WORKDIR %S + EXECUTABLE "LD_LIBRARY_PATH=${OPENCL_LIB_PATH}" ./${_executable} > %o + ) + set(REFERENCE_OUTPUT) + # Verify reference output if it exists. + if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${TestName}.reference_output) + set(REFERENCE_OUTPUT ${TestName}.reference_output) + llvm_test_verify(WORKDIR %S + %b/${FPCMP} %o ${REFERENCE_OUTPUT} + ) + llvm_test_executable(${_executable} "${_sources}") + llvm_test_data(${_executable} ${_data} ${REFERENCE_OUTPUT}) + else() + llvm_test_executable(${_executable} "${_sources}") + llvm_test_data(${_executable} ${_data}) + endif() + target_compile_options(${_executable} PUBLIC ${VariantCPPFLAGS}) + target_link_options(${_executable} PUBLIC ${VariantLDFLAGS}) + if(VariantLibs) + target_link_libraries(${_executable} ${VariantLibs}) + endif() + add_dependencies(opencl-tests-simple-${TestName} ${_executable}) +endmacro() + +if(TEST_SUITE_OPENCL_ROOT) + add_custom_target(opencl-tests-simple COMMENT "Build all simple OpenCL tests") + # Add common OpenCL related flags + list(APPEND LDFLAGS -lOpenCL -L${OPENCL_LIB_PATH}) + add_subdirectory(tests) + message(STATUS "OPENCL_SIMPLE_TESTS_LIST: ${OPENCL_SIMPLE_TESTS_LIST}") + add_custom_target(check-opencl-simple COMMENT "Run all simple OpenCL tests" + COMMAND ${TEST_SUITE_LIT} ${TEST_SUITE_LIT_FLAGS} ${OPENCL_SIMPLE_TESTS_LIST} + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + DEPENDS opencl-tests-simple + USES_TERMINAL) +endif() diff --git a/External/OpenCL/README b/External/OpenCL/README new file mode 100644 index 0000000000..3b6745a00f --- /dev/null +++ b/External/OpenCL/README @@ -0,0 +1,39 @@ +OpenCL Tests +========== + +OpenCL tests are enabled if cmake is invoked with +-DTEST_SUITE_EXTERNALS_DIR= and specified externals directory contains at least one ROCm installation. + +Expected externals directory structure: +Externals/ + opencl/ + opencl[-version]/ -- OpenCL compiler installation, which should, at the very least, have the following components: + include/CL/ -- header files including opencl.h + bin/ -- binaries including clang/clang++ (and clinfo for convenience) + lib/ -- libraries including libOpenCL.so and implementation specifics (like libamdocl64.so, libhsa-runtime64.so, librocprofiler-register.so, libamd_comgr.so.2) + lib/clang/NN/include/ -- some clang related inclues and libs + lib/clang/NN/lib/ -- libclang_rt.builtins-x86_64.a + +[export AMDGPU_ARCHS=gfx906;gfx908 # List of AMDGPU archs to compile, not used at the moment] +export EXTERNAL_DIR=/your/Externals/path # Path to Exteranls with the OpenCL compiler +export CLANG_DIR=/your/clang/bin # Path to llvm-test-suite build +export TEST_SUITE_DIR=/path/to/test-suite-sources # Path to llvm-test-suite sources + +Configure, build and run tests: + +``` +$ mkdir build-llvm-test-suite +$ cd build-llvm-test-suite + +$ export EXTERNAL_DIR=/repos/Temp/LlvmTestSuite/Externals +$ export TEST_SUITE_DIR=/repos/llvm-test-suite +$ export CLANG_DIR=$EXTERNAL_DIR/opencl/opencl-6.3.0-14740 + +$ cmake -G Ninja -DTEST_SUITE_EXTERNALS_DIR=$EXTERNAL_DIR -DAMDGPU_ARCHS=$AMDGPU_ARCHS -DCMAKE_CXX_COMPILER="$CLANG_DIR/bin/amdclang++" -DCMAKE_C_COMPILER="$CLANG_DIR/bin/amdclang" $TEST_SUITE_DIR + +$ ninja opencl-tests-simple # To build all the tests +$ ninja opencl-tests-simple-HelloWorld # To build a apecific test +$ ninja check-opencl-simple # To build & run all the tests +$ ninja check-opencl-simple-HelloWorld # To build & run a specific test +``` + diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth.cpp b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth.cpp new file mode 100644 index 0000000000..b382dcfcac --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth.cpp @@ -0,0 +1,1387 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#include "Shared.h" +#include "Host.h" +#include "Log.h" +#include "Timer.h" + +#define SUCCESS 0 +#define FAILURE 1 +#define EXPECTED_FAILURE 2 + +#define SAMPLE_VERSION "AMD-APP-SDK-v2.9.214.1" + +#define WS 128 // work group size + +int nLoops; // overall number of timing loops +int loop; // number of read/write buffer loops +int nRepeats; // # of repeats for each transfer step +int nSkip; // to discount lazy allocation effects, etc. +int nKLoops; // repeat inside kernel to show peak mem B/W +int nBytes; // input and output buffer size +int nThreads; // number of Device work items +int nItems; // number of 32-bit 4-vectors for Device kernel +int nAlign; // safe bet for most PCs + +int nBytesResult; + +bool printLog; +bool doHost; +int whichTest; + +bool mapRW; +bool timings; +int nWF; +double setupTime; + +TestLog *tlog; +bool vFailure = false; +bool signalA = false; +bool signalB = false; +void *memIn, + *memOut, + *memResult, + *memScratch; + +cl_mem inputBuffer, + outputBuffer, + resultBuffer, + resultBuffer2, + copyBuffer; + +void usage() +{ + std::cout << "\nOptions:\n\n" << + " -type Type of test:\n\n" << + " 0 clEnqueue[Map,Unmap]\n" << + " 1 clEnqueue[Read,Write]\n" << + " 2 clEnqueueCopy\n" << + " 3 clEnqueue[Read,Write], prepinned\n\n" << + " -pcie or -dma Measure PCIe/interconnect bandwidth\n" << + " -noblock When -pcie is active, measure PCIe/interconnect\n" << + " bandwidth using multiple back-to-back asynchronous\n" << + " buffer copies\n" << + " -lp When -noblock is active, set the number of read/write\n" << + " buffer\n" << + " -nwk Number of CPU workers (max: 32 (Linux: 1))\n" << + " -nl Number of timing loops\n" << + " -nr Repeat each timing times (can't be 0)\n" << + " -nk Number of loops in kernel\n" << + " -nb Buffer size in bytes (min: 2048*CPU Workers)\n" << + " -nw # of wave fronts per SIMD (can't be 0)\n" << + " (default: 7)\n" << + " -l Print complete timing log\n" << + " -s Skip first timings for average\n" << + " (default: 1)\n" << + " -[if,of,cf] Input, output, copy flags\n" << + " (ok to use multiple):\n\n"; + + for(int i = 0; i < nFlags; i++ ) + std::cout << " " << i << " " << flags[i].s << "\n"; + std::cout << "\n"; + + std::cout << " -m always map as MAP_READ | MAP_WRITE\n" << + " -db disable host mem B/W baseline\n" << + " -d Number of Device device\n" << + " (always be 0, mean use the first device)\n" << + " -t Print all timings including setup-time\n" << + " -h print this message\n\n" << + " -v print the APP SDK version\n\n"; + exit(SUCCESS); +} + +void parseOptions(int argc, char * argv[]) +{ + while(--argc) + { +#ifdef _WIN32 + if( strcmp(argv[argc], "-nwk") == 0 ) + { + if ((argv[ argc + 1 ]) == NULL) + { + std::cout<<"Argument needed for -nwk!"< 3 || whichTest < 0 ) + { + std::cout<<"Testtype index should be between 0 and 3!"<Timer( "PCIe B/W host->device (GBPS)", t1.GetElapsedTime(), nBytes, 1 ); + } + else + { + const char *msg; + + if( mapRW ) + msg = "clEnqueueMapBuffer -- READ|WRITE (GBPS)"; + else + msg = "clEnqueueMapBuffer -- READ (GBPS)"; + + tlog->Timer( msg, t1.GetElapsedTime(), nBytes, 1 ); + tlog->Timer( "CPU read (GBPS)", t2.GetElapsedTime(), nBytes, 1 ); + tlog->Timer( "clEnqueueUnmapMemObject() (GBPS)", t3.GetElapsedTime(), nBytes, 1 ); + + if( verify ) + tlog->Msg( "\n Verification Passed!\n", "" ); + else + { + tlog->Error( "\n Verification Failed!\n", "" ); + vFailure = true; + } + } +} + +void timedBufMappedWrite( cl_command_queue queue, + cl_mem buf, + unsigned char v, + bool pcie ) +{ + CPerfCounter t1, t2, t3; + cl_int ret; + cl_event ev; + void *ptr; + cl_map_flags mapFlag = CL_MAP_READ | CL_MAP_WRITE; + + t1.Reset(); + t2.Reset(); + t3.Reset(); + + t1.Start(); + + if( !mapRW ) + mapFlag = CL_MAP_WRITE_INVALIDATE_REGION; + + ptr = (void * ) clEnqueueMapBuffer( queue, + buf, + CL_FALSE, + mapFlag, + 0, + nBytes, + 0, NULL, + &ev, + &ret ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + + t2.Start(); + + memset_MT( ptr, v, nBytes ); + + t2.Stop(); + + t3.Start(); + + ret = clEnqueueUnmapMemObject( queue, + buf, + (void *) ptr, + 0, NULL, &ev ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t3.Stop(); + + if( pcie ) + { + tlog->Timer( "PCIe B/W device->host (GBPS)", t3.GetElapsedTime(), nBytes, 1 ); + } + else + { + const char *msg; + + if( mapRW ) + msg = "clEnqueueMapBuffer -- READ|WRITE (GBPS)"; + else + msg = "clEnqueueMapBuffer -- WRITE (GBPS)"; + + tlog->Timer( msg, t1.GetElapsedTime(), nBytes, 1 ); + + tlog->Timer( "memset() (GBPS)", t2.GetElapsedTime(), nBytes, 1 ); + + tlog->Timer( "clEnqueueUnmapMemObject() (GBPS)", t3.GetElapsedTime(), nBytes, 1 ); + } +} + +void timedBufMap( cl_command_queue queue, + cl_mem buf, + void **ptr, + bool quiet ) +{ + CPerfCounter t1; + cl_int ret; + cl_event ev; + cl_map_flags mapFlag = CL_MAP_READ | CL_MAP_WRITE; + + t1.Reset(); + t1.Start(); + + *ptr = (void * ) clEnqueueMapBuffer( queue, + buf, + CL_FALSE, + mapFlag, + 0, + nBytes, + 0, NULL, + &ev, + &ret ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + + const char *msg; + + if( mapRW ) + msg = "clEnqueueMapBuffer -- READ|WRITE (GBPS)"; + else + msg = "clEnqueueMapBuffer -- READ (GBPS)"; + + if( !quiet ) + tlog->Timer( msg, t1.GetElapsedTime(), nBytes, 1 ); +} + +void timedBufUnmap( cl_command_queue queue, + cl_mem buf, + void **ptr, + bool quiet ) +{ + CPerfCounter t1; + cl_int ret; + cl_event ev; + + t1.Reset(); + t1.Start(); + + ret = clEnqueueUnmapMemObject( queue, + buf, + (void *) *ptr, + 0, NULL, &ev ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + + if( !quiet ) + tlog->Timer( "clEnqueueUnmapMemObject() (GBPS)", t1.GetElapsedTime(), nBytes, 1 ); +} + +void timedBufCLRead( cl_command_queue queue, + cl_mem buf, + void *ptr, + unsigned char v, + bool pcie ) +{ + CPerfCounter t1; + cl_int ret; + cl_event ev; + + t1.Start(); + + ret = clEnqueueReadBuffer( queue, + buf, + CL_FALSE, + 0, + nBytes, + ptr, + 0, NULL, + &ev ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + + bool verify = readVerifyMemCPU_MT( ptr, v, nBytes ); + if(!verify) + vFailure = true; + + if( pcie ) + { + tlog->Timer("PCIe B/W device->host (GBPS)", t1.GetElapsedTime(), nBytes, 1 ); + } + else + { + tlog->Timer( "clEnqueueReadBuffer (GBPS)", t1.GetElapsedTime(), nBytes, 1 ); + } +} + +void timedBufCLWrite( cl_command_queue queue, + cl_mem buf, + void *ptr, + unsigned char v, + bool pcie ) +{ + CPerfCounter t1; + cl_int ret; + cl_event ev; + + memset( ptr, v, nBytes ); + + t1.Start(); + + ret = clEnqueueWriteBuffer( queue, + buf, + CL_FALSE, + 0, + nBytes, + ptr, + 0, NULL, + &ev ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + + if( pcie ) + { + tlog->Timer( "PCIe B/W host->device (GBPS)", t1.GetElapsedTime(), nBytes, 1 ); + } + else + { + tlog->Timer( "clEnqueueWriteBuffer (GBPS)", t1.GetElapsedTime(), nBytes, 1 ); + } +} + +void timedBufCLCopy( cl_command_queue queue, + cl_mem srcBuf, + cl_mem dstBuf ) +{ + CPerfCounter t1; + cl_int ret; + cl_event ev; + + t1.Start(); + + ret = clEnqueueCopyBuffer( queue, + srcBuf, + dstBuf, + 0, 0, + nBytes, + 0, NULL, + &ev ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + + tlog->Timer( "clEnqueueCopyBuffer (GBPS)", t1.GetElapsedTime(), nBytes, 1 ); +} + +void timedKernel( cl_command_queue queue, + cl_kernel kernel, + cl_mem bufSrc, + cl_mem bufDst, + unsigned char v, + bool quiet ) +{ + cl_int ret; + cl_event ev=0; + CPerfCounter t; + + cl_uint nItemsPerThread = nItems / nThreads; + + size_t global_work_size[2] = { nThreads, 0 }; + size_t local_work_size[2] = { WS, 0 }; + + cl_uint val=0; + + for(int i = 0; i < sizeof( cl_uint ); i++) + val |= v << (i * 8); + + clSetKernelArg( kernel, 0, sizeof(void *), (void *) &bufSrc ); + clSetKernelArg( kernel, 1, sizeof(void *), (void *) &bufDst ); + clSetKernelArg( kernel, 2, sizeof(cl_uint), (void *) &nItemsPerThread); + clSetKernelArg( kernel, 3, sizeof(cl_uint), (void *) &val); + clSetKernelArg( kernel, 4, sizeof(cl_uint), (void *) &nKLoops); + + t.Reset(); + t.Start(); + + ret = clEnqueueNDRangeKernel( queue, + kernel, + 1, + NULL, + global_work_size, + local_work_size, + 0, NULL, &ev ); + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t.Stop(); + + if( !quiet ) + tlog->Timer( "clEnqueueNDRangeKernel() (GBPS)", + t.GetElapsedTime(), nBytes, nKLoops ); +} + +void timedReadKernelVerify( cl_command_queue queue, + cl_kernel kernel, + cl_mem bufSrc, + cl_mem bufRes, + unsigned char v, + bool quiet ) +{ + cl_int ret; + cl_event ev; + + timedKernel( queue, kernel, bufSrc, bufRes, v, quiet ); + + ret = clEnqueueReadBuffer( queue, + bufRes, + CL_FALSE, + 0, + nBytesResult, + memResult, + 0, NULL, + &ev ); + + ASSERT_CL_RETURN( ret ); + + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + cl_uint sum = 0; + + for(int i = 0; i < nThreads / WS; i++) + sum += ((cl_uint *) memResult)[i]; + + bool verify; + + if( sum == nBytes / sizeof(cl_uint) ) + verify = true; + else + { + verify = false; + vFailure = true; + } + + if( !quiet ) + { + if( verify ) + tlog->Msg( "\n Verification Passed!\n", "" ); + else + tlog->Error( "\n Verification Failed!\n", "" ); + } +} + +void createBuffers() +{ + // host memory buffers + +#ifdef _WIN32 + memIn = (void *) _aligned_malloc( nBytes, nAlign ); + memOut = (void *) _aligned_malloc( nBytes, nAlign ); + memResult = (void *) _aligned_malloc( nBytesResult, nAlign ); + memScratch = (void *) _aligned_malloc( nBytes, nAlign ); +#else + memIn = (void *) memalign( nAlign, nBytes ); + memOut = (void *) memalign( nAlign, nBytes ); + memResult = (void *) memalign( nAlign, nBytesResult ); + memScratch = (void *) memalign( nAlign, nBytes ); +#endif + + if( memIn == NULL || + memOut == NULL || + memResult == NULL || + memScratch == NULL ) + { + fprintf( stderr, "%s:%d: error: %s\n", \ + __FILE__, __LINE__, "could not allocate host buffers\n" ); + exit(FAILURE); + } + + // CL buffers + + cl_int ret; + void *hostPtr = NULL; + + if( inFlags & CL_MEM_USE_HOST_PTR || + inFlags & CL_MEM_COPY_HOST_PTR ) + hostPtr = memIn; + + inputBuffer = clCreateBuffer( context, + inFlags, + nBytes, + hostPtr, &ret ); + + ASSERT_CL_RETURN( ret ); + + hostPtr = NULL; + + if( outFlags & CL_MEM_USE_HOST_PTR || + outFlags & CL_MEM_COPY_HOST_PTR ) + hostPtr = memOut; + + outputBuffer = clCreateBuffer( context, + outFlags, + nBytes, + hostPtr, &ret ); + + ASSERT_CL_RETURN( ret ); + + hostPtr = NULL; + + if( copyFlags & CL_MEM_USE_HOST_PTR || + copyFlags & CL_MEM_COPY_HOST_PTR ) + hostPtr = memScratch; + + if( whichTest == 2 || + whichTest == 3 || + signalA ) + copyBuffer = clCreateBuffer( context, + copyFlags, + nBytes, + hostPtr, &ret ); + + ASSERT_CL_RETURN( ret ); + + resultBuffer = clCreateBuffer( context, + CL_MEM_READ_WRITE, + nBytesResult, + NULL, &ret ); + ASSERT_CL_RETURN( ret ); + + resultBuffer2 = clCreateBuffer( context, + CL_MEM_READ_WRITE, + nBytesResult, + NULL, &ret ); + ASSERT_CL_RETURN( ret ); +} + +void printHeader() +{ + std::cout << "\nDevice " << std::setw(2) << devnum << " " << devname << "\n"; + +#ifdef _WIN32 + std::cout << "Build: _WINxx"; +#ifdef _DEBUG + std::cout << " DEBUG"; +#else + std::cout << " release"; +#endif + std::cout << "\n" ; +#else +#ifdef NDEBUG + std::cout << "Build: release\n"; +#else + std::cout << "Build: DEBUG\n"; +#endif +#endif + + std::cout << "Device work items: " << nThreads << std::endl << + "Buffer size: " << nBytes << std::endl << + "CPU workers: " << nWorkers << std::endl << + "Timing loops: " << nLoops << std::endl << + "Repeats: " << nRepeats << std::endl << + "Kernel loops: " << nKLoops << std::endl; + + std::cout << "inputBuffer: "; + + for( int i = 0; i < nFlags; i++ ) + if( inFlags & flags[i].f ) + std::cout << flags[i].s << " "; + + std::cout << "\noutputBuffer: "; + + for( int i = 0; i < nFlags; i++ ) + if( outFlags & flags[i].f ) + std::cout << flags[i].s << " "; + + if( whichTest == 2 || + whichTest == 3 || + signalA) + { + std::cout << "\ncopyBuffer: " ; + + for( int i = 0; i < nFlags; i++ ) + if( copyFlags & flags[i].f ) + std::cout << flags[i].s << " "; + } + + std::cout << "\n\n"; +} + +void printResults() +{ + if(timings) + { + std::cout << std::setw(21) << std::left << "Setup Time" + << setupTime << " secs" << std::endl; + } + + if( printLog ) + tlog->printLog(); + + tlog->printSummary( nSkip ); + + std::cout << "\n" ; + fflush(stdout); +} + +void runMapTest() +{ + int nl = nLoops; + + while( nl-- ) + { + tlog->loopMarker(); + + tlog->Msg( "\n\n%s\n", "1. Host mapped write to inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufMappedWrite( queue, inputBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "2. Device kernel read of inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedReadKernelVerify( queue, read_kernel, inputBuffer, resultBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "3. Device kernel write to outputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedKernel( queue, write_kernel, resultBuffer, outputBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "4. Host mapped read of outputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufMappedRead( queue, outputBuffer, nl & 0xff, false ); + + tlog->Msg( "%s\n", "" ); + } +} + +void runPCIeTest() +{ + int nl = nLoops; + + void *mappedPtr; + while( nl-- ) + { + tlog->loopMarker(); + + tlog->Msg( "%s\n", "" ); + + timedBufMap( queue, copyBuffer, &mappedPtr, true ); + + for(int i = 0; i < nRepeats; i++) + timedBufCLWrite( queue, inputBuffer, mappedPtr, nl & 0xff, true ); + + for(int i = 0; i < nRepeats; i++) + timedReadKernelVerify( queue, read_kernel, inputBuffer, resultBuffer, nl & 0xff, true ); + + for(int i = 0; i < nRepeats; i++) + timedKernel( queue, write_kernel, resultBuffer, outputBuffer, nl & 0xff, true ); + + for(int i = 0; i < nRepeats; i++) + timedBufCLRead( queue, outputBuffer, mappedPtr, nl & 0xff, true ); + + timedBufUnmap( queue, copyBuffer, &mappedPtr, true ); + + tlog->Msg( "%s\n", "" ); + } +} +void runPCIeTestNoblock() +{ + int nl = nLoops; + void *mappedPtr; + + while( nl-- ) + { + tlog->loopMarker(); + + tlog->Msg( "%s\n", "" ); + + timedBufMap( queue, copyBuffer, &mappedPtr, true ); + CPerfCounter t1; + cl_int ret; + cl_event ev; + bool flag=true; + memset( mappedPtr, nl & 0xff, nBytes ); + t1.Reset(); + t1.Start(); + for(int i = 0; i < loop; i++) + { + ret = clEnqueueWriteBuffer( queue, + inputBuffer, + CL_FALSE, + 0, + nBytes, + mappedPtr, + 0, NULL, + &ev ); + ASSERT_CL_RETURN( ret ); + } + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + double avg=(t1.GetElapsedTime())/loop; + if( flag ) + { + tlog->Timer( "PCIe B/W host->device (GBPS)", avg, nBytes, 1 ); + } + else + { + tlog->Timer( "clEnqueueWriteBuffer (GBPS)", avg, nBytes, 1 ); + } + timedReadKernelVerify( queue, read_kernel, inputBuffer, resultBuffer, nl & 0xff, true ); + + timedKernel( queue, write_kernel, resultBuffer, outputBuffer, nl & 0xff, true ); + t1.Reset(); + t1.Start(); + for(int i = 0; i < loop; i++) + { + ret = clEnqueueReadBuffer( queue, + outputBuffer, + CL_FALSE, + 0, + nBytes, + mappedPtr, + 0, NULL, + &ev ); + ASSERT_CL_RETURN( ret ); + } + clFlush( queue ); + spinForEventsComplete( 1, &ev ); + + t1.Stop(); + avg=(t1.GetElapsedTime())/loop; + bool verify = readVerifyMemCPU_MT( mappedPtr, nl & 0xff, nBytes ); + + if(flag) + { + tlog->Timer( "PCIe B/W device->host (GBPS)", avg, nBytes, 1 ); + } + else + { + tlog->Timer( "clEnqueueReadBuffer (GBPS)", avg, nBytes, 1 ); + } + timedBufUnmap( queue, copyBuffer, &mappedPtr, true ); + + if(!flag) + { + if(!verify) + { + vFailure = true; + } + } + tlog->Msg( "%s\n", "" ); + } +} + +void runReadWriteTest() +{ + + int nl = nLoops; + + while( nl-- ) + { + tlog->loopMarker(); + + tlog->Msg( "\n\n%s\n", "1. Host CL write to inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufCLWrite( queue, inputBuffer, memScratch, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "2. Device kernel read of inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedReadKernelVerify( queue, read_kernel, inputBuffer, resultBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "3. Device kernel write to outputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedKernel( queue, write_kernel, resultBuffer, outputBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "4. Host CL read of outputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufCLRead( queue, outputBuffer, memScratch, nl & 0xff, false ); + + tlog->Msg( "%s\n", "" ); + } +} + +void runMappedReadWriteTest() +{ + int nl = nLoops; + + void *mappedPtr; + + while( nl-- ) + { + tlog->loopMarker(); + + tlog->Msg( "\n\n%s\n", "1. Mapping copyBuffer as mappedPtr" ); + + timedBufMap( queue, copyBuffer, &mappedPtr, false ); + + tlog->Msg( "\n\n%s\n", "2. Host CL write from mappedPtr to inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufCLWrite( queue, inputBuffer, mappedPtr, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "3. Device kernel read of inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedReadKernelVerify( queue, read_kernel, inputBuffer, resultBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "4. Device kernel write to outputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedKernel( queue, write_kernel, resultBuffer, outputBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "5. Host CL read of outputBuffer to mappedPtr" ); + + + for(int i = 0; i < nRepeats; i++) + timedBufCLRead( queue, outputBuffer, mappedPtr, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "6. Unmapping copyBuffer" ); + + timedBufUnmap( queue, copyBuffer, &mappedPtr, false ); + + tlog->Msg( "%s\n", "" ); + } +} + +void runCopyTest() +{ + int nl = nLoops; + + while( nl-- ) + { + tlog->loopMarker(); + + tlog->Msg( "\n\n%s\n", "1. Host mapped write to copyBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufMappedWrite( queue, copyBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "2. CL copy of copyBuffer to inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufCLCopy( queue, copyBuffer, inputBuffer ); + + tlog->Msg( "\n\n%s\n", "3. Device kernel read of inputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedReadKernelVerify( queue, read_kernel, inputBuffer, resultBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "4. Device kernel write to outputBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedKernel( queue, write_kernel, resultBuffer, outputBuffer, nl & 0xff, false ); + + tlog->Msg( "\n\n%s\n", "5. CL copy of outputBuffer to copyBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufCLCopy( queue, outputBuffer, copyBuffer ); + + tlog->Msg( "\n\n%s\n", "6. Host mapped read of copyBuffer" ); + + for(int i = 0; i < nRepeats; i++) + timedBufMappedRead( queue, copyBuffer, nl & 0xff, false ); + + tlog->Msg( "%s\n", "" ); + } +} + +void initDefaults() +{ + nWorkers = 1; + nLoops = 20; + loop = 20; + nRepeats = 1; + nSkip = 2; + nKLoops = 20; + + nBytes = 32*1024*1024; + nAlign = 4096; + + printLog = false; + doHost = true; + whichTest = 0; + mapRW = false; + timings = false; + nWF = 7; + devnum = 0; +} + +void computeGlobals() +{ + if( nWorkers > MAXWORKERS ) nWorkers = MAXWORKERS; + if( nWorkers <= 0 ) nWorkers = 1; + + cl_mem_flags f = CL_MEM_READ_ONLY | + CL_MEM_WRITE_ONLY | + CL_MEM_READ_WRITE; + + if( (inFlags & f) == 0 ) + inFlags |= CL_MEM_READ_ONLY; + + if( (outFlags & f) == 0 ) + outFlags |= CL_MEM_WRITE_ONLY; + + f |= CL_MEM_USE_HOST_PTR | + CL_MEM_COPY_HOST_PTR | + CL_MEM_ALLOC_HOST_PTR; + + /* + f |= CL_MEM_USE_HOST_PTR | + CL_MEM_COPY_HOST_PTR | + CL_MEM_ALLOC_HOST_PTR | + CL_MEM_USE_PERSISTENT_MEM_AMD; + */ + + if( (copyFlags & f) == 0 ) + copyFlags = CL_MEM_ALLOC_HOST_PTR | CL_MEM_READ_WRITE; + + f = CL_MEM_READ_ONLY | + CL_MEM_WRITE_ONLY | + CL_MEM_READ_WRITE; + + if( (copyFlags & f) == 0 ) + copyFlags |= CL_MEM_READ_WRITE; + + nSkip = nLoops > nSkip ? nSkip : 0; + + if( signalA ) + { + inFlags = CL_MEM_READ_ONLY; + outFlags = CL_MEM_WRITE_ONLY; + copyFlags = CL_MEM_USE_HOST_PTR | CL_MEM_READ_WRITE; + nKLoops = 1; + doHost = false; + } + + // educated guess of optimal work size + int minBytes = WS * sizeof( cl_uint ) * 4 * nWorkers; + + nBytes = ( nBytes / minBytes ) * minBytes; + nBytes = nBytes < minBytes ? minBytes : nBytes; + nItems = nBytes / ( 4 * sizeof(cl_uint) ); + + int maxThreads = nBytes / ( 4 * sizeof( cl_uint ) ); + + nThreads = deviceMaxComputeUnits * nWF * WS; + + if( nThreads > maxThreads ) + nThreads = maxThreads; + else + { + while( nItems % nThreads != 0 ) + nThreads += WS; + } + + nBytesResult = ( nThreads / WS ) * sizeof(cl_uint); +} + +int main(int argc, char **argv) +{ + initDefaults(); + parseOptions( argc, argv ); + + tlog = new TestLog( nLoops * nRepeats * 50 ); + + initCL( (char *) "BufferBandwidth_Kernels.cl", setupTime ); + + computeGlobals(); + printHeader(); + createBuffers(); + + #ifdef MEM_MULTICORE + launchThreads(); + #endif + + if( doHost ) + assessHostMemPerf( memIn, memOut, nBytes ); + if(signalA) + { + if(signalB) + { + runPCIeTestNoblock(); + } + else + { + runPCIeTest(); + } + } + else + { + switch( whichTest ) + { + case 0: runMapTest(); break; + case 1: runReadWriteTest(); break; + case 2: runCopyTest(); break; + case 3: runMappedReadWriteTest(); break; + } + } + + if((!signalA) && signalB) + { + std::cout<<"-noblock will only work when -pcie or -dma is active!"< +#include +#include +#include + + +/** + * BufferBandwidth + * Class implements OpenCL Constant Buffer Bandwidth sample + * Derived from SDKSample base class + */ + +class BufferBandwidth +{ + bool correctness; // correctness status variable + bool enable; // Enable flags -i, -r, -k, -x and -s + int nLoops; // overall number of timing loops + int nRepeats; // # of repeats for each transfer step + int nSkip; // to discount lazy allocation effects, etc. + int nKLoops; // repeat inside kernel to show peak mem B/W, + + int nBytes; // input and output buffer size + int nThreads; // number of Device work items + int nItems; // number of 32-bit 4-vectors for Device kernel + int nAlign; // safe bet for most PCs + int nBytesResult; + + bool printLog; + bool doHost; + int whichTest; // Type of the test + bool mapRW; + int numWavefronts; + + TestLog *tlog; // Log information class + + void *memIn; + void *memOut; + void *memResult; + void *memRW; + + int inFlagsValue; + int outFlagsValue; + int copyFlagsValue; + +public: + /** + * Constructor + * Initialize member variables + * @param name name of sample (string) + */ + BufferBandwidth(std::string name) + : + nLoops(20), + nRepeats(1), + nSkip(2), + nKLoops(20), + nBytes(32 * 1024 * 1024), + nThreads(MAX_WAVEFRONT_SIZE), + nItems(2), + nAlign(4096), + nBytesResult(1024 * 1024), + printLog(false), + doHost(false), + whichTest(0), + mapRW(false), + numWavefronts(7), + tlog(NULL), + memIn(NULL), + memOut(NULL), + memResult(NULL), + memRW(NULL), + inFlagsValue(0), + outFlagsValue(1), + copyFlagsValue(2), + correctness(true), + enable(false) + { + } + + /** + * Constructor + * Initialize member variables + * @param name name of sample (const char*) + */ + BufferBandwidth(const char* name) + : + nLoops(20), + nRepeats(1), + nSkip(2), + nKLoops(20), + nBytes(32 * 1024 * 1024), + nThreads(MAX_WAVEFRONT_SIZE), + nItems(2), + nAlign(4096), + nBytesResult(1024 * 1024), + printLog(false), + doHost(false), + whichTest(0), + mapRW(false), + numWavefronts(7), + tlog(NULL), + memIn(NULL), + memOut(NULL), + memResult(NULL), + memRW(NULL), + inFlagsValue(0), + outFlagsValue(1), + copyFlagsValue(2), + correctness(true), + enable(false) + { + } + + /** + * Allocate and initialize host memory array with random values + * @return 1 on success and 0 on failure + */ + int setupBufferBandwidth(); + + /** + * OpenCL related initialisations. + * Set up Context, Device list, Command Queue, Memory buffers + * Build CL kernel program executable + * @return 1 on success and 0 on failure + */ + int setupCL(); + + + /** + * Override from SDKSample. Initialize + * command line parser, add custom options + */ + int initialize(); + + /** + * Override from SDKSample, Generate binary image of given kernel + * and exit application + */ + int genBinaryImage(); + + /** + * Override from SDKSample, adjust width and height + * of execution domain, perform all sample setup + */ + int setup(); + + /** + * Override from SDKSample + */ + int run(); + + /** + * Override from SDKSample + * Cleanup memory allocations + */ + int cleanup(); + + /** + * Override from SDKSample + * Verify against reference implementation + */ + int verifyResults(); + + void printStats(); + + /** + * Parses Extra command line options and + * calls SDKSample::parseCommandLine() + */ + int parseExtraCommandLineOptions(int argc, char**argv); + int runMapTest(); + int runReadWriteTest(); + int runCopyTest(); + int timedBufMappedRead(cl_mem buf, unsigned char v); + int timedBufMappedWrite(cl_mem buf, unsigned char v); + int timedBufCLRead(cl_mem buf, void *ptr, unsigned char v); + int timedBufCLWrite(cl_mem buf, void *ptr); + int timedBufCLCopy(cl_mem srcBuf, cl_mem dstBuf); + int timedKernel(cl_kernel kernel, cl_mem bufSrc, cl_mem bufDst, unsigned char v); + int timedReadKernelVerify(cl_kernel kernel, cl_mem bufSrc, cl_mem bufRes, unsigned char v); + void printLogMsg(); + +}; + + +#endif diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth_Kernels.cl b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth_Kernels.cl new file mode 100644 index 0000000000..10b0da17e2 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/BufferBandwidth_Kernels.cl @@ -0,0 +1,73 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + + +#pragma OPENCL EXTENSION cl_khr_local_int32_base_atomics : enable + +__kernel void read_kernel ( __global uint4 *in, + __global uint *out, + uint ni, + uint val, + uint nk ) +{ + if( nk == 0 ) return; + + uint pcount = 0; + __local uint lcount; + uint i, idx; + + if( get_local_id(0) == 0) + lcount=0; + + barrier( CLK_LOCAL_MEM_FENCE ); + + for(int n=0; n +#include + +#include +#if !defined(__MINGW64__) +#include +#include +#endif + +#ifdef _WIN32 +#include +#include +#else +#include +#include +#endif + +#define MTYPE unsigned long + +// Suppress the warning #810 if intel compiler is used. +#if defined(__INTEL_COMPILER) || defined(__MINGW64__) +#pragma warning(disable : 810) +#endif + +int nWorkers; + +typedef struct { + + void (*work_func)( int ); + + void *ptr; + void *ptr2; + unsigned char v; + size_t len; + + bool ret; + bool noop; + bool exit; + +} _threadWork; + +static _threadWork work[MAXWORKERS]; + +#ifdef MEM_MULTICORE + +static HANDLE tn[MAXWORKERS]; +static unsigned tid[MAXWORKERS]; + +// pad to something > cacheline to avoid false sharing +static int volatile myBarrier[MAXWORKERS][64]={0}; + +unsigned int __stdcall myThreadFunc( void * arg ) +{ + int* idPtr = (int*)(arg); + int id = *idPtr; + bool exit = false; + + while( !exit ) + { + // counterpart to releaseThreads() + while(myBarrier[id][0] != 1) + Sleep(0); + myBarrier[id][0] = 0; + + if( work[id].work_func != NULL ) + work[id].work_func( id ); + + if( work[id].exit == true ) + exit = true; + + // counterpart to waitForThreads() + myBarrier[id][1] = 1; + Sleep(0); + } + + return 0; +} +#endif + +void releaseThreads() +{ +#ifdef MEM_MULTICORE + int n; + + for( n=1; n= UNROLL ) + { + _mm_prefetch( (char *) &p[idx + 8], _MM_HINT_NTA ); + + r |= p[idx]; + r |= p[idx + 1]; + r |= p[idx + 2]; + r |= p[idx + 3]; + r |= p[idx + 4]; + r |= p[idx + 5]; + r |= p[idx + 6]; + r |= p[idx + 7]; + + _mm_prefetch( (char *) &p[idx + 16], _MM_HINT_NTA ); + + r |= p[idx + 8]; + r |= p[idx + 9]; + r |= p[idx + 10]; + r |= p[idx + 11]; + r |= p[idx + 12]; + r |= p[idx + 13]; + r |= p[idx + 14]; + r |= p[idx + 15]; + + _mm_prefetch( (char *) &p[idx + 24], _MM_HINT_NTA ); + + r |= p[idx + 16]; + r |= p[idx + 17]; + r |= p[idx + 18]; + r |= p[idx + 19]; + r |= p[idx + 20]; + r |= p[idx + 21]; + r |= p[idx + 22]; + r |= p[idx + 23]; + + _mm_prefetch( (char *) &p[idx + 32], _MM_HINT_NTA ); + + r |= p[idx + 24]; + r |= p[idx + 25]; + r |= p[idx + 26]; + r |= p[idx + 27]; + r |= p[idx + 28]; + r |= p[idx + 29]; + r |= p[idx + 30]; + r |= p[idx + 31]; + + i -= UNROLL; + idx += UNROLL; + } + + // make sure compiler can't optimize + static __volatile MTYPE always = r; + + MTYPE val = 0; + + for(int i = 0; i < sizeof(MTYPE); i++) + val |= (MTYPE) v << (i*8); + + if( r == val ) + return true; + else + return false; +} + +bool readmem2DPitch( void *ptr, unsigned char v, size_t pitch, int rows ) +{ + register MTYPE r = (MTYPE) 0; + register MTYPE *p; + register size_t i; + register unsigned int idx; + + for( int row = 0; row < rows; row++ ) + { + p = (MTYPE *) ((unsigned char *) ptr + (size_t) row * pitch ); + idx = 0; + i = pitch / sizeof( MTYPE ); + +#define UNROLL 32 + while( i >= UNROLL ) + { + _mm_prefetch( (char *) &p[idx + UNROLL * sizeof(MTYPE)], _MM_HINT_NTA ); + + r |= p[idx]; + r |= p[idx + 1]; + r |= p[idx + 2]; + r |= p[idx + 3]; + r |= p[idx + 4]; + r |= p[idx + 5]; + r |= p[idx + 6]; + r |= p[idx + 7]; + r |= p[idx + 8]; + r |= p[idx + 9]; + r |= p[idx + 10]; + r |= p[idx + 11]; + r |= p[idx + 12]; + r |= p[idx + 13]; + r |= p[idx + 14]; + r |= p[idx + 15]; + r |= p[idx + 16]; + r |= p[idx + 17]; + r |= p[idx + 18]; + r |= p[idx + 19]; + r |= p[idx + 20]; + r |= p[idx + 21]; + r |= p[idx + 22]; + r |= p[idx + 23]; + r |= p[idx + 24]; + r |= p[idx + 25]; + r |= p[idx + 26]; + r |= p[idx + 27]; + r |= p[idx + 28]; + r |= p[idx + 29]; + r |= p[idx + 30]; + r |= p[idx + 31]; + + i -= UNROLL; + idx += UNROLL; + } + } + + // make sure compiler can't optimize + static __volatile MTYPE always = r; + + MTYPE val = 0; + + for(int i = 0; i < sizeof(MTYPE); i++) + val |= (MTYPE) v << (i * 8); + + if( r == val ) + return true; + else + return false; +} + +void writeMemCPU( void *ptr, unsigned char v, size_t len ) +{ + register MTYPE r = 0; + register MTYPE *p = (MTYPE *) ptr; + register size_t i = len / sizeof(MTYPE); + register size_t idx = 0; + + for(int i = 0; i < sizeof(MTYPE); i++) + r |= (MTYPE) v << (i * 8); + + while( idx < (const size_t) ( len / sizeof(MTYPE) ) ) + { + p[idx] = r; + idx++; + } +} + +bool readVerifyMemSSE( void *ptr, unsigned char v, size_t len ) +{ + register __m128i r1 = _mm_setzero_si128(); + register __m128i r2 = _mm_setzero_si128(); + register __m128i *p = (__m128i *) ptr; + register unsigned int idx = 0; + + while(idx < (const size_t) (len / sizeof(__m128i)) ) + { + if( idx < (const size_t) (len / sizeof(__m128i)) - 64 ) + _mm_prefetch( (char *) &p[idx + 64], _MM_HINT_NTA ); + + r1 = _mm_load_si128( &p[idx] ); + r2 = _mm_or_si128( r1, r2 ); + + idx++; + } + + // make sure compiler can't optimize + static __volatile __m128i always = r2; + + unsigned char res[16]; + _mm_storeu_si128( (__m128i *) res, r2 ); + + bool ret = true; + + unsigned char val; + val = v; + + for(int i = 0; i < sizeof( __m128i ); i++) + if( res[i] != val ) { + ret = false; + } + + return ret; +} + +void writeMemSSE ( void *ptr, unsigned char val, size_t len ) +{ + register const __m128i r1 = _mm_set1_epi8( val ); + register __m128i *p = (__m128i *) ptr; + register size_t idx = 0; + + while( idx < (const size_t) (len / sizeof(__m128i)) ) + { + _mm_store_si128( &p[idx], r1 ); + idx++; + } +} + +void memset2DPitch( void *ptr, unsigned char val, size_t columns, size_t rows, size_t pitch ) +{ + for( size_t r = 0; r < rows; r++ ) + memset( ( unsigned char * ) ptr + r * pitch, val, columns ); +} + +void stridePagesCPU( void *ptr, size_t stride, size_t nbytes ) +{ + register unsigned int *p = ( unsigned int * ) ptr; + register size_t i; + + CPerfCounter t; + double kTime; + + t.Reset(); + t.Start(); + + for(i = 0; i < nbytes/sizeof(unsigned int); i += stride/sizeof(unsigned int)) + p[i] = 0; + + t.Stop(); + kTime = t.GetElapsedTime(); + + std::cout << std::setw(21) << std::left << "Page fault" << std::setw(7) << (kTime*1e9) / ((double) nbytes/stride) << " ns" << std::endl; +} + +#define TIMED_LOOP( STRING, EXPR, NBYTES ) \ +{\ + t.Reset();\ + t.Start();\ +\ + int nl = 20;\ + for( int i = 0; i < nl; i++ )\ + EXPR;\ +\ + t.Stop();\ +\ + std::cout << std::setw(21) << std::left << STRING << (((double) nl*(NBYTES)) / t.GetElapsedTime()) / 1e9 << " GB/s\n"; \ +} + +void assessHostMemPerf( void *ptr, void *ptr2, size_t nbytes ) +{ + CPerfCounter t; + + std::cout << "Host baseline (naive):\n\n"; + + double sum = 0.; + int ctr = 0; + + for(int i = 0; i < 1e6; i++) + { + t.Reset(); + t.Start(); + t.Stop(); + + double e = t.GetElapsedTime(); + + if( e > 0. ) { + sum += e; + ctr++; + } + } + + std::cout << std::setiosflags(std::ios::fixed) << std::setprecision(2); + std::cout << std::setw(21) << std::left << "Timer resolution" + << std::setw(7) << ( sum / (double) ctr ) * 1e9 << " ns\n"; + +#ifdef _WIN32 + //Sleep( 1000 ); +#else + usleep( 1000 * 1e3 ); +#endif + size_t pagesize; + +#ifdef _WIN32 + SYSTEM_INFO system_info; + + GetSystemInfo (&system_info); + pagesize = (size_t) system_info.dwPageSize; +#else + pagesize = getpagesize(); +#endif + + stridePagesCPU( ptr, pagesize, nbytes ); + +#ifdef MEM_MULTICORE + benchBarrier(); + + std::cout << "\n"; + +#endif + +#if 0 + TIMED_LOOP( "SSE read", readVerifyMemSSE( ptr, 0, nbytes ), nbytes ) + TIMED_LOOP( "SSE write", writeMemSSE( ptr, 0, nbytes ), nbytes ) + TIMED_LOOP( "CPU write", writeMemCPU( ptr, 0, nbytes ), nbytes ) +#endif + + TIMED_LOOP( "CPU read", readVerifyMemCPU_MT( ptr, 0, nbytes ), nbytes ) + + TIMED_LOOP( "memcpy()", memcpy_MT( ptr, ptr2, nbytes ), nbytes ) + + TIMED_LOOP( "memset(,1,)", memset_MT( ptr, 1, nbytes ), nbytes ) + TIMED_LOOP( "memset(,0,)", memset_MT( ptr, 0, nbytes ), nbytes ) + + std::cout << "\n"; +} diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Host.h b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Host.h new file mode 100644 index 0000000000..3d5890572a --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Host.h @@ -0,0 +1,50 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#ifndef _HOST_H_ +#define _HOST_H_ + +#include + +#ifdef _WIN32 +#define MEM_MULTICORE +#define MAXWORKERS 32 +#else +#define MAXWORKERS 1 +#endif + +extern int nWorkers; + +bool readVerifyMemCPU( void *, unsigned char, size_t ); +bool readVerifyMemCPU_MT( void *, unsigned char, size_t ); +void memset_MT( void *, unsigned char, size_t ); +void memcpy_MT( void *, void *, size_t ); +void writeMemCPU( void *, unsigned char, size_t ); +bool readVerifyMemSSE( void *, unsigned char, size_t ); +void writeMemSSE ( void *, unsigned char, size_t ); + +bool readmem2DPitch( void *, unsigned char, size_t, int ); +void memset2DPitch( void *, unsigned char, size_t, size_t, size_t ); + +void runon( unsigned int ); +void stridePagesCPU( void *, size_t ); +void assessHostMemPerf( void *, void *, size_t ); + +void benchThreads(); +void launchThreads(); +void shutdownThreads(); + +#endif // _HOST_H_ diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.cpp b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.cpp new file mode 100644 index 0000000000..146799e4b5 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.cpp @@ -0,0 +1,172 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#include "Log.h" + +#include +#include +#include +#include +#include + +void Sample::setMsg( const char *fmt, const char *msg ) +{ + _isMsg = true; + + _fmt = new char[ strlen( fmt ) + 1 ]; + strcpy( _fmt, fmt ); + _msg = new char[ strlen( msg ) + 1 ]; + strcpy( _msg, msg ); +} + +void Sample::setTimer( const char *msg, double timer, unsigned int nbytes, int loops ) +{ + _isMsg = false; + _timer = timer; + + if( loops != 0 ) _loops = loops; + if( nbytes > 0 ) _nbytes = nbytes; + + if ( strlen( msg ) > 0 ) + { + _msg = new char[ strlen( msg ) + 1 ]; + strcpy( _msg, msg ); + } +} + +void Sample::printSample( int firstColumnWidth ) +{ + if(firstColumnWidth == 0) // Default column width + firstColumnWidth = 30; + + if( _isMsg == true ) + printf( _fmt, _msg ); + else + { + double bwd = (((double) _nbytes * _loops ) / _timer ) / 1e9; + + std::cout << " "; + for(int j=0; j<(firstColumnWidth+5); j++) + std::cout << "-"; + std::cout << "|"; + for(int j=0; j<15; j++) + std::cout << "-"; + std::cout << std::endl; + + std::cout << std::setprecision(3); + std::cout << " " << std::setw(firstColumnWidth+5) << std::left << _msg + << "| " << bwd << std::endl; + + } +} + +TestLog::TestLog( int nSamples ) : _logIdx(0), + _logLoops(0), + _logLoopEntries(0), + _logLoopTimers(0), + _maxMsgWidth(0) +{ + _samples = new Sample[ nSamples ]; +} + +void TestLog::loopMarker() +{ + _logLoopEntries = 0; + _logLoopTimers = 0; + _logLoops++; +} + +void TestLog::Msg( const char *format, const char *msg ) +{ + _samples[ _logIdx++ ].setMsg( format, msg ); + _logLoopEntries++; +} + +void TestLog::Error( const char *format, const char *msg ) +{ + _samples[ _logIdx ].setMsg( format, msg ); + _samples[ _logIdx++ ].setErr(); + _logLoopEntries++; +} + +void TestLog::Timer( const char *msg, double timer, unsigned int nbytes, int loops ) +{ + _samples[ _logIdx++ ].setTimer( msg, timer, nbytes, loops ); + + int msgLen = (int)strlen(msg); + if(msgLen > _maxMsgWidth) + _maxMsgWidth = msgLen; + + _logLoopEntries++; + _logLoopTimers++; +} + +void TestLog::printLog( void ) +{ + int idx = 0; + + printf( "\nLOOP ITERATIONS\n" ); + printf( "---------------\n" ); + + for(int l = 0; l < _logLoops; l++) + { + printf("\nLoop %d\n\n", l ); + + for( int i = 0; i < _logLoopEntries; i++ ) + _samples[ idx++ ].printSample(_maxMsgWidth); + } +} + +void TestLog::printSummary( int skip ) +{ + printf( "\nAVERAGES (over loops %d - %d, use -l for complete log)\n", skip, _logLoops-1 ); + printf( "--------\n" ); + + for( int i = 0; i < _logLoopEntries; i++ ) + { + if( _samples[ i ].isMsg() ) + { + bool foundError = false; + + for( int nl = 0; nl < _logLoops; nl++ ) + { + int current = i + nl * _logLoopEntries; + + if( _samples[ current ].isErr() ) + { + _samples[ current ].printSample(); + foundError = true; + break; + } + } + + if( !foundError ) + _samples[ i ].printSample(); + } + else + { + double sum = 0.; + + for( int nl = skip; nl < _logLoops; nl++ ) + { + sum += _samples[ i + nl * _logLoopEntries ].getTimer(); + } + + _samples[ i ].setTimer( "", sum / ( _logLoops - skip ), 0, 0 ); + _samples[ i ].printSample(_maxMsgWidth); + } + } +} diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.h b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.h new file mode 100644 index 0000000000..850b4a44d4 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Log.h @@ -0,0 +1,74 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#ifndef _LOG_H_ +#define _LOG_H_ + +extern int nBytes; + +class Sample { + +public: + + Sample() : _isMsg(false), _isErr(false), _timer(0.), _msg(0), _loops(1) {} + ~Sample() {} + + void setMsg( const char *, const char * ); + void setErr( void ) { _isErr = true; } + bool isMsg( void ) { return _isMsg; } + bool isErr( void ) { return _isErr; } + void setTimer( const char *, double, unsigned int, int ); + double getTimer( void ) { return _timer; } + void printSample ( int firstColumnWidth=0 ); + +private: + + bool _isMsg; + bool _isErr; + double _timer; + unsigned int _nbytes; + int _loops; + char * _fmt; + char * _msg; +}; + +class TestLog { + +public: + + TestLog( int ); + ~TestLog() {} + + void loopMarker( void ); + void Msg( const char *, const char * ); + void Error( const char *, const char * ); + void Timer( const char *, double, unsigned int, int ); + + void printLog( void ); + void printSummary( int ); + +private: + + int _logIdx; + int _logLoops; + int _logLoopEntries; + int _logLoopTimers; + int _maxMsgWidth; + + Sample *_samples; +}; + +#endif // _LOG_H_ diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.cpp b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.cpp new file mode 100644 index 0000000000..d8d4881f77 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.cpp @@ -0,0 +1,376 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#include "Shared.h" +#include "Timer.h" + +cl_command_queue queue; +cl_context context; +cl_kernel read_kernel; +cl_kernel write_kernel; +int devnum; +char devname[256]; + +cl_uint deviceMaxComputeUnits; + +cl_mem_flags inFlags = 0; +cl_mem_flags outFlags = 0; +cl_mem_flags copyFlags = 0; + +struct _flags flags[] = { + { CL_MEM_READ_ONLY, "CL_MEM_READ_ONLY" }, + { CL_MEM_WRITE_ONLY, "CL_MEM_WRITE_ONLY" }, + { CL_MEM_READ_WRITE, "CL_MEM_READ_WRITE" }, + { CL_MEM_USE_HOST_PTR, "CL_MEM_USE_HOST_PTR" }, + { CL_MEM_COPY_HOST_PTR, "CL_MEM_COPY_HOST_PTR" }, + { CL_MEM_ALLOC_HOST_PTR, "CL_MEM_ALLOC_HOST_PTR" }, + // { CL_MEM_USE_PERSISTENT_MEM_AMD, "CL_MEM_USE_PERSISTENT_MEM_AMD"}, + { CL_MEM_HOST_WRITE_ONLY, "CL_MEM_HOST_WRITE_ONLY"}, + { CL_MEM_HOST_READ_ONLY, "CL_MEM_HOST_READ_ONLY"}, + { CL_MEM_HOST_NO_ACCESS, "CL_MEM_HOST_NO_ACCESS"} }; + +int nFlags = sizeof(flags) / sizeof(flags[0]); + +const char *cluErrorString(cl_int err) { + + switch(err) { + + case CL_SUCCESS: return "CL_SUCCESS"; + case CL_DEVICE_NOT_FOUND: return "CL_DEVICE_NOT_FOUND"; + case CL_DEVICE_NOT_AVAILABLE: return "CL_DEVICE_NOT_AVAILABLE"; + case CL_COMPILER_NOT_AVAILABLE: return + "CL_COMPILER_NOT_AVAILABLE"; + case CL_MEM_OBJECT_ALLOCATION_FAILURE: return + "CL_MEM_OBJECT_ALLOCATION_FAILURE"; + case CL_OUT_OF_RESOURCES: return "CL_OUT_OF_RESOURCES"; + case CL_OUT_OF_HOST_MEMORY: return "CL_OUT_OF_HOST_MEMORY"; + case CL_PROFILING_INFO_NOT_AVAILABLE: return + "CL_PROFILING_INFO_NOT_AVAILABLE"; + case CL_MEM_COPY_OVERLAP: return "CL_MEM_COPY_OVERLAP"; + case CL_IMAGE_FORMAT_MISMATCH: return "CL_IMAGE_FORMAT_MISMATCH"; + case CL_IMAGE_FORMAT_NOT_SUPPORTED: return + "CL_IMAGE_FORMAT_NOT_SUPPORTED"; + case CL_BUILD_PROGRAM_FAILURE: return "CL_BUILD_PROGRAM_FAILURE"; + case CL_MAP_FAILURE: return "CL_MAP_FAILURE"; + case CL_INVALID_VALUE: return "CL_INVALID_VALUE"; + case CL_INVALID_DEVICE_TYPE: return "CL_INVALID_DEVICE_TYPE"; + case CL_INVALID_PLATFORM: return "CL_INVALID_PLATFORM"; + case CL_INVALID_DEVICE: return "CL_INVALID_DEVICE"; + case CL_INVALID_CONTEXT: return "CL_INVALID_CONTEXT"; + case CL_INVALID_QUEUE_PROPERTIES: return "CL_INVALID_QUEUE_PROPERTIES"; + case CL_INVALID_COMMAND_QUEUE: return "CL_INVALID_COMMAND_QUEUE"; + case CL_INVALID_HOST_PTR: return "CL_INVALID_HOST_PTR"; + case CL_INVALID_MEM_OBJECT: return "CL_INVALID_MEM_OBJECT"; + case CL_INVALID_IMAGE_FORMAT_DESCRIPTOR: return + "CL_INVALID_IMAGE_FORMAT_DESCRIPTOR"; + case CL_INVALID_IMAGE_SIZE: return "CL_INVALID_IMAGE_SIZE"; + case CL_INVALID_SAMPLER: return "CL_INVALID_SAMPLER"; + case CL_INVALID_BINARY: return "CL_INVALID_BINARY"; + case CL_INVALID_BUILD_OPTIONS: return "CL_INVALID_BUILD_OPTIONS"; + case CL_INVALID_PROGRAM: return "CL_INVALID_PROGRAM"; + case CL_INVALID_PROGRAM_EXECUTABLE: return + "CL_INVALID_PROGRAM_EXECUTABLE"; + case CL_INVALID_KERNEL_NAME: return "CL_INVALID_KERNEL_NAME"; + case CL_INVALID_KERNEL_DEFINITION: return "CL_INVALID_KERNEL_DEFINITION"; + case CL_INVALID_KERNEL: return "CL_INVALID_KERNEL"; + case CL_INVALID_ARG_INDEX: return "CL_INVALID_ARG_INDEX"; + case CL_INVALID_ARG_VALUE: return "CL_INVALID_ARG_VALUE"; + case CL_INVALID_ARG_SIZE: return "CL_INVALID_ARG_SIZE"; + case CL_INVALID_KERNEL_ARGS: return "CL_INVALID_KERNEL_ARGS"; + case CL_INVALID_WORK_DIMENSION: return "CL_INVALID_WORK_DIMENSION"; + case CL_INVALID_WORK_GROUP_SIZE: return "CL_INVALID_WORK_GROUP_SIZE"; + case CL_INVALID_WORK_ITEM_SIZE: return "CL_INVALID_WORK_ITEM_SIZE"; + case CL_INVALID_GLOBAL_OFFSET: return "CL_INVALID_GLOBAL_OFFSET"; + case CL_INVALID_EVENT_WAIT_LIST: return "CL_INVALID_EVENT_WAIT_LIST"; + case CL_INVALID_EVENT: return "CL_INVALID_EVENT"; + case CL_INVALID_OPERATION: return "CL_INVALID_OPERATION"; + case CL_INVALID_GL_OBJECT: return "CL_INVALID_GL_OBJECT"; + case CL_INVALID_BUFFER_SIZE: return "CL_INVALID_BUFFER_SIZE"; + case CL_INVALID_MIP_LEVEL: return "CL_INVALID_MIP_LEVEL"; + case CL_INVALID_GLOBAL_WORK_SIZE: return "CL_INVALID_GLOBAL_WORK_SIZE"; + + default: return "UNKNOWN CL ERROR CODE"; + } +} + +cl_int spinForEventsComplete( cl_uint num_events, cl_event *event_list ) +{ + cl_int ret = 0; +#if 0 + ret = clWaitForEvents( num_events, event_list ); +#else + cl_int param_value; + size_t param_value_size_ret; + + for( cl_uint e=0; e < num_events; e++ ) + { + while(1) + { + ret |= clGetEventInfo( event_list[ e ], + CL_EVENT_COMMAND_EXECUTION_STATUS, + sizeof( cl_int ), + ¶m_value, + ¶m_value_size_ret ); + + if( param_value == CL_COMPLETE ) + break; + } + } +#endif + + for( cl_uint e=0; e < num_events; e++ ) + clReleaseEvent( event_list[e] ); + return ret; +} + +void checkCLFeatures(cl_device_id device) +{ + // Check device extensions + char* deviceExtensions = NULL;; + size_t extStringSize = 0; + + // Get device extensions + clGetDeviceInfo(device, CL_DEVICE_EXTENSIONS, 0, NULL, &extStringSize); + deviceExtensions = new char[extStringSize]; + if(NULL == deviceExtensions){ + fprintf( stderr, "Failed to allocate memory(deviceExtensions)\n"); + exit(-1); + } + clGetDeviceInfo(device, CL_DEVICE_EXTENSIONS, extStringSize, deviceExtensions, NULL); + + // Check if cl_khr_fp64 extension is supported + if(!strstr(deviceExtensions, "cl_khr_local_int32_base_atomics")) + { + fprintf( stderr, "Device does not support cl_khr_local_int32_base_atomics extension!\n"); + delete deviceExtensions; + exit(0); + } + delete deviceExtensions; + + // Get OpenCL device version + char deviceVersion[1024]; + clGetDeviceInfo(device, CL_DEVICE_VERSION, sizeof(deviceVersion), deviceVersion, NULL); + + std::string deviceVersionStr = std::string(deviceVersion); + size_t vStart = deviceVersionStr.find(" ", 0); + size_t vEnd = deviceVersionStr.find(" ", vStart + 1); + std::string vStrVal = deviceVersionStr.substr(vStart + 1, vEnd - vStart - 1); + + // Check of OPENCL_C_VERSION if device version is 1.1 or later +#ifdef CL_VERSION_1_1 + if(vStrVal.compare("1.0") > 0) + { + //Get OPENCL_C_VERSION + clGetDeviceInfo(device, CL_DEVICE_OPENCL_C_VERSION, sizeof(deviceVersion), deviceVersion, NULL); + + // Exit if OpenCL C device version is 1.0 + deviceVersionStr = std::string(deviceVersion); + vStart = deviceVersionStr.find(" ", 0); + vStart = deviceVersionStr.find(" ", vStart + 1); + vEnd = deviceVersionStr.find(" ", vStart + 1); + vStrVal = deviceVersionStr.substr(vStart + 1, vEnd - vStart - 1); + if(vStrVal.compare("1.0") <= 0) + { + fprintf( stderr, "Unsupported device! Required CL_DEVICE_OPENCL_C_VERSION as 1.1\n"); + exit(0); + } + } + else + { + fprintf( stderr, "Unsupported device! Required CL_DEVICE_OPENCL_C_VERSION as 1.1\n"); + exit(0); + } +#else + fprintf( stderr, "Unsupported device! Required CL_DEVICE_OPENCL_C_VERSION as 1.1\n"); + exit(0); +#endif + + return; +} + +void initCL( char *kernel_file, double &setupTime ) +{ + // Get a platform, device, context and queue + + cl_platform_id platform = NULL; + cl_device_id devices[128]; + cl_device_id device; + cl_uint num_devices; + cl_int ret; + + cl_device_type devs[] = { CL_DEVICE_TYPE_CPU, + CL_DEVICE_TYPE_GPU }; + cl_uint numPlatforms; + cl_int status = clGetPlatformIDs(0, NULL, &numPlatforms); + + CPerfCounter t1; + t1.Reset(); + t1.Start(); + + if(status != 0) + { + printf("clGetPlatformIDs failed.\n"); + exit(FAILURE); + } + if (0 < numPlatforms) + { + cl_platform_id* platforms = new cl_platform_id[numPlatforms]; + status = clGetPlatformIDs(numPlatforms, platforms, NULL); + if(status != 0) + { + printf("clGetPlatformIDs failed.\n"); + exit(FAILURE); + } + + char platformName[100]; + for (unsigned i = 0; i < numPlatforms; ++i) + { + status = clGetPlatformInfo(platforms[i], + CL_PLATFORM_VENDOR, + sizeof(platformName), + platformName, + NULL); + if(status != 0) + { + printf("clGetPlatformIDs failed.\n"); + exit(FAILURE); + } + + platform = platforms[i]; + if (!strcmp(platformName, "Advanced Micro Devices, Inc.")) + { + break; + } + } + std::cout << "Platform found : " << platformName << "\n"; + delete[] platforms; + } + + if(NULL == platform) + { + printf("NULL platform found so Exiting Application."); + exit(FAILURE); + } + + ret = clGetDeviceIDs( platform, + devs[1], + 128, + devices, + &num_devices ); + if((ret == CL_DEVICE_NOT_FOUND) || (num_devices == 0)) + { + ret = clGetDeviceIDs( platform, + devs[0], + 128, + devices, + &num_devices ); + if((ret == CL_DEVICE_NOT_FOUND) || (num_devices == 0)) { + fprintf( stderr, "No valid OpenCL Device available."); + exit(FAILURE); + } + } + ASSERT_CL_RETURN( ret ); + + device = devices[devnum]; + + ret = clGetDeviceInfo( device, + CL_DEVICE_MAX_COMPUTE_UNITS, + sizeof(cl_uint), + &deviceMaxComputeUnits, + NULL); + + ASSERT_CL_RETURN( ret ); + + ret = clGetDeviceInfo( device, + CL_DEVICE_NAME, + 256, + devname, + NULL); + + ASSERT_CL_RETURN( ret ); + + context = clCreateContext( NULL, + 1, + &device, + NULL, NULL, NULL ); + + queue = clCreateCommandQueue( context, + device, + 0, + NULL ); + + // Minimal error check. + + if( queue == NULL ) { + fprintf( stderr, "Compute device setup failed\n"); + exit(FAILURE); + } + + // Check for OpenCL features and extensions. + checkCLFeatures(device); + + // Perform runtime source compilation, and obtain kernel entry points. + FILE *fp = fopen( kernel_file, "rb" ); + + if( fp == NULL ) + { + fprintf( stderr, "%s:%d: can't open kernel file: %s\n", \ + __FILE__, __LINE__, strerror( errno ));\ + exit(FAILURE); + } + + fseek( fp, 0, SEEK_END ); + const size_t size = ftell( fp ); + const char *kernel_source = (const char *) malloc( size ); + + rewind( fp ); + fread( (void *) kernel_source, 1, size, fp ); + + cl_program program; + + program = clCreateProgramWithSource( context, + 1, + &kernel_source, + &size, + NULL ); + + ret = clBuildProgram( program, 1, &device, NULL, NULL, NULL ); + + static char buf[0x10000]={0}; + + clGetProgramBuildInfo( program, + device, + CL_PROGRAM_BUILD_LOG, + 0x10000, + buf, + NULL ); + + std::cout << buf << std::endl; + + ASSERT_CL_RETURN( ret ); + + read_kernel = clCreateKernel( program, "read_kernel", &ret ); + + ASSERT_CL_RETURN( ret ); + + write_kernel = clCreateKernel( program, "write_kernel", &ret ); + + ASSERT_CL_RETURN( ret ); + + t1.Stop(); + setupTime = t1.GetElapsedTime(); + +} diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.h b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.h new file mode 100644 index 0000000000..90c5e63499 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Shared.h @@ -0,0 +1,78 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#ifndef _SHARED_H_ +#define _SHARED_H_ + +#define SUCCESS 0 +#define FAILURE 1 +#define EXPECTED_FAILURE 2 + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +#ifdef _WIN32 +#include +#endif + +#if defined(__MINGW32__) && !defined(__MINGW64_VERSION_MAJOR) +#define _aligned_malloc __mingw_aligned_malloc +#define _aligned_free __mingw_aligned_free +#endif // __MINGW32__ and __MINGW64_VERSION_MAJOR + +#include + + + +#define ASSERT_CL_RETURN( ret )\ + if( (ret) != CL_SUCCESS )\ + {\ + fprintf( stderr, "%s:%d: error: %s\n", \ + __FILE__, __LINE__, cluErrorString( (ret) ));\ + exit(FAILURE);\ + } + +extern cl_mem_flags inFlags; +extern cl_mem_flags outFlags; +extern cl_mem_flags copyFlags; + +extern struct _flags { cl_mem_flags f; + const char *s; } flags[]; +extern int nFlags; + +extern cl_command_queue queue; +extern cl_context context; +extern cl_kernel read_kernel; +extern cl_kernel write_kernel; +extern cl_uint deviceMaxComputeUnits; +extern int devnum; +extern char devname[]; + +const char *cluErrorString(cl_int); +cl_int spinForEventsComplete( cl_uint, cl_event * ); +void initCL( char *, double&); + +#endif // _SHARED_H_ diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.cpp b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.cpp new file mode 100644 index 0000000000..cd898f5f52 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.cpp @@ -0,0 +1,91 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#include "Timer.h" + +#ifdef _WIN32 +#include +#else +#include +#include +#endif + +CPerfCounter::CPerfCounter() : _clocks(0), _start(0) +{ + +#ifdef _WIN32 + QueryPerformanceFrequency((LARGE_INTEGER *)&_freq); +#else + _freq = 1000; +#endif + +} + +CPerfCounter::~CPerfCounter() +{ + // EMPTY! +} + +void +CPerfCounter::Start(void) +{ + +#ifdef _WIN32 + QueryPerformanceCounter((LARGE_INTEGER *)&_start); +#else + struct timespec s; + clock_gettime( CLOCK_REALTIME, &s ); + _start = (i64)s.tv_sec * 1e9 + (i64)s.tv_nsec; +#endif + +} + +void +CPerfCounter::Stop(void) +{ + i64 n; + +#ifdef _WIN32 + QueryPerformanceCounter((LARGE_INTEGER *)&n); +#else + struct timespec s; + clock_gettime( CLOCK_REALTIME, &s ); + n = (i64)s.tv_sec * 1e9 + (i64)s.tv_nsec; +#endif + + n -= _start; + _start = 0; + _clocks += n; +} + +void +CPerfCounter::Reset(void) +{ + + _clocks = 0; +} + +double +CPerfCounter::GetElapsedTime(void) +{ +#if _WIN32 + return (double)_clocks / (double) _freq; +#else + return (double)_clocks / (double) 1e9; +#endif + +} + diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.h b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.h new file mode 100644 index 0000000000..36ca81e2af --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/Timer.h @@ -0,0 +1,93 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +#ifndef _TIMER_H_ +#define _TIMER_H_ +/** + * \file Timer.h + * \brief A timer class that provides a cross platform timer for use + * in timing code progress with a high degree of accuracy. + */ +#ifdef _WIN32 +/** + * \typedef __int64 i64 + * \brief Maps the windows 64 bit integer to a uniform name + */ +#if defined(__MINGW64__) || defined(__MINGW32__) +typedef long long i64; +#else +typedef __int64 i64; +#endif +#else +/** + * \typedef long long i64 + * \brief Maps the linux 64 bit integer to a uniform name + */ +typedef long long i64; +#endif + +/** + * \class CPerfCounter + * \brief Counter that provides a fairly accurate timing mechanism for both + * windows and linux. This timer is used extensively in all the samples. + */ +class CPerfCounter { + +public: + /** + * \fn CPerfCounter() + * \brief Constructor for CPerfCounter that initializes the class + */ + CPerfCounter(); + /** + * \fn ~CPerfCounter() + * \brief Destructor for CPerfCounter that cleans up the class + */ + ~CPerfCounter(); + /** + * \fn void Start(void) + * \brief Start the timer + * \sa Stop(), Reset() + */ + void Start(void); + /** + * \fn void Stop(void) + * \brief Stop the timer + * \sa Start(), Reset() + */ + void Stop(void); + /** + * \fn void Reset(void) + * \brief Reset the timer to 0 + * \sa Start(), Stop() + */ + void Reset(void); + /** + * \fn double GetElapsedTime(void) + * \return Amount of time that has accumulated between the \a Start() + * and \a Stop() function calls + */ + double GetElapsedTime(void); + +private: + + i64 _freq; + i64 _clocks; + i64 _start; +}; + +#endif // _TIMER_H_ + diff --git a/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/docs/BufferBandwidth.pdf b/External/OpenCL/tests/AMDAPP_SDK/BufferBandwidth/docs/BufferBandwidth.pdf new file mode 100644 index 0000000000000000000000000000000000000000..799cfe62fa09ecb7fe95ad634a4d1e66499ac49b GIT binary patch literal 217046 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

r0d#-k){$;Iq|({xzCWZ{)0Gy`sczC0DIcDTNK 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 J6{QIA{}1xxo#X%j literal 0 HcmV?d00001 diff --git a/External/OpenCL/tests/AMDAPP_SDK/CMakeLists.txt b/External/OpenCL/tests/AMDAPP_SDK/CMakeLists.txt new file mode 100644 index 0000000000..1eb4ceeac6 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/CMakeLists.txt @@ -0,0 +1,6 @@ +add_subdirectory(BufferBandwidth) +add_subdirectory(HelloWorld) +add_subdirectory(Template) + +# Propogate the list of tests to run. +set(OPENCL_SIMPLE_TESTS_LIST ${OPENCL_SIMPLE_TESTS_LIST} PARENT_SCOPE) diff --git a/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/CMakeLists.txt b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/CMakeLists.txt new file mode 100644 index 0000000000..378d9950e7 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/CMakeLists.txt @@ -0,0 +1,25 @@ +# Test parameters +set(TestName HelloWorld) +set(TestSources HelloWorld.cpp) +set(TestData HelloWorld_Kernel.cl) +set(OpenCL_CPPFLAGS "") +set(OpenCL_LDFLAGS "") +set(OpenCL_LIBS "") + +# Target to build this specific test. +add_custom_target(opencl-tests-simple-${TestName}) + +# Add dependencies for target to build all the tests in opencl-tests-simple. +add_dependencies(opencl-tests-simple opencl-tests-simple-${TestName}) +create_local_test(${TestName} "${TestSources}" "${TestData}" "${OpenCL_CPPFLAGS}" "${OpenCL_LDFLAGS}" "${OpenCL_LIBS}") + +# Populate & propogate list of tests to run them all using check-opencl-simple. +list(APPEND OPENCL_SIMPLE_TESTS_LIST "${CMAKE_CURRENT_BINARY_DIR}/${TestName}.test") +set(OPENCL_SIMPLE_TESTS_LIST ${OPENCL_SIMPLE_TESTS_LIST} PARENT_SCOPE) + +# Target to run this specific test. +add_custom_target(check-opencl-simple-${TestName} + COMMAND ${TEST_SUITE_LIT} ${TEST_SUITE_LIT_FLAGS} ${TestName}.test + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + DEPENDS opencl-tests-simple-${TestName} + USES_TERMINAL) diff --git a/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.cpp b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.cpp new file mode 100644 index 0000000000..b4abeadf83 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.cpp @@ -0,0 +1,171 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +// For clarity,error checking has been omitted. + +#include +#include +#include +#include +#include +#include +#include + +#define SUCCESS 0 +#define FAILURE 1 + +using namespace std; + +/* convert the kernel file into a string */ +int convertToString(const char *filename, std::string& s) +{ + size_t size; + char* str; + std::fstream f(filename, (std::fstream::in | std::fstream::binary)); + + if(f.is_open()) + { + size_t fileSize; + f.seekg(0, std::fstream::end); + size = fileSize = (size_t)f.tellg(); + f.seekg(0, std::fstream::beg); + str = new char[size+1]; + if(!str) + { + f.close(); + return 0; + } + + f.read(str, fileSize); + f.close(); + str[size] = '\0'; + s = str; + delete[] str; + return 0; + } + cout<<"Error: failed to open file\n:"< 0) + { + cl_platform_id* platforms = (cl_platform_id* )malloc(numPlatforms* sizeof(cl_platform_id)); + status = clGetPlatformIDs(numPlatforms, platforms, NULL); + platform = platforms[0]; + free(platforms); + } + + /*Step 2:Query the platform and choose the first GPU device if has one.Otherwise use the CPU as device.*/ + cl_uint numDevices = 0; + cl_device_id *devices; + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_GPU, 0, NULL, &numDevices); + if (numDevices == 0) //no GPU available. + { + cout << "No GPU device available." << endl; + cout << "Choose CPU as default device." << endl; + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_CPU, 0, NULL, &numDevices); + devices = (cl_device_id*)malloc(numDevices * sizeof(cl_device_id)); + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_CPU, numDevices, devices, NULL); + } + else + { + devices = (cl_device_id*)malloc(numDevices * sizeof(cl_device_id)); + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_GPU, numDevices, devices, NULL); + } + + + /*Step 3: Create context.*/ + cl_context context = clCreateContext(NULL,1, devices,NULL,NULL,NULL); + + /*Step 4: Creating command queue associate with the context.*/ + cl_command_queue commandQueue = clCreateCommandQueue(context, devices[0], 0, NULL); + + /*Step 5: Create program object */ + const char *filename = "HelloWorld_Kernel.cl"; + string sourceStr; + status = convertToString(filename, sourceStr); + const char *source = sourceStr.c_str(); + size_t sourceSize[] = {strlen(source)}; + cl_program program = clCreateProgramWithSource(context, 1, &source, sourceSize, NULL); + + /*Step 6: Build program. */ + status=clBuildProgram(program, 1,devices,NULL,NULL,NULL); + + /*Step 7: Initial input,output for the host and create memory objects for the kernel*/ + const char* input = "GdkknVnqkc"; + size_t strlength = strlen(input); + cout << "input string:" << endl; + cout << input << endl; + char *output = (char*) malloc(strlength + 1); + + cl_mem inputBuffer = clCreateBuffer(context, CL_MEM_READ_ONLY|CL_MEM_COPY_HOST_PTR, (strlength + 1) * sizeof(char),(void *) input, NULL); + cl_mem outputBuffer = clCreateBuffer(context, CL_MEM_WRITE_ONLY , (strlength + 1) * sizeof(char), NULL, NULL); + + /*Step 8: Create kernel object */ + cl_kernel kernel = clCreateKernel(program,"helloworld", NULL); + + /*Step 9: Sets Kernel arguments.*/ + status = clSetKernelArg(kernel, 0, sizeof(cl_mem), (void *)&inputBuffer); + status = clSetKernelArg(kernel, 1, sizeof(cl_mem), (void *)&outputBuffer); + + /*Step 10: Running the kernel.*/ + size_t global_work_size[1] = {strlength}; + status = clEnqueueNDRangeKernel(commandQueue, kernel, 1, NULL, global_work_size, NULL, 0, NULL, NULL); + + /*Step 11: Read the cout put back to host memory.*/ + status = clEnqueueReadBuffer(commandQueue, outputBuffer, CL_TRUE, 0, strlength * sizeof(char), output, 0, NULL, NULL); + + output[strlength] = '\0'; //Add the terminal character to the end of output. + cout << "\noutput string:" << endl; + cout << output << endl; + + /*Step 12: Clean the resources.*/ + status = clReleaseKernel(kernel); //Release kernel. + status = clReleaseProgram(program); //Release the program object. + status = clReleaseMemObject(inputBuffer); //Release mem object. + status = clReleaseMemObject(outputBuffer); + status = clReleaseCommandQueue(commandQueue); //Release Command queue. + status = clReleaseContext(context); //Release context. + + if (output != NULL) + { + free(output); + output = NULL; + } + + if (devices != NULL) + { + free(devices); + devices = NULL; + } + + std::cout<<"Passed!\n"; + return SUCCESS; +} \ No newline at end of file diff --git a/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.reference_output b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.reference_output new file mode 100644 index 0000000000..8d8b5fa0d1 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld.reference_output @@ -0,0 +1,6 @@ +input string: +GdkknVnqkc + +output string: +ÿÿÿÿÿÿÿÿÿÿ +Passed! diff --git a/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld_Kernel.cl b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld_Kernel.cl new file mode 100644 index 0000000000..b4abeadf83 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/HelloWorld_Kernel.cl @@ -0,0 +1,171 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +// For clarity,error checking has been omitted. + +#include +#include +#include +#include +#include +#include +#include + +#define SUCCESS 0 +#define FAILURE 1 + +using namespace std; + +/* convert the kernel file into a string */ +int convertToString(const char *filename, std::string& s) +{ + size_t size; + char* str; + std::fstream f(filename, (std::fstream::in | std::fstream::binary)); + + if(f.is_open()) + { + size_t fileSize; + f.seekg(0, std::fstream::end); + size = fileSize = (size_t)f.tellg(); + f.seekg(0, std::fstream::beg); + str = new char[size+1]; + if(!str) + { + f.close(); + return 0; + } + + f.read(str, fileSize); + f.close(); + str[size] = '\0'; + s = str; + delete[] str; + return 0; + } + cout<<"Error: failed to open file\n:"< 0) + { + cl_platform_id* platforms = (cl_platform_id* )malloc(numPlatforms* sizeof(cl_platform_id)); + status = clGetPlatformIDs(numPlatforms, platforms, NULL); + platform = platforms[0]; + free(platforms); + } + + /*Step 2:Query the platform and choose the first GPU device if has one.Otherwise use the CPU as device.*/ + cl_uint numDevices = 0; + cl_device_id *devices; + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_GPU, 0, NULL, &numDevices); + if (numDevices == 0) //no GPU available. + { + cout << "No GPU device available." << endl; + cout << "Choose CPU as default device." << endl; + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_CPU, 0, NULL, &numDevices); + devices = (cl_device_id*)malloc(numDevices * sizeof(cl_device_id)); + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_CPU, numDevices, devices, NULL); + } + else + { + devices = (cl_device_id*)malloc(numDevices * sizeof(cl_device_id)); + status = clGetDeviceIDs(platform, CL_DEVICE_TYPE_GPU, numDevices, devices, NULL); + } + + + /*Step 3: Create context.*/ + cl_context context = clCreateContext(NULL,1, devices,NULL,NULL,NULL); + + /*Step 4: Creating command queue associate with the context.*/ + cl_command_queue commandQueue = clCreateCommandQueue(context, devices[0], 0, NULL); + + /*Step 5: Create program object */ + const char *filename = "HelloWorld_Kernel.cl"; + string sourceStr; + status = convertToString(filename, sourceStr); + const char *source = sourceStr.c_str(); + size_t sourceSize[] = {strlen(source)}; + cl_program program = clCreateProgramWithSource(context, 1, &source, sourceSize, NULL); + + /*Step 6: Build program. */ + status=clBuildProgram(program, 1,devices,NULL,NULL,NULL); + + /*Step 7: Initial input,output for the host and create memory objects for the kernel*/ + const char* input = "GdkknVnqkc"; + size_t strlength = strlen(input); + cout << "input string:" << endl; + cout << input << endl; + char *output = (char*) malloc(strlength + 1); + + cl_mem inputBuffer = clCreateBuffer(context, CL_MEM_READ_ONLY|CL_MEM_COPY_HOST_PTR, (strlength + 1) * sizeof(char),(void *) input, NULL); + cl_mem outputBuffer = clCreateBuffer(context, CL_MEM_WRITE_ONLY , (strlength + 1) * sizeof(char), NULL, NULL); + + /*Step 8: Create kernel object */ + cl_kernel kernel = clCreateKernel(program,"helloworld", NULL); + + /*Step 9: Sets Kernel arguments.*/ + status = clSetKernelArg(kernel, 0, sizeof(cl_mem), (void *)&inputBuffer); + status = clSetKernelArg(kernel, 1, sizeof(cl_mem), (void *)&outputBuffer); + + /*Step 10: Running the kernel.*/ + size_t global_work_size[1] = {strlength}; + status = clEnqueueNDRangeKernel(commandQueue, kernel, 1, NULL, global_work_size, NULL, 0, NULL, NULL); + + /*Step 11: Read the cout put back to host memory.*/ + status = clEnqueueReadBuffer(commandQueue, outputBuffer, CL_TRUE, 0, strlength * sizeof(char), output, 0, NULL, NULL); + + output[strlength] = '\0'; //Add the terminal character to the end of output. + cout << "\noutput string:" << endl; + cout << output << endl; + + /*Step 12: Clean the resources.*/ + status = clReleaseKernel(kernel); //Release kernel. + status = clReleaseProgram(program); //Release the program object. + status = clReleaseMemObject(inputBuffer); //Release mem object. + status = clReleaseMemObject(outputBuffer); + status = clReleaseCommandQueue(commandQueue); //Release Command queue. + status = clReleaseContext(context); //Release context. + + if (output != NULL) + { + free(output); + output = NULL; + } + + if (devices != NULL) + { + free(devices); + devices = NULL; + } + + std::cout<<"Passed!\n"; + return SUCCESS; +} \ No newline at end of file diff --git a/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/doc/Hello_World.pdf b/External/OpenCL/tests/AMDAPP_SDK/HelloWorld/doc/Hello_World.pdf new file mode 100644 index 0000000000000000000000000000000000000000..56ea6b199d5a574f96b8c53667505dd8ef956720 GIT binary patch literal 211992 zcmb@sQ7qc3`2?6G#NhBIOx5g9vU6FLE7a%?X%TnV9I5TnwH6DNvV@ru$p@pIh+qIypO<7}&rX;oVVqz0ou6H*?zc}-j#4K`vhPac6+e&t%$;-k7rdWDC7T1pgg3=V-*a)FtaQ; zJk(at;%JrDK6`LGi&hc$JTmnX%i$JrxR!b76JfG|H}5Lb%0#WGzwjx8m^%_~on>7d zU19J&g~|`!9UtH*GkPe?wQ05D9xir1P`s<1&agjRlJzDSf-B)gEo!|>Vc6n;mj0YE zFi&#QPvSA-%Ros+dRPR1>Vt#0=+>E`(5#|r$~20Eu1EL|3v^ZNk*z3XRVW>YJFFF@ zCjBy)&63ur&Y<2KbWR1nqkb!JR-_%ZvC3!Tg!XVJ@A$U32@sAmF-|8G?JItR)Ga^( z8MPqvJtT0ojBfSSo@3#V25Q-76-=tV13FJzUs)8xC7q1Dw}CaMb3h!Y2L?%o z>G4=v08bUFdSK0|g+Lgz=*)>WzFHjOv4Jo|H8O+#LQ~;87 z)GXR-zb!`X&!QA^q~>?#+hqQXGc`9%in2R*HpqOXxY~EH#@%Ype<<$$jyDH@R*k`N z>wO(Cp~Hx2_*sDU`xX>p{9{Lub@{3Kns=dFhR`H+$6QrJsU?DZnHlQRCC*v4eYMt& zy@qwA3M>q+ubFwBpQ5(R|G08BTopIdi3jKhcX6QIm>Mk7^n)U1$~8NH%0*|LwYI%H zPI3Qk#&T2++LIpeim$W6mMGwo%7`)tLC-GD7kzjs#EBRiawrrwqDjPOge1B^Sjf|X z`75;2JZyXVFxu;wA4TxsorIrd#x|`-)%WMsI|OWd{cV_H?ktACcaL>YdkA2&WMhYn=1mgv5{_xMn z#>8*CR5hzE6-ZMNj6|pYF;*-tH*1bJx3tqhg-mpOG4;Gj$8sxE?GoRGU-eoXE{1?| zcfQCoN0fG1Dqy1xTzsm;i*E;<5u^zEs<4qFyXNt4M&anog3QV4eLZoxDmq^P9L4P9 zwnL$L`L`b%)Vi$j;(2Tb_)J8cazFdmq-W*^nKPR{kO#&`b53QzMZ~=ZKM#Q1xm3Zf z0^5sKNR7t@`u32|JDqWhyU}kqI>a%UwS`QqCR2t>pKMm3N`{*{89dq#Io#a`IWyic=f@X+-sXDQdiK2ba3AvC9tV*WHec%o1 zpoLgK2H8gUEt`BEn}$M9ey^ylC|wy^0IcvxP?$GjiY|e~pRF8Z?B6wfjZVO*CSR$= zlqbMQn*_BaA@tuUn|zv?5{lo#*3!>4!Dtvsm|CuFxsFp!(`O88jkV;i+hb#maMMJ@qY9-X0* zgSsQV*WbRhojE(7MX^)A8j{DU7`eU#6-?NHi#QV6!m+%@5__gzg=kLiVBsOCrmz)N z{NnonX2~^x;1+_c($kqBv9Ga_J*dSXP2gjk`ldW(UCVt?mq6*2)0?T(5Gg+H_*wrF zWy^LbUFyE9th2won{&C4Di4`!NlPghb2)M3t4UN~pVO0&Ob1-1d%@E8gX%bQBR7il zP(~##oKk99dodsL221bqMmQx(iU@nzjm;@dJUG+%=IxPhzi4K+;kI+Z)rZm9md<0U z%IIYlm)-mRwZNmpz~ocn;S-Quc@9UI)1AB|(i=*5-W?BC)~lU#IIm{O)9dQjIeCAl zFKwyi2_B>nac@XdQZ;9bT6f-`+he>A`cg0FOc4i*c+Ywd0- z0x}R>bQj;wYR<2*ZDUz=4#8_&O%z4g~jiivCKZ9_mNLR32mGFv6c}Pt{XUoHaHohHm}vMUN!F|{6=~o|#OB^Yw;4ZS?SW3KVF2_|z?5mUHsUCb%Q(JV=_IqdFG_#{GNos% z^0;Klpou1stq2?rj^0Ked_lpb*ga-+dIEkpv=B(yz?!`-T8Igg;$9n{O-TAle2CjW3@p=pANNyGC7CTQxi(t9-Yv0L$37yF-IpMFP!Huzg;4RoL zBLotlaSOxRrc?l#(V+?`HWF0Q9J;6bgNi~KoMdH3?Mjz4P8|srZKfr)1+Eb5myu90 z*;KgS4(Oscj!5Y@=jIN9Qk_un&sgt#v4F}JdAT-4v0a|%)z^tg9Y;WaABoVMQX7lL z6Z;|Cy-Jh{kM8*%z@G*a1=zZij;sRQ}{BV-Wv`Lr@P!wleS{D;wH34 zJ{?XPllsY+L19|>!SXk>%6*aq4x)9TBg4#Uu)nW%ms}cd8e_QU2B@gsf^gr5s|lx! zrE3}M#Lfer5&c6erz%%+um(S+aM5c%{>%lHxPIhk76Mj zU!4%sNbeE$dEFHTvO7r=3m>eJxPz0sCX^+rbs@~c&8lTkAL6>f;5KssUX~K~5|szg z9Tba06Q!fBxC_KP;@0#4CfHD?;)8c!H^j;51iTKDf6Bsb zMrIFH_dBG66!^eu)|yP-ctUER@OU(E5-g93eZL=>QEC(1z1nxg6HCd|(znKY29!c5 zcHK8;tFwrf*H@D`&#E;KfO62o8b`0ve`8l9DWoF7GtfoB*ZI`s1M;{{Zlr6h+yNig zGoMay8hHT?L~<}tJ_m#8H&M&3G?-4=uHzA-`NH3v+ohMecE7=FZ!49_4r$ix@(W0dkiRYRoC285HOM7u6S{( zs1y1YGsTVJ3HnQhL1*fGsHRp`ileL>3xD(9|Lb6SBABpD7iX$pKnk*cw z(I>Nj;HB7lGDY^16hjCN%CMC6kQz&WS&Z>yuz-iyXyR+A6GjDU_oAzIEba=D$*T-k zmb=h3pI}c$@kNt?vIOo8p8Wzdni;YRROkB5SFs5J3JW;Yo6nSWC_;>o1W#b5m6ufd zmIFv#|7AK1j55>f&>eZd6i4Ttm(Vz^O6{VmruDTFlR=Y-*P=2m*0=FFq2vVU4RWBlD(U0^X{3`!BEuBXJiH>YL?|>JHqoX}A zT9uPoSwt0`GYWc9q$bMmmwrv=hw&9Jwi5k0e&miC#CwPin(ptB z<2lr2=y*IY{0gx+HSAXl_3N2b#Gb$!vDdlOZ6dY1K;xxij)e{y9R?ag%`)`Kia!5L z$6wCbu;@cQpet0p;+Ti6*$W_xf+ZuA^gUpz{dOcS0$OGu6gB+@sUouY;)Z*fiJJx* zmS7I_&=N5Qc5gc)A<`*2Wm1vBwTLqZcQ$v}pl0v)aO4T@UdQT;6R=Q!Oy|Gd)|r5nPSnED$(exTU%pn_;D4U~TlLo! z|GP@o#l}gCo`CtUb=LV`IserEpE@(qNm&>>{o9BWF#IEg;O`+i|MI|p{q%nu{59|2lx}uYuR06LPe(7qoN# zqm-V2m4T6fje}9=4?8fnF!;Ykre%ew zw~CkE$CsRbU>)kNGXruXv(@8G{?anP_IY$m%eZ#klz>X~@VM{WafoZHMKPj<{UplQ zMDu@68qv!~ZVl9PA1rfwGA;k83RNqiC3oBpXS5?1S*rPc?-elHt;>uvM?JUr(%Qh0 zrSx)l&wZ#91^K9cP<2$?Vr3Fc)(y+>GDruWQ&X>hhx#exYL?tc$+v5HU;UUjn@6i3 z`cuWE!>P#bw;jh-4KieDv`#PSh@z+GLZzyI#RQbrKz5jKi2gNf1p@w~$J$6OC3r7Z z#mVt(myEj7%_Pnpt`sGcAdg_S)shGb6nkR92bDlPB7QHdLXY@V_%`JIK2Nl3#%WUt zu#Tr?lg_N6s=B1Kvn-82TXCWxo=l6Rf*Z?q$`$6a8|Wn0hRPhH&jfISu0nlD+sQj- zL{DKG&{*rW{n`2!Y5nGQAj7N38HyMy!N4eo_c5&wZeqTljQ*8NHD?HH7x1lZZ76P( zf(b&;mgyX1N&KSzJ~lGpA=^h@jiexo*^}gOH0HyZ(}Lk|`!>t>0CVIuKn~JNw-U|Zm|`HVuvuBY|IYCC}wx{VLn@8!vUvSe*b8aJIEGu%t0g_fJa$oDZBByDwh)5Y~}`7~o{rOstEfYK>3ic<%pB^j$?6x_XH>3dR&h zBTU=e6g)I_8CmOV;$Vl_r@3B)-~`BtRSNey!XI*OcSoKF{C3tIB=;Awa%ZT??sBqM zL;$Izh@@!zXlof!F|C59eu4Eyjqc@r)e|4yVQJ|(A}Mrx9ng75%FJDb< znPjsO*%#2q>@Ge_WJ^|xOdxXw$YAlg+4&1BI;9w ziyfb-DTQWqx0AZogFjtvnGTBIXi;=dE=mjZ0K-ede^{-L&6LWr#N$JUAD_o~YkT#w z*OCQ?+ZawA0^b~@?+VV~XjHRY=|0=?1kI`xg3-f7%#y^R?DHOY%)y7ym2>e&rfmej z3X+i5EMT~+U2oeKVQejg(J~ef5mt7wBo(X%BxtnMrn zI=uZ`$-}@vR9`H~U5psU9Kbk(utUoGic%AP!KW4M?+OWw!_%G6+CDAV_$op6C77tK z2Lz0Qm-rphshjo0ckq;!nwaoByZO{k0Q(~=SZ^5L& zL?C=oMa{cHa)8%S@GKS{U_{GF0RajN^n+&H*;ER)MJ8jA?RY8^l~;x>eXnkgBXeA` z7KTHTkuN>B0^F#4B-n=`HsCEdBwD%xhlHuLNxh%4vwd^%nAyOU)~eVKWX3G~q3S>7 zIst82%<7PN>oll|3gLaTEkx`0edvpeVBeyNy0_LKXLygY50x1SPCSTTvtp~}=*Zqb z0o*eakFnkv+f{j)hhc-*%Or-gIdtBt_$pFLyiw(GcrhjLt<4-Ga7RjumX_0_2$1sE zEn0DW3<<_@MW+GGnTtBq>F8GMi)qAj@mNi0DyYT}#v)ZS5(E(OLKU>t664Aj@eUVl z7F^BS>z%g~sySGdH+v%}9yhi0@%6{reeuvy4Kv*!kFCYE`7`XIdPIL-s&ZmMbV3C# z#D%=MF|Vk%yr^RsZ5@i2^ywld6%^CO-lST8$k-3e+L<^KK@^^er}<&&7op8zah6%I zrP?G8D>g)N7gR2lj;bD^mO-lmT8fgp!wL<&ys&FNp5?UxGuV_8Jkr*pGVX$rVt?9X zqP2CPBA!eWh*0%V@N#nt$I!`zfe2L>k|O;gLdy2 zRI*cs6rGyq<^>sr@313df<#pO8Apl+;fz7y?t4?Fb&@6!vXV{TQ5lcXW+Frwt>6yK zj%);mxOmlxj2+Me&?jbCi7y)@WM=VIS>IZv#E{Ug^HF0?y*gnkO+O?(pU#WLOB3BB zP)?~a$`x?sy_xMvXS%um;55yjpU@ri#upl+xOV`H0M9u!5+NHVYBoxR92iO@BX19G zT1>RFLBijR?$zp1Pvk|n;O~y(vBY%`_&bKKtn&D0=LDG%J<1WwMYx_FpSNx`w3+CL z#*$NGm${Vf;E2;uC_4i6%9oy>CG!sR^;EM$5t(G`yOngc7PssBhTW`KX_Ohk1E9hV`8=amS`y)X z!4WMmZY-_@WS|W#M9ilQ)lN9q6^Jyjk(HEBTadj4Yk*Qp6KYIGA@0R{chc9!fXiA? zH2-}8Dzyo3%BbzbH^~w=OYb0E$bpnyy4(QC{m@=)8`v|@4ev%gztZMnEP@6@yck&CbRpEd?~$6y z@-*_;`%wi2eof{Da0rhO3OWhjL1BUAeaShRcC)A9&}2&pTDKnTVokW1)Uf^;&>SPW z#I?U|l7#`?$yS&cEo5&w?9bpk+v=coahImm?do>R>QQ*MdPtpNy8Or3nQMoJVn#(- zgcN6&_*s|qBb8!o-U82$VS7`sZMPTIYLBtij_2}H)$QP{#9srr)0-6UK#+n(4lgp^ z#8RWAe6Y2CL^fl~6WT1T-G8b9MeF$ZhKDz<>l`)hl@fdy*x%X{{~TL`}%>)iqbjKLOM9n z(Zzl7?Kbp6j*-XcIUJEZI^x^jw7^Z(5hQ_GCbv}i)5pxYwPBguuih~|O%rKC!>z5%KXA0{%Tmca`#Q)x-iFCMtE@af>qKhDE@fkCigHxNS`2y zOtIAG5-C$`|EI|MQCfjMbfrF{b{9O6S^5=88NR$dnF)*)Hpx=AL=Rf z{GDd1@L<H5g5SoQ^ei?yVtC87R4x9Jb_n-n8TN;lE}DjE(!USiXOv&RJjl_R@fu0&Nrr1L9oE1X*z&Y zali4R?KfzVAJD#@%a@g7UKS#Pw}3`aCVSfRUb|pLV^E0EZjWT4m*p~ zN;Dumjv_U~mTrwx14PcxQm)T)JK(Mv0%95U!gm5uw*dX1Zo&?2INP&_!l4eqhR5es z3}&nJRG%h2&^Xn9MUpy~&g!3hkGNSGMydzDP&Zow4I1=bcXgG7{VxEbVye9;sObJ7?y-__YsAqL&O6A%_+CL#DF{iCCRI9x1# z@D>$~@dFRlLq5|^sv_F}T|c5!{2jwK3NoIge)_HjNu5Pc=46vi%#XW^0{e+u4f8Ql zw0TbEc{ZrtXeo?NlWuZcR;JW%(}s`tUe~s^ZSw2=L5# zAyo(10HF!pg+fn#TLALqSk%M=!!o@Zwq`6=mAB-dvp;>*?uP3_;XfcNp3xiBoF>m) z-du$51q*#a)1-gHU(fbPIujS|9RK3kGznnO4&wsOMF(T$Zv`1rQ;O|&J(Tir6p;Op z-|fn;uAug%(^j&`E`%GsGfBF@g7tX4PCn9q*yu2di>?-kYMo2_eaUu~ir5>JXDIRT z{D7CI;KQy_hs?p00+bxRfXK9BoLtzX61s8r#%4|t8wUje(gbtN4}m(WF#D~ED~LJg zSlcH^NEY0TP~DEZuw7?INq}9Hdkg>lfOGKspcm_F66g5NoJ_a&sg4$Gfhiv_;ulPW zzV+J8=dlQsY7_v+cd}MsJueAlfiSFa6ttC5riBtFbA?Er^ z(8j@9y8vfZq6>g2Vl1HVOe=we0tjVUtQnUz>z% z6-sE@aOXl``hX!g9X!RTzi@m#SEoJ>*|bzg>EV^FXOi!TF2?EEisUKbsAQLEq3C

P^9~cbx4M9sme*?&I|F%4r-Cy$NBU#UCKzz+eYOF-u33IBaxg z>0JzY=29sz2dUa8iSWtg6f`02$}-In<%}B5vFbPb_0!!TqAxkGEr$19nnK*b3BbdC zbHe44unVbRyfXFlo!!uU%j3QwSoE1+X|>!Dznu6pxHJ1G%#va874!xOT7d;CvRSWU zPHAO{o?2=Q^|hD;^Rf?VnC9P@za8-_mTNGsmw-rgLVx!vTqj>x{zB%_U=2}L9Qvm8 zKVtAE5tEHsvkv#yx{anCi-~*>cf$CraW5A_d1dhsSW!ZwH1FgnEr zS<)b_a5+M3a>u$MmtQpVb6~Uh%J3u^x~yLOOy}algoL=v zs{MN3)4x7Naixp02QLE$hB1L=f!Pw4T6FO)Ek~ptR*;cdZSUVvT0`@CDG^0PbSoV) z9lYyf+ra2uQyc#u=;}Yb>wjRMwVk7qy@8R*pVcHGCsqQMe^Wmvb^?aK^o^I7PQ=|= zOz9tX_$Nn9iGhISFZ}%TLi7)d`x8@E{=+3%|MIy%&x`~t{{nu>%FKU=Q|0@lBW{AnQXXlJBk;;cpYXJLv?*~Hyh=bw!z{*kktBY8vuO^J%NhrcbJ^Z(ki`XlkL5({T*6Y`7;wr((X zt}P&b>T1JK4jP!!!KV=8hsP3`;Jm%9wyT-xt$iKK!yi>RJSxT5>|oWU0z;0HiAY$9 zjvw+eK;iJaGK{dlE@w=2B%*nyB^Jer*Kgj}@3k!Jg%hiL5E@Xp$Rol97E%q6{mvq& z@7p*1fQC5Y?9=*&>AXm48HGVI>S#b*5|rzg8fDX2CP074pL%ExG&x=BJa8k|Y!LYE zKtH5M3d0~}Ca~CGwq7&Y+g`KRYS*{}?y}z5Ys|6&G1jGGP>c{>W0ej}=t>QSL-k_` zho3UxIBIA&%UyFu$i$-miA>9(;D;$n-j7C&T%jd(I=x+wB-tIdhAmy>vAyWI3W13C zd1Wb2+a;D}8o83doi{cwcLUTA28`VvZhq;4sg#x=S)hY@Bj0sR%|&izbfsjQgRE~H zNbSj0P}~)IsSN7;`d79jn_%EB*-fnx%~BY1wTg>I7Rj4-Yum&6Hd$gC=vwsJ)ALyt zTrgGmNyYspOa#yM=!yX}T&ozfZ0SCw>*sPzh_z?A6tn8RViWe4Jc$`A40^sh z_fITHPKyF*p767wnKSw*zr@fwQ$eLve!8zngg)W-O>ZXhhVfOkR&IUvpK2A0ImEW! z3|+PMx5Vu>O&Cp8=r^*CZ|UodA;oYs-LEJ7eszvntFA8Uvn)q~k(@SD1*^o8DgA)^ zl^&4oDZHel=^L;WzY2ht=OxKBG)jSLE`k^!8xn8i+M*?kAD0lu)9a)Qj3-CloY?S!ygP?&L0ngtbIEjiP z+&R4H#s8H3>*D|^N-+&ePybCqyu%9od%kSSrBUVLml^U7H?kQqb-pc{IGhDCn!_27 z^=~ho5!}TY$It0atd1iZv@sp)pI;|x&rtA+dxBh>z%O8(3XEk0Z;m(Dq2ZY`z5v8h zTM29}c|8~r*}2_=3KZk@lnGJ6mT2z)Oa%c=m$=h{re8%-YAU1UrZ7Y^FtpM3G1>+d$&Ms206(Z}Uv9$}jm^v6mXfW8pCzTf5AQe0nPQkMjh+=3W2PIX7tR>kCVS1@ zl<6{}Ry203sPz-L&`DA1B+9BW8ov-R2<^s!{cbB3Ucl$)3+$Q!WjoaK4I+FmG=LwW zPZr;i(Ajf~^d4>4^(`FH!E3} zOXI7eduqJ6-@s+Z!dX}p@SEeLbPB4cqrX0L-AeNriaVEl)&RQtki8e+b2!0NMZYds0S4wzuc;jsMqDU}>E*6aB~Z#-kI?SnPZL zg_gkMMt^%Acpz?dZ45nB^o=>q+5uwKubXGdyEz#3$iGoQj99vuh!hsnu=r{6CVJSOiQN%8`AUz zpArj89ofdqpi`zc8HL)%zIu}&9Lk@(G=BSYMyBQ|bT?`SN; z6#3a^asZ5zG(aFvGFI4H$!&RPdVyWUYsL-4Ui9~LdRX1&%_cn*U9%LEOEAcgyEkc%` zlCz&NdIdjb*fSlHb8+Tf--*YwwVZ~CEgiab6W67kmn^}XXGL#z`IZSI<}| zNnkaPSFCloH!IzW33kkA|A>rd=dA>3*=RP=5px}Q!ft~ zqEm%fd6*i7?nEKmfd+wy2j3M*hnn+qnJ~}sjmV<|oTnGiVW;tufAacS1eB_FGDrJ3 z+bjr|X_5J88b*0{sg|@u^hUvG#{Qk)L{yC+OsngJW0X$SUi;g1rj$vmLE1|;ch_uT zA3Sg3mXo-M%#;Y)!x-5&0ocIF3wPA8NMVxYn@6`(j8Tn^j4a<=aNf& zzVO`{{3b3s4y?bM+WXf{#q*=dtu z&^saqV4qw?S!Trh%mi|qrWW0c_kko}npQ0~D{#`RsM)GRzUn+<8Xk1&YtpTz;@5o$_2yi zNA|brqli4<`EYu7#*AX{@H|G+sg`MK+qo$LSeqZ4ht7#zV$k*I+ zJ8DLdiBq!(^6 z3W2X7pJc6c8Xf!i`A=T`7e3y*`Q+{PMh=>=q$(z1EZu84BG+st5qrGoPJj38quLkI z5B19;7+d%;NSf%!(r{d@uO3vD9<^Zt08Qc>4DO+Z8UNPm=$8!z$0ndzmSZfjIJ3y# zk|Z4xVV~9lK6~<{K8?WRlg)M9VGu*wnpB03%xe&tIAH>dpb8KhaZ1h7FsxKc*Gi8xVCv68plh+-q{ceCUkU9*izlaj zGl~+boU{6eIxvgKQiUG8^(qBP!q=M{Xy^pib~wGWK$Mh34Y>Sl(ELWis^DFs2rigc z^P!CHS}zmfNv0Va=!lQ`sCiWN=I|T&-Y=Mev+buPjhGF|>C8*t?XcMA$ETsqUhWbz z_rJQrsO#2Jz@-+5ZzhsN6f-0y)6B`s-txV67G5HCeW0h-#zz@!wUp^Vvz*dKy!kx% zT09TZ=O_)arG#<+}M1)NEJ5Ko(eeLDR|fToUkV#iQnWQ{jNOb#aOS1F)?JDg*;ZG z{LV~%Zh(V+ryq|}_gvgb22%anoy>BVOxF6^YM1kw`-tfep=5QcsaQgHPe?}%45Z8B z%ox24i(8Vx$(f95cF41k^k2J^3SERG`CRNXQ4j?kZ^_ zZm*83$q*T`$$iYJ=RBCt6DREo4Bo;Gq&o<-Cut~wqds_PbflQxh6UxrWrI%vF-!`a z`JSAlk$WN94-`)z3=e4WvOV}zvNyto!=r*u(3B;RAWz7lE;WDE`xqQV7eYFqUWv3L@1N90QqrRO`O)-PaRh$Wq z@O-Kwa_88B&XBtgJ9b@ASr12|ULlRY7q@`g$Li*TXf-js(-4Biw70%t?W;eeA)G6a z!>}?#w94`K0rM;`ZqHC8i{kcSn2rYLz(a7Rr754`EY2wTJ5axjorc}Y-WOgM1qBL& zvIPk*I6wSYx;wI+F=utkrs*_vJ}YeNXyL1RaYT~+IWFt!)#sSK&)(j`XHiG4<{a{c zXRLs_8nn^IJhEF$cn=J*yLe6wdvdKAquD^dns4NskB4l@9ks%`IP$yHuYmEllx8{9 z#Gqe_cwtrAGX!5v2;0t%v16~@+5ybOZJx9}M#R*_XGc`%LiwE_mxUPDf2!SEIrycN zXFT~58(EKJeQg}4KAkTeSfQ-Q1J;9HiIO5ITQ1*vMaEn)dzjdGFGGWs7vfX;a(wXC zPzsgEV<6X9bmY=?8XL`B`q7W>b&&S#idt~SlJO-w1bUod>#>W^RNY;2~vQ8Tc19uEG?~{9j(9MIEXl0+)4pmjJQJeA+~1?T;P7! zKobrPy<@jkX%`zJT5pl&6e>nr33Kq}bK&PJ)E-0tXO)K0{^)n`(iEA!mTR~=Ph4WB z?@}U)@8M$xr9!S?=wxY3&2)OH!w*|oVG%f^wVNAlj#w^o>lu7?x6 z*=izO;|LcPCu511^*1rOP z%SJi|19hty3YF~W`bB~^Zm9B)60F{P(aFS*l(z3Co zG0_m65~$5Dkj*+y#s|>>G|ysj#vpQiSuW}snGE{)fG~^UL8@DZ0xa!9zLi${;efQP z#kVQ@JndGp=|Qs;fQzP95i~Q=;peYFDG~(HM$4%!<$xBbP`^Aa$9qnCBr{*x)9QFR z0g<{$5pn7+E2;i^Q9HTNrRR{YSo6uGP}KHh>qs4C5u*gL}HNC%d=gz zl_?L;bL7A zd_o&M?H)9ysM#|nABxU9`6|mj5qd%tT;KgYSnfKF6iDMwreENQqTAnf+a3`jS;L|B zxkQul8z7#zH-%&qbHb*(77S!tUN|dl^Ot+w8|nQ}Qo=mQ<_Bc~$R^je+()8()GYI- z;}aPLc-$Jzw!=Y$+OA29N)~AnXBVqNtqHiq$_bn2nDRb|$ED9Za3cgJA6Qrbi=ly6 zBLUO8=C67OMxc;i(}lXPNmT;;Qd%E8D5j7qRoLz29R`9e*@(puC;JUTgriq$JBeuI z*0BtBfuhw+-|c-!NMh@lG4;}h1}BDgH)bnxWCPADLT9|LI7b3a+bTKn1-uPcc$=~8 z#+e8nxMCp%Qn%?zafc3Rurg)SRp=%h;-OJ6gz;IovW zb9CLY5k*?L>;Ij|vKRPcl@dou^t8?TmmSFBPRH;10Rw;lY~Wnn(Noq z#qYiiU5|%{VHHT7QC=sZ=^fQKuC4RZtRZqiCIe!A1m8kw9zyz650IsY= z0PD0a(+F9;4l<$k(kpEgH4g;$!;v55a2k+Gb?~C1sJT1tmGX?IA5G?77!+*!ngBS= zn*ieDjke&`>+mwb@`lG1Ck^qbb%GR-xsU;?5*0Aicro9Q^iMBU>5Z{d&|P)N73&3! z?vKB`rt?>I42v2N9uhH5k+I4kbhe)fI5H?)UBX}oq2ZUl?J>QVfMLk}$$EMvx!-A8 zcwrL&g|m%l>HyQ1FJ?q}lU#u>a4XMmiTP{wM{9g>Q6Pl51Cx9MDAlQ^p{d0L^ibzC z9o@W>gPitaN4Xy>c>KSfYIIP#!=c4$zeu zX>CWKWn#Z74Oa_!RyhTC%b0QqTVrz~3#GFAUNvq|0 zoK7gU*)ljD+iwxkr!wJtcs7HOrOTWXwWc(#t2x}v?S>trex{ZBb^d$2C0zZrAlvqFN?>nSXPJVAN8L39@lU2wjVves@r2w#*jHd0SoIE zfg#JRu5iea6=YO5In6G9!jY6;!8V=-UnH)O#ls*1YshYQ$jI;I-%vO^2wjUHa>%hlY}um;u)PX)+i9=wXI0CS@0$rIbtDjB1752TwMSN zZbifP9N~A#Y_q8`TDRWKle6l=1d$b%Ic zu8b=69eI>aWIigT?goZ1lT|sP9P(2!X1=t48i^ZW%wIY zH$LzEY$Bpo^cxvrB%u6~#;)pC{0P*J9dyL24INl|{AMMBHcvup5OkB1$^N4gi`(S? z05?F$zr5ebB-sXV(X8-7_efd5U(72sqstkxVlL$QX9?H%ykNA*cj1FwMRx(O)3YGQ z;l-l#$}RZ4O(pqx^DCjG2t>7@?&<@iOCAY5-0*dr4-ReeGaOPstp|Cc@o(@&f*X7H3F2_+6( zy1;Lp6!P<8acX&->w3N(>vR9yA_E7uF_z+g+%bsVt}9-G?zx)ZY8|q z`ts-2Yzzp)ZHM0)&^uv1%cF7c^2ZS~gP7Yu^W_c$c!p71lKG*&aY}@~29mmqL-Yl} zdZ|5pDfIZaS`lZDJP;K%wG$qZkc2Hc`>K1RC!C|{@)D&9pIxCpvq`R``pLeW%npoRk5=^nUKoH`If8$PDyySlvV*sqoYC%z;mEyL+pn_(I%~oU z=ux#3O*geFhm#z^VN}-)_bc9%4%Bevf#lLJD20jPc<|AkzNh_%zH`#_M@{adfxRT$ z_Qw>TpJBNm|2jV~eRc9YA=&NFZn(__9puzDgxOLIua~zxnDbR+&&BUm+k=l2@KQ<- zF&x+g>-&8CNM4sZee}j~a5_U+XfM0Dzsx;;Z^}1oYI5gH z9UquTn@S+dYXyLr$*Yx+bM_!k^SXA)uU(BI{Qc);i44X2469Lh&-Uxk*~SzsdVZ$z z^{)m!$0rH)gV%58`!jWpG0%}RUgHX;lpv-$RY3rwcoW5ctpq|(%6|6gpq1Uc5mO2H zbt2co-d%4jTKKam$I=fwVF@qJEb&`u(PC32vk`6pPI(CEZR#>{@@-M_zdITO02uej zW4s5l0HK@qJ8y{g_sZ=WBzH-o4jN2;;1nkwuTBoCg;)Bk zX=Dqp4(*hsCCl9tIJa94#l13$`hW$i46>j7KxJ(XF&^uq&$~+mG8#4w z1mb8$5o{@he5GhX9i!O`{te^W`JSY`BV2Lc9H!#|bWs4Je4uR84H?X**Q^5FZ94Uw z<^Ij}uu0c6C=QAA-W^sou4LHpJFzJoEDwJn1Szq!ih&V73<3+D$2vm4R)x=-bp#iW zytyTHrsD?vvn%O=xJRII3yubmUWbo*-!V}B8%p(Yc z3D`%N?amwdDho(tgW2*R?20B>X^L5tUE1?LdtdG0_MH^7Pa+hlJIbGWXT!%cvZ%77 z1i!XdYR$sfPa(6ikzI$0fis=6c~0E`_C#?ll+uPP%*9LT#`HsBQl+0B_|vnW)m?c? z%(U-}?&x(Q1F`Byp4t*~KliC?BX^h8E{pA)!Lx+re`9dcp}3o{^d~?%C9+NgU|xqs zEC4leYrL|qvmbh!Fh%)7#NeF<0H&wR$|HN}x+U@D6g)2C$V)jL;^80ibBf=kyE`K? z+K(8XjCM)qJJUd&qKJZ$So4Qy%jDX`aU6KwhD`EOIB!Co`%m52(F^41pA<%}(V~KArdIN3BIdjNh@m zadcpBGs+`?q-H63qYq{SS1fXKWxT*|1f;baC)|RX2!6A5TcQ&UkAdn=JMKw$c16!O z<935~0YJ7o1Fo=qEn%}10v+>rww?QMd^`ZDQE>k95P~xYKe;g|k~Z>|VPLGT$^P0( zEY`x_`TYY>?Zx4>$QwWwE*j*DQVADwmzq*L`#aJwv&sFp;yzpz9)zk%>xy~o-mD8CwS?K1( zI4*I@0E3C5J&h*szinfx$X+x2X)r}oh;~DN{ZqMkd=gYC-&JBiLFMYvh$e}~=RV{@ z5mMHc$gk7q+-u*#OswgCWi>7%H2{uc>;brHn5a-O^%uN5VCL8XqDWwuAh3TO(FrJR z4x_DGy6~*LqxjePAd1)lOQ$6G9HKpsF~N|gq)3sz_S6A~K}-9gUN`=H5U|v1NF6L9 ziSV|3OV@b`r#vU<8(~H6GfO+AS$mFTBtY`rx}5{$0%pH$TE@+nqPul`9rW3NQm$TI zR``}mkn5X*$iH2E3Wk8qv!fSLeeT|NSkjw-mDZhRw{B0H3^%R=0~D0$=aMG+L2cU} zE^n}X8UZW6dE6ty>6SbE+7vb@6TQDZgE@%YaD{(CU2F+}z=yzOWVzQ9(kn@>cAjvy ziN|P>%2%wjgk0iRf;CrxFPOZX&ZNuIeU3R-TZ-73FM=pWwQ-O3Q&D-A(8Iui#-M-n zK$fma8+MhwWjx>!VRM#MfA^Jl#z`P7F_~fU_aJ~cp-7|p1zTuRrMdi<_C|{e7-<4JRT{MPC7RgLY8`Yyh9X~Ar4a_v7Kf7;sRJxATJz#l)(YR{zH7FU;$BMoBX7-j#m z98+56x!9Z;8|cwn^3t~c+Z`}*XLcT6kI(Xtk~Ca74P)$I$YE%0KN?9d7UF*HMI3g# zE&0R@y>qP^yTu>W(Mu2UWc~-lobZhjJm~;Us_3slztlO&gv5NZJDLL=yp84Bu~Py@ zLPEbMPOEb=RNb<;;-E`fWB+;#yra7eE{3YcV6z>-AnoeNJL9Q$d{ zb5`$DmziF(Oo{@~PqLgJzgF{{sjz4dXMc`g zy=|tOR)&{;{XH@4fE``>2s6xLEvjjMl<`@?6GGD`%(D8f#69uK2M=+L)?1DWP*wDN z)#qgz>9+n=L+OWsVyVEvtktKZmTjP_s~|Rp#IrT@N`H>sI9LUQv%^w$M2*gJ6*8ub z%7m&oPNVd!$K%Wck1!#~;;{t0k=l*dzgi&mz2n@JLr!+4^;+VZxB;AjQ#&_+)6+v- z-&C{NGb%ZrD>YgB1Nk@ix_oTqJzP>&zyCK)hJ<462Qu(in)9^kgfeyY>f0Z6^^e*e z)iB^La)harJ9Qy;QAH(`1$itcP&@JCjv2U;j+<5z4$>W`c>T}jlzfk(w)mz@^e-0x z=eUMq#5$I$O5*M>z->D!sIx-7fPDnz$O@K_Ut~%7Rk^hFn%XfSF8Ds;Al78W}u-a9COU)>j-RE|GC*s7Kx#fcUvmNb#w0V%Y2vz_;7@? z)yYm%3e1X6`aGjr7(ZddtD4>9*98;+@-XMuMjkWo5Cj+te{y)(-nSi_ulPukSq}yr zKDDFm&N>FVw$OU&+bK}N=W@Z47(M^zY4+I1)==37>! zZQeZtSns3d+=Rd zwQ##==ZVPX<~T+PV(m_xX7FP`3!ja~s;-Yi>V_y-3{Q%~Tghyp&`<2c0M8XGKO_)V(bq)}^(d&Dyq*5D~lO8;jx>6fmM7xIFkFET+LH=oeXGI5??iYgO z%`pUh>7HBV1rbbv%S1Lg6DVW0(1yBR4g5p!fNC|17g`RooikT&={kvQ<;8>?QW8Ja zS)5C}|NqRap|=9tD34-*N&B@?!LFbFqUoom81m9|CWg|y@R-fQGkgtLU@WIn2@ubI z{43zPHr`R0<&wNCC{*d2sz zH@)fbQ)Xy=rg2g`#nuUWsNy5?E=ksoTl`4u__g?Eb;aQRHG>M7crW-(|xgcgy;qjA} zuggX5o#xgY-Z8Hss-GT(;za!}QT+iFZGO{@PfU!K#Ulm{)JF&}bJBr?1pNxBUqJq# zROw-PRd-*`@q)k2BfJfVA6(hlbnNhu@s<-Qhl3rg6VBfdV_Ly&mE$p4_5ks!K@+(@ z%NsfOi=z52#B0p zV_SG&pff~Bzq8BvkG6m)G$g)%XsIy7?;<3uCRtK#%iPl>3>!TYmgeok;S*>~&!aQR&Yrw1Npp>BB5_}MX`y94GbZJ- zLYeqWZjK(1J{ZJ2%44y}G#N6Ij|mIL*6bHK(X!pFM>Xhl?&^EUsjilweO**118*gct9ko|AKU;%DxK ztOJe=$66~xr8^)hpNC!5s|Al6DFf%e=>G*h5Z_9BtXv#}6l0b7dH&;7L6x%+FPNpb zWn6|MjsBThdWLsO0JVxj>Pyl*olA~EdUJ zx`Z6}h57^3h{_k5iidYCOPWzddah3|5lrjdk6&LoDcj^VyDxUk-P#841wLsHq-Rio zBTDRWAW8_i7p(7YY^`X}ZtWBDA@X>|YX?GHT%wNF2cIs)!n-CKdY!)Ld&OzFPjbV? zbq*6dQU2I|rL{GK&glA~`z9be|MuVnxSDlaHAFNv>}2%mZUwIdA3Vqmfu8kuI}mns zDEd_m$?W9A2Y1|I@?$B02e_VM^zY7a$j7lsnTv1#f7p>j>gHkT6(4F@CU98hGOrgE z4wt$sE3zL}lqZYQ_Ul5M$@5hj1|{dwPJ5oOi@Z@26t?(QQ5eZZA^gv?)r#?5TgqW; z4htS^vrBscuxN|-hZhBg86{q#uTRSyCr1pffc@J@yC+VPk8}?VCW%~!N>!sPa?FzC#6cjF9RgX!zUF+$Iy>b(vVDs_R=GR$c z{DNA4cKeOg_VoyQ6S``34uy_Z7VN=;H-N9aKK%*R)%bQ z=}fbGx=_eew3%D~qo0$|o2VW9J9QB;^_BCDZVG{h1TRO#TjKw-LYkd$9Cm#M`v6OQ zke{rE0zW97Uxj~3tibR#@|vjks-)Y_TxYfy9x7!wsw)DMCmkaYZJ#d{>!-6KLey_y z$)6y5I$zN<81zy`PzZYKJmshJNk3JCxAwQHjD>&KFJS70K3o%Teu|hVx?1lPS$kC) znnNIHZUM}+w2OWS;<{)HK%$1tBQ)wbmtuenD@pQ;X6&9ED3=gZd8HVr|4Mx%w}E~f zSd$#5Xw5S+zMGR?tgmdAcYf??_h*DZzH~I$Kpk^~arJpcS&}NwDSCWXt!Z*n-!>*E zsXO`y*l9`;q}MP!vk{(hDdMr-WoKx3F}hR7AFx4wRBk39jpJhh(YGZdGD(oZK)j+= zvV?#kOL)$xVk+D=<*=3@RVx}lx%Cj5ae@*9QE-bq<=IO8S>1Hb4rrQBEmzMRu`m+| zEqsjBf|;?icsx`C9}=RW5lW$3l9{gA9p} z?8a_}fnMrsP~3MeY9c7w;(&Rzz2p6dHI=S&Ip_fLc`_Emt4}+riwP?dhNjt8RXXDT z%N1I7bVw5pIS00Y2Kj0C^JY$2sMV72cB_-L<`bu)T7W!I~35I zb0RV&ZPohCqNCW}I-DM^$~B?z2p39TdQFaZlqX7Kb5=<27G+=bU%$6SR)e1aThmP{ zz!%aF3d|$_Sw8Y1)pSWF?+VAu%SiHduK-qyuzq_Mf17~ro|jnzf_^A&Bg)1ozy%w` za;E|#s3SNTan6I`3}OCO2-vli_3fB)5Yk8Xpca?W?6)Nl_j0v<5hGne*bV)+wLRGw}Zf3Pi!F&eCgtI<;zlVMG>T+C6*;KQ6SCwe^ITwjuqvf zQ#t1o&BZr_DuLd-hTR!(sjN|HF%NrYr!fACeRfFDdOq5IVG;QL~U8VS1NZ7!R7$IU_j(RklR z7~F{)dUf*vneHKi8jiWl%FPlUD-$p5dw1A~Tm9$b6ZIiI)YcK|E7vB3~si<_?^Np^E5G1Y7K17HXykfT6ObS$>`_O6h}@`&2#f@Oftkul7P`IlQX(F7 z{?nl168N3lhB^^yF+)mntYT?uI@Q6_b*-W$#}XzYa=Yr5Hc?X*nfndVBGAyW<26fS zW$qxUHbHbGuzAlp>^zV4U|OUaH89n&7~KgQ4YuaD;Nry7@EU+;*uAEY&>jAC$!3Go zV!)idLGkbFzZO9PWei@j-O%<%&h<=Ztq*bYxc68f5zJlbYhrASpu_S5j?Tx57mX0JNe(#FQRgQ2Mq_g;Hu>l6C(Z-&miiODKd-%900Ex!i6IN~uVhVQ zGzcp^Je@#?dVjG4qa6Ra!QLkd&Bn4`0QFv_1d}xr#W`xu9C%heR8M5eu(Fl#(7Qkv zFUwvt8N+(v@h6}s+T9zoBeXi#)3^8%_(w)HB5$(zlqm|$PqJ+2aitx-f%S3|AaZl+ z_v%S3#J=Oq4Wp-lGV3y(Q|SkgN=GNsKg{5M5Ua!W^C6UK5!;Q&Klif({q|Va;OAWh zxdVH!%l#^Ul&OD$KJ@-=>1SGf@bg;JA;}j!k4%77FcZ4aEF<+ciT%NV)ve2=deuVa z$$-HGb*-QH8ilAF3#RKMgO<>nHVEQ6a!U8Xc`T;J{ zgZ~64r%1DMo^;*Qz~nz*O$q#f6YUH5J`j-*Jr4bLgn>2KtOX<@W0cRst*5}CYcmCJnq8eyuQLjY z4n3u2{i9Z+(lvU`rCkrrI4L^k>1Q5&tMW;!dkSx~74h(d?6Z1*sC|fI%&xbEE8j7Q zwF0vc7pr?;7%GqItSdZdzh<>nbjMGX!k4-9QRnhFU*x@!xC#gyZaO0-X!~e)JV3>O z?Vv`p3uTidV z)d^9IWBIzrO&+bI;`R&KN zgS|*404G7P7(3q?d(FXH1sH#N7|95_3E{>Uz#R;dQD;^B8@9bcrF9}50$2|8Jt27s zK^Eg76=6r^4Q&d4U9Wk%xJw+u(UDshBCuEfwan`7*~Vk_R29>sv49HEjt`NSX|2(^ zit-SLN0FNy8MOT|yE>Q^Uum&Iwbejev6Y)TabQ~49vnqULCGI37fSMl_lDp4oXL<$ zy!D;6RD^R|h;YFjaI|#12l_SAttW4tCQf2t?PJF(VyE#oH)mSR(JE8>@y2$9Z-Z9ZX7=u2J;VbvJ&~f7d0ZJsGRb2C^qEgh-o1& z%-$G$AX?*ad^<@U0kKm~vSKDSPCh1!zgcnEWf_7bSD*W#THiiK%QB zNZieC6F1|ZfmiAD_Bw2S;#&>y8TL{6fMlR9eBWtv-?$Vny4Wa_(6uc_&_tl|z0n2d z_EU*dhNs^iQer!n?Ucy?`5$FG zfCUsl6nFO2h}rAG9W<0%^8`LQzEF&UG7vLl$e*Mh|D0_FPI%ibp8<7EBG;H6VUnxo z6VHer*iy}*in#4ppy4oQS;HM^b8T8+%;1$+!~T3* zBxaJ7=7IH@$8dcvx_g+=13+RzxG5iq`EF0;zx1qI2E7oZdI?RNUAaF>Ca%`Db-!Hl8qS+0ncD`urM!h z1xOMU%R5ZltKeFr)0hUYw0K2_6Mxm5+dYsQD>o8F-vfo+UDT2B@1+Ne%>qkj0r*i5 zZIwsItxJ(2W}-5v&}_YxdE+;yCBfdaqXN3d+kUS`86>#_j&siQ#F~+NP#I^CxXPJm zcx+rR-gO{O^PpTr*5kp}d#5TsI{NwCC+H*wbRrO@a$%rgu_FFu- zhbt~INu3h(a1dCn4K%sv0C`|YIoBVTyRO&@Na!J?kxaIRh7-&?e88Cmm#x%pmtK~f z@k zMq4ct(5V&%A_)7=$?ZMek;(xhq9~}yHdR*k2yka0s8IlmSay?HN`-J=iJ}89p@`d( z0c$3*18Q{}4P}ODedBZC5NnEmR_E&#ZcvE#fAnDV`RZw%_LU3BX;gbN+|)?aPgG3O z2D34I(N8QB#>A@quY73?3tn%LL>wfgqw6?$S!eL$ef|E>>citfaNIPrf4f>Y6 z^JR%6V02ZFwEF7!e$tP^8m5=g=0TDUs5ZpuyHVpVGvOK9?SzEQ!xK(KkQO@0Q5SH} zI=Q^J<_4E%(}KDbN5};VKK=!kT(sKH@9D*gf3pn64&3`6i2ErolPoa7}Hths9_lhw(skoP9ST@orOVg#UQ$!ON$`bsc+O)HDC z_e|H)-mC{rf0BsCvG|N7>*iebzw#nNtGSVpkqwk{AshS@pc2dBND(;`f@0nNxyj58 zqoz{PYy{Z_<+UIacgP2+9>r(HLT{|D{OZvF2@zKAk2iJgQuhNz$EqR#y5NcWP#O3L zrr5C}Rik7gLeU##qLh|sKjT$xUmnt zMWN<%VhHCDt@;KVRHK&l8kYuQuXTp~tz=Z;7{_C#j%zgz`@Y}XQsjjWhz=Rvr$dIL z2?Y_PAI`K>UXffI$8Gngo7WUlrgbah;dMUznKEK4#f<{zB_3@k3Z5}NNm8n@9wM1t zHb=Ns$tA+kAr-2gS+|(u*f@aB~*VUhRul7E>*Nz(< z;2Hq`$*^+aQ)=vgxBK3@s*BwJjlDQf!0iX{#CoY59wsdtjVFY1Cx)ho*fuyy>~t+C z#oWQ?>6?K5yi}~Y9zbv3R-nfdxNt+J;5@W|5;flkQ2E!p5lF+G5Z0+wTX*9bIPMA>)8~*MUqLW68p2yjH(qoxUGdNDMdnD$o2m{dS z?sZSRU7!hhQcd!^X}>oSmy^adxBtyzKp|mUN`7TE3;k*Q|EUr(<&ncRJ44l zq=t?_^-8H-v{-ZadBj8H)*j#IK=H02)~t5xjKT|fVn?`?3>nPhg?9ciQkYTDMwJ|$ zXi-cQK}TIv*D9};Xu6T@GR!C$g1g@7H6=?~89q28)U4BR-6doeNzrp3aMWC#P*0nR znL_gT1F`0SPH^QC3O-ulQa8m!eRDEZDWl}Q&Hq8Hi+tA4Aa>i&gQs{VE-8M{)ry0y z_Z*VqWy7ZuCD62y^Qll9C;}L#7S+)>SI#AHy&rqDe94*FE{5q(?uzd>;5&1$&E@J+ z3`_kAOK0Ji(%qSG4{HvzT;agemm%{$mFnoZ3sZ{dt0~4d`;|{N8nFvGBV`=zP~=S=!TYuGK1!N8}J=p=zO4?NTNCEcJ`14E9LCMG% zB!A26CJlyEhwu3#h4V6q3WS8P*-a!vZB-Np<0GfapvSSaJKYqs+?D*C_VCQ@Y045h zL1`bt*Q_^2-Mg6~$7&BB=abz4#iB+r3KcSECE4!gNdqmj27 zN~qy6hZaW(5o~T_GA3TNZq7cZv5W5KMBNuzu^n1DnEJH)3yAL*Ean>MGG}eoX@iyn zqS)Xnr;riWjIX6l#=)F?y%p&Z$xygW1XH1l#JL6Mlg1iv!1@af56%a6WWtEesL3{N zH{7tbl~#vhY^yAgYs~>&8&N5u5TkeVePYNS&67}f$+7E|S103#l{#HP+8JuUgH2zA z;+cMb^8SdnUO6<+y!kL6W1?&>hyH|(hzl0=e&Pb-%fw|o28T-_EG2HrbBFLG_WPZC zOpYX-WI<&cXouLEuCzkvSCd;_!xuu9{0bjP>R@`39t*w)093V z3ju8yZ*gb&+n+gg8>dB*2uvTuPz~g0V*+jVaYij{Jj8Ga7>w-w(T>U$I?SLwckf7iZNvT5~E`H*BI z-)6DwlBEF1wl?RoEaAgwB79cJk;jzET4$H@{TISIHGMRtPMcBGz2Sz%nB+{eKkh*i z?wy4jce~vH?`pSEpA`20{4*>z?osh+`(H2%PYp9wLVk8Q^v{iRGg?&E)As1z7a=8% z&6mFEDBJ#;PyD6+4{bAxVB^V=Gnv-#F@4a1NJ|A0fG5w;r6{@N)PyUkx+lLqkqSi> zpyX(n>Nv{HKzn_ZhGPdxj2jJTc5?s8>N9{@ElSdeasAlC5uzw!qsq@lgy6f%u2nvA zttJ|r&}ABaV;`;jK>)2ZTACOu%3q7JF0ZJ}xMgR@n)S;833zeg`xAKv14c# zI`^pQO+W`9;DX$4b=fyTxmS0J<^sx;B12M%f|i5=#KST3U5y*|w2SxRJj7=jj`IJ# zOfxn5v+tfzHNF|2dwaw`xpxH*Ku!-Wievt-S13c9@FuUTfPM@=V0Cmjl8k!TBXp$E z@H%roteS0&i-({*$Q4(_GE%hm;NWE_(W?9K5J|&MH!DF3i@dOcm^lu)(wTDvqf|o0 z;;+w`CA4TlH0-F1$xJNW=f$G~`Qrwh9^Q!)Eu92e`f^Ut`paYBk*PolFxHqE83(Io zAaW|W89yx<=53(s^xd+Fe_IN^{6SkUr* z^F=8F4-d-?cSHCI6+C0)dkdT|M5zK4dinKrc>#Ag0A2%jy`&nFOi8G zGk~w^*%NxFz#HXPn)54fVxx3(K>et~WbUYm6u#zVmpkQSmjT6d0?zmdDZZ^Bq)qs= zCVqf%BJ@QLoF>dxhbs^}>ymVsm;)?rkeYq^DA7MH%W2p=)%-@{c9O*S1FQ4NNq-Vw z>n0qqqCQrs#3x)&RdQUz3ZfvI|2zwQM4S?)Mpc=U!5WfZJEiP(*)PT*m5~Zm3vv(9 zZ?xb~f;iaCPLVuCxhJq!#qIDRx0cMRse!p<)Z%f<&_zdyp9*FYsp@GQE)rUzX2Sm1 z1m#t#Cq$G~gc9>CL@R;a1wKnu(bO+@PPJ4(xIP&JH9sR%wEOxxVsh0qxqU3oxYr|=1NDx5-Du5nun>2n@Wn{NG!X*nOHWh zwFJ`>Cs8982GfvdJK`mmEO_~$Lg0428d8`*PWCdU_968ThZ=dK$}xeGOr1nWBP%X4 z>@{HUo-|s{{K+&%Trc{azZ7#V*Y1Jf(A^*T_+^Whn>8k*2=TRR=+V~lEVdhD+r`?B zIoV1OanEE>Aczmj@1oM!o<(Al9{+49*3-rH$V4@VRN%^tdnxH z>n2xEp$E&t58pSF0ymRo_J=~R23sA=Z_${9g3$~=yId1?=uOTWUnZl7rz6)=C#{8wpNIavNh-5lQa39{0WDf zK?3E3`T1NA%cv-4xY*+$Ng5NU&ec~4sos`YiRfBkq^Vi^=8GWH_wrn3<5N|Y z61GAXQzgg{Q%oR+y$ zc8ar(DaqeTU#4HLz6qgm$;@4(N6E`5bvGtku;Wu7h(zpCW!+fXKlt=$6$z0rrOqhd zUxvh}Q1uGHvY;_Uo5jj6oqK?2f`jMLj6cp7j@pjtHrm1*?+kF5*pFzf$S}jV!HZJY zCrOb%4n=*iZ^iJCdM5Mq1!5SYPngpwP~pxN zEe~TS#tJLKBqx()OixyqM=tvDr^}bf<{7p0uZfLuA&`aUfaPX_N+Vw8fn6_=%N9N> zpcv{Jg~A;&#a2cW?usb=e^CnMhsE_smLU-K;2QeW)5X^J)5SSl1N?KWfcH+wM`c8M zQ-oIGC$EQLNg)bER$gmP#&id0s~mNtAC{uij)>;{0D(HPYjlZ%@+j`@74E~N%JM3# z7jRN-!QubgU>HH_T;TU>~x+nIqs~VvudxFVJD zy?ir|bbYos@hgzOTLbdQH-Vho+q2E$KXm$cc#b3SGrJ~7^!%^e%g(kGci0Le)9mfg zfDyz&T4dcR3&1mI6!bIKTC}yMg--?Djht%M3ENnB9>Ku*bZhZ3&my|}rIL1KETaka z0BYWgo!g*yS!bQkFAh?6#G$vcTX3sVx>ZD;YUh2mF4q}aEU0+v;))v%oeX^!G9`+i zGAum3)iR5A6o|9E^updN!MjnyAf{rap9%eb)S2JkUTqN%sO*+r_4*Gn3t`6K4lldG?z+ue2@xH4+Dv0!ui2|*#9XXQu z@$1UgCdJNI-59Gqg)P%6TY^?wqq=07b27y!uPrVM$H9Fy&zyG4OwHSh)-4$n;hKjE z^1mhjpKix1W;0D+{tm`<7NU~+OFlalmxj`9SJi+g85 zCjjv@&*_O8kk@;Z4_1A`{JXu2juk7ZWT8&OAE@d!j`sP0%cCVWBV~#(k)HkX$uqm}6F7HW(qsSx|B=;Y-`Ex%hpB2w0?}nc z$I0gT=OM~HNODRp7ueQ8AJ2T!$@njf^P{O-7t_Kn&Xx3gdY839$#Y)w%IOf;^YSKV znlqK>4XFueORyC~jA@aru)E2Qi9Fg6FPae&H}XFuO1Z?D55u2~?}^0my79oW+YVI= zd+`?}y(5zto|u51*a?7SwtzVW4@$PDaA1~@=NY4_2s&^xF0ay_ddj8bCXnB*{}R2| zZy`iQbIue}x5vQOeH{6U5){c8p z1{7HelLYNM0k48YtM;qY3l|+SDFW2uq#Q=qXIdu=62FE-4iV=H=`w21EsROe;T3`M z(|*yI)F%3Wo5m*~SL37&7@5g^JB`Bv*@!dKL9B9yf}*(M|M3Fh!zc#b*08)L8L71w z00>l^Lhw7{UNMNExSiD81Ot{VyZtRRmwwRnu(gRV=$7y6DC1eY-)-VRO=_Bwc{!Bl zEDC;npFnBRF4tyOP+9`}ujTNVf~QEJ=FE`SrigWNT?cbe`XdoH%czGn_4pezIYhcC zR|)i`=lGK9wBVIU08YbT44BXJw>Q{SLZi|BpbN9ISR_L!#%2A1vd!yHw!Ov*h_w;5 z-DQ@AgTr`@cyCa=qFJvko_^gvM|_fIDV`EkvPso99rJeM$DbW@$DHwHpqq={#wQ7R zoSt^`fc=V_21ZJQW%xD5NDdveflv3oE^cl6BQKqv!P$^#MFn^ljTHT|(C?2s78@lk zih^X2A>SS3(mvlA4itsf z>oO&P+5Mo%pDLqtT(`$;2K{++AyW0OWkl{I{evPxL9q+1FnS97q#$LrCW(5kt(An6pZe4R0rq6f#jf1>Pg-v6fIj|*Ihv|`(H~SjG z>;gkUw$`6CNLQ_tE9)W4Pq)T6EPs0tp?9+5N(9`;vq1poo)E}R)!16|<1kKl6wUKW zR;Ixf1;<`$q$>W^<cI0#SsNGT$_a_t@)$n4u|S55+^Yi(#TVhM)}J=tC?zeR zv$hkQm*&@8Pf(SNi*aUe%^teW6y1ueiCsm@hJ6f>EWD<4Uf!d%gKZ?4Hh=Jb`V^_x za;u<`g67Tz=yYJ%o2YC!G9X zs;DDbCw8si4&@BWDNwKv1d@C$Coi7*q~PSP{N(E7-4>T`$pgeUHUw>;N~cAixGztv z7?9I&9lX8tW$}<)K$0gpT%JrWy`h_nJnda{>0loVN#077Ii33=YlN<*&j0xF4zwh> zws9uFQG2T|4K)Ojh)rLyt1|Dr_y#T8_ai8<*aV~K-Di*h`3sY*DgZl&nEuJ?oBLnY zvd{B11ilOnykQLV#1JZ5z$THg>C*UJAcxm22&HkGZ~HE5lFAxDvTWgARAE4Nt+h%V zfzqVwMeya=<)xHhaoUZ?%Tb8j@YO!2%g19!Pn!V}cq6^iPGSgVFz>AfKn3*nEg6ML zv50aMcbkZnvf}_b&?V+<^X3=lXpHOaWlhq90|%+*PYuz)F_&Hkxd!yG53{v2ItZIC zc`rmcE!4;-rQ}$vQRh+HBo^pNqpdmvMgc>^7(K8X6KEXdVU*t%WI_~=23l;X`iOod~#c2Kl%y#D6vNxTN`ZmmINaI?~)Zvk4LKhe_Ip&Rp zkv&~p-z)8GgdwdCRwd8D#e3bXU-hn@ft_a$=G$yFIAxkd^LC$(3S0iJI-_f?Zzu)D zXewT2tZ3_}GBRju&IleZ?gp#1EvekQPX=Vecp%}o|;?d35g>nF> z5uIk{0lqspJfG%PRz2 zVpYfSrb=}Uh=Pa|qeX(ntfr+1C!D=>B;<4ssEMijB6yHi#Zye(gL+Ll^Ix%0{E z6Y#i2ay$~{Czz9{h)_5)+MEy(6}QS_GQVK95*Y3@230COlBPY0JmCCe^E>ogi+Gs^ zO`z!NSXPA11p@PofkQ>bmW{QR%wi4WmkW_v@kz2$;=J3O44C1 z+dzM&T|Ng!mft!7z1G#4EfG{^9?aa;5r`jk9Y>-_v^hT^7SFUnr9U(z5brLM&n)-H z+LLronS-hE$>W)s>nX0mDIvn-J1ee6vvXM<&Ab&uXLg#Eis5uY<<5_i{8qV4S`m5a z4Flx(Z;7qOPBW>!Jx29AhPZNB*oYQxt+qtQT#h;P?>#Pr+IcpJF6RAA*vUNph6%%` z#vmgdUP@&ggv<+TZQiJDa!Air-7-;V@PI6yISBj%l()Mk6{2RYHuw{|C&il(3wbEc z2z0*ArK+_ZowAH}HhP7=v$kTTCbLTO*-tgvFY2Vcu_!(5`qQR`o`nxT87LT1pxYt0 zJyhTAEp3t;jLhn1zOJH<;k*LNlwE?H`>b_gzF-V)mf9EwA~huY3iaylf-`5@5FwDH zw&ug};AWOzGjO;&%`gVIkK|aFREFt>%VjTHvTG{+{G8G-Jk++?=5;YSjwp=?dV!KM z=W7;H;IPs0#+5@lbzYAs0`4)-1y>I>TKRZ?lP41~q`ZvtlT^-%js`mom&X4+Gha?t zq68y(HDevdo5we}0dZl4dY##mmaO869&)tdI_AOyUumgUrl1K@st_JpL&_7TD%%lm zymVc=vZ|X3;q4PXas0i1hbD+yHjY`sZ7$jm3gsu;6w^|Y7X84{{66B~Itvn)HyYkr z=4<+cn7$#OBvcnyghA?H^o1)-<(1unL=j}`njAvsYGvDIv*|J*YYsL{vD?j){>GxO z+s3fypzYLC*c^|P+267AcOK0YqTIh*bCLU+6}2!6s{`$FC+vGG6=l^QJtr&S|bM}4L1WJh8`LrRL0Y{JWvq!BE^we%gv-J z6pY3vdO2wNoV_139Gg^|QJ8%?txK$cp6PfgNpBG%Y<0OZ>_gBO=QQS-W6!Fu?*njA ze8dEd(07fhOF=V-`@apHyMBZVuiSAD+ebm!%gQ2D4f?5fV3N`BtAWpcl5Y?smn`nL zf{tdU?8S@m6QL9=NPMt=2%5}XhutyxzgJH>+h zfQ9BgZNo|v-tjvdaaX^&G(*y;q@tE|UeorQGo?L9i#(k0=YeWF33TDS*~g6K&m+XY zHetEiD`jK**;(}!YwKk0BrM${*GrRAR)_av7>E>x)A#iLt-rz-2c+``LEG>M7#aL9 z@!D0pVT=b5(*bpI#*6q7OLPF-0+J#0hFwUi$hS92imuln+g4sdIRsFGecSiE3JQi- zIB=;=n9wSYGS4jq1;tnX3@TJaY^ffJQQN-`F4SPFYsYD_!R2$c;)-g$p~|Qr82t&} z)}@bi+?_f>V_l<)g8i~=#oODRdM#b4hj(p*^IPxB;<%&iQ_MbrGdueLu-klV7{@R* z%dF6TO7KB?WTO?0jP^zbo7}yxOX*7>)kSz6akMEWGu$ofY;>J{d&Wa|*;!;kVRiSe z+RTTTA`Jo3>#Z2cQ%E7 zz33bFtu1vjPtAG-vinuG*ds{#q`&E4lW+8zcJ9pjA8x=`&&(cnRr_`o1Lg$nuK}AUo*F;OGYUVAw&NjJ~EHayhJDD5%2T$I=<97BMTz zlxSD%9*^-#PR2-W>XU+~tD0hPUUO-#5LPuk>+mcZg~!%Gy7ri+L0N(}LSH1ag0}VN z6qW76Rm>R7a!>~o;w8B zgu!j$`Hf8h&XU#3Q|V;HNIX7GV;xyGBWAb`^bI!(`z$i-bOmneGD6xyo>r`sN5(;P zsh$nb!52&(^(_GHkRvD#j!1b5dN9nJEL__sH&c}U>Fc=DwjPV3_`Cjpa%Eo`O1o;D zt;rgrnDEnvztsXgV}Cq=!@={bx@)pq(X@8#s%_j-XZen*QS>fk+#zZAbypq)MGuJU zU7sA@NwGmhr+ALiIP0tjqs%+X`kqe>xIjq+r-Pvh{b(Xf%9fy1w-GBO$ll5ef682F z8i}8J^a+x&54qFyP*BV#d|P~>XbOXI5q{DTwPeBJ#;L5jq2^Qlp94muLSeVW(Sbfy zN009Eu5l0xB;4K{jt}b{SkVCi$X$fBpGWB6Abl%#h^S+wT&$rDy=JtTYex#B>U-m4 znimj8H2cL*lwG`M`fFimNcrRj8+si&C+=&LNLKjJ9buH%X{k**K6wyG146D}DNxfz zd7~U??B}#{5*4~OhE>hCk4$CTBNLU6&=z{9;Do^ zfzKFgcVobyz}^Lo->O3!gMB90HD!EOYVH7bJ;Q4hw!k+|say_KkpuEPhx;Lm6Jg!S zV^qq=(yDCbotk)wiyPo_eE@>-KFGh6p$ON7Q!?Pg_YxYh$4ouq`^NWBIz6tR48hZb z0_c~dJ4I-D3P5n^3cF`*t0sd1nfdkPM<`(FP;7(K+KoADYI7sU=iJ41KYZEmVwKhu zJGRGjE4&Ee{1DLLm-7U8{#j?xwzPW0X6OSl#!yd2F8?ugb1ypq!Df704p~5nc9TAt zm@n+XJ|Owt44DWKyY5Y8rER!te|vL}^G%^7>?t(@7T*J$d(Ma76W9Z}4=153AD7vP zpP`cwQOLc4z>0-e6zbnv zIwc4(w?PUh_tb9a_*Gc|gr=_2UgYbPc8}=-a z7yl#EY|M2doPNbwdX1Yf@Wo_Vn`3E4GvRX+{}$9+?yn4Yej>I`T34jxx^JFZi;}3J zd!2Vf&%PZ8)SHWaQZBF&XUeeZgN^p1nN#NTw(K}=^Madt6~${R9PkIB@$#X=Mg_yX zU?kfouFHtc(cG*Mn>sJu3LvL17e!WgW&u*Z|9|L!5L3+ z!L!Y>DP^>Erzfl;d(LHf#Zl?2j9nsaqKOY62oFMWt`3~YSLY_IZ}o={(WOAgBfN#p zWjX6>1v|-;G6iyPLj!twIAgt_-3jmf4wX;n9WeYbw**5W)1{atAVK|U9oRG>uIpq= z6l{}-&`7T3j5ng>EdfWEusI!ZnIW64<;mU@to}tEeix{e6FETQ*>q*?=(Uc!`u{?; zc-Ecb_UtIO2}K~K!+ zYz6sM_FYyM~+G-wug$R9#QA~p08^Im9DX`*Cc_JHZ-2| zw@ZbK3>N!5&=c(gF&Hsk|5DD*Lr-C3{dhz>sR$+eBqZODQg%#TvS-BH?{f93<)_OT z1l!9NsbvtT8$R8#p$cX&Y$jdOsI@gf1?G20KAzj&4d_r(gf8sRtJc)UH^ymcVd{?I}m;?By!bD#TKdj$O4 zp^(!&O78-BOcJd?LEAJp&drgaKxlDfNz2DoyUh^V&H~8qEN%*7{;l)gPNdJZ)zVdX z0g4qYa08GLSCQKXoce*S1?xPw7XMOWLwQ$LvuB96#FVyzG|Y)RThC<6)TO|u`RqPb zmB39sLB^>tK7thOyPr@RG-e$|3e+O;4q!YuApHkFNKaUL9~US|?al<9pfNtWL)!x}Ay0&N!GCibm- zo@q}GxNucduY0q8j>Fc0Vjxr>y?%QeESb+9O8 za|U(-mAtmd;r4k`i1ei?UqX_q!+MxHqTWc`o?WyRA4=hdqoy8;$4WI1X-J5}zMSh9 zco8q_jmWNMuI%Nm_v(2&3PayRj*n)X6pdhCKwp#}bQlX=APRwyAHfxc4BT!eG9qLr zNz~y9RN>?smD3L4aNK*X2=J!G>Bzk*X*-xHs)-X7ZO+lgce}7Xvolv2RzwYn`<;K9 z-nwZuxh%T0izK4==fE=s(rsxYM~y7cN>i2Tfpb4fMI^euyqEgJD>(eIaIT*G2*oudfh_s&rDGZW z*ascRkMF`I%>sC4!yIh6$5{E>gO(yoE*}^+qIiHKz5teJQ-N5~ILc}uWVB=raxLEY`HDX1tO3SbFM3b(tgM&t_z$o!Su*!P36 z(>io`G#QopP1HrFQOJ1QqFE!iwbEeu3ew$@s!z(`D~v*`XJ&-XvVAqSiAE4+-zjd) z;H=$+rYH04y|uk-wLd)(<|!O0!{!DGk@!VT77;nO9mh*AxSrFuV_3rOwi6-${9v@E zIVHqvJ>SHTMTW<5V?hft2JsDsN4hKZhO-RaeM#Z%a~8OYtL@FR%ekV=p2HrYi2*cU zpJJC}3Z8#)`iEcV_0lK+;$#a6zk!?uiPHFe@|aSiYxjh|@i_VPNuHR4$wMh2L89M#6ibIR8(k-SMuxi;h*RW#O)CN{qr@fudoyu> zs_=e5Do0d-4B=v~j?s&)th8kD4V;Bcknx;&Df&Ki9pnUCE>U%O=fdB3@+4U#D2QUt z0#*Rwl3$(vpN4JIR!~cFoKLeM(fGk~1{u(*!Qq)O$f<@2fk;Q3&!NPSl%M|kRA?M@ z%ajIarW;%*sWP@^-&2nFpYYk2d4~z!Ltz4K45*IIdeoSz5(-#A zKsfzoYC>OSzshIBa_}h11U>KII9#nTko*X8b41f3|5^m)nfFH^|AIg+$(sGaKw^In zdJr}v!`C(PQ)|r%!&mI_1aG+RD?#9eTgwksIpl+oEH^f5EgzuG@#HmNk%rnfB`4k$L09H##B2Q${?wu>#pc|LP=}Ltdaf{k|HE(oLZv z=89UTU#aOChYbAFI}+Os;7u6o|1rXP--Vwf5UbN-M6aW)E}CR8KU$_DfiFA|R1%~o z=7!KhQkj|W8^ z=ISeQs;ejHZ8R=dhYD!`win?kuX0dm10=a4KM-Xs#AaNA!VUdd|#~ zt^Td$&(Q?F1-|)y9TL1^BR#APE@f{*6smM&R!!`9FCATWJwT+l|qIJ#0;~O%@J{CuW>p3|psLatV z!BrwWLF>?wE_l-YEoEOi`T3bm3yOfiHyxgm$S&wSm`Bj^mP^-FQFDsnfqCAG&&qO+ zq7*{Lk!=>=S^Lx2vYfHxuWA7hd*wDpKT=r;B6>mZe!nGSY~|VylCf~hmF|ps#GzK> zzf2{Uxh5RfLfG>z8#E;wMY>e4dHn|(Zk9CIZ2$2V)g{xf)i1lz_WLQpBXvTG&2VJp z0OszgHnx8fPhMNdR3)lS2)e-69)ho4weDWjL7vAhUbNysNsb$2_0>3(9F!K2jwYav z^`<-PrRod^g(FM!LP{SV9v}I-3aDdy?jCU$qc@E_Df8ze@B8|MIN!9j2U73T)k0sr zRnzNCVd@FLl?Wg?*Dwa~SRa!2bD1;KxXg@MJXdQW6H|a1@z_+^t`Ir?@Nh_$9$l>M zPvL)hACg{!GASHJ*Yc+8aQwy?qYzn^&--L|^xVrv->cER^2q?8rp&j^$LShLepAnB zb{IGgV807S`!y(5b+`(pd04^I_1!iej8YLu=7GLexdlR_9F8LEloj(8lMKwfU_sK9 z-6Y3SWQz)ht8gBm{7(yBd)z9K8-HfDEYccmoqu+BMZRy`ic6*GX((6|OYpH(o%UEM zm=7eP{n5Gg++{YPh4qZwQYoJE#0x(qRPP2PmBK%qj-igWJ-R=7mlal0C(trFlY`~f zPAmIqXJ0^PG7R-=3$5_cTr>fd=XQ&|*|ILg>V0Gp+#>+rr+T9#Fj_n< z4gggN&wW>EplEXU+nNbLSLY|AYf5-gXOBfyy1wO)}RN;d}Y8OqfzR-tJLo0$KpF%z8 zg&%%&>|+QWBo_`UJS51M%x%OjhVWjm%~mh^G&)4)*Xq>hpb{wmT+#KM-#5060(_IG zv0gy$t!%aHnWfSuwfBU-Qu4Ngj~)f**f)>wNt`UsY2?8^-fAbRTV5Oy(+A=FF;wM|q* z1!DkeYm_}S?8rB&LDUO!=1h7(a94qXf+MCdYW+`c%_a5c$c%}HRqAK4sYpOoggegD z=m;o4>>{4Z#DA6!enaiECOaFLl%=dVgr{&lMyP!CJlCTz2l1qRSeK^>R~Cfxui#1M z{^CCKzT~Y$^e)Rt;A`2om1gSV|R0V^^@J@+ZM2L5Qm|K-zm zw&u$|F%14@ReiC;3FDc&H|)NesJWv8OA+y`#WSmFgH}s_K zAk6s!ymY|!wvB-He-p>zV3dJiYE8bo8t=Ee`_^456?@i`GWIjVF#?f9&yK!|6! zPnH*+2u>4pL8%Jp%QeU4(m8Ns0hFszS|ZbY;`nY7g!pfLIJN`Bdt)rR6NoI5?(Uo? zoMhTZO}vVPe(>_Ra|!UhFdsZ!O*r~UO>cbZ9UY0W)u7JKm==y;DhA8B zfSK~AW&J>a3kvXueWmP}KbwN^<0rG8s(zM{#mm_c09m4iM}o@v#I4iQWCb~m}omH2Gw(seM| zIE_}cl--Q=R-qjJdumJnaMy-Zb7ofPu|3$zf8%;UsG}!rG5~R;DG7^kIqCl(1LD^o zWHBepi=Io+sD0I>k403DF())jm@)0TjsSCMN;l@ayu{L3@sz$|C)9%<>ELqS%eIk( zgjw2}1Nv{t<_uYvG}^O4=a>nlSoo&$c~+AAhIa8>J7$;Qn3o=l+?V{2}E zqY*Ka42GnM48v-CYTi#Or$S1FZG0t)TF}xZe;=0s0b0B6Gk?SCg%4|8uJr@vADb<0 zG}-$7K85H23G>A4IEOC@M}%^cE`rl2KkhQb{;QCI3Qi5r;-u1+l{5tnw^>ZrBvt{p zA`XV9N)I*he`%4}i4WIY76k=t`k6hP6Lf9rz*3)~`Wv%{c?5F`F0^ucj@}yc_SOv0 zBIk^YW`Y3w_S%badL%4`Fl=-f1VQt#(|(n{g3S6#>>!iV!4drSNvu}hbT#IkEsxAD zuQSEv=i_xI!g81iVA4(yP-3I<5rY!Eb?6vSfOYObJM-_z7B02pTU<-fmtNtjNm@^q;T> zQfg8)CqPyXxQb-#_Riq&0vyD$u_pVV5N?vmR0W6kjl>_Mp`G*&E?YLCiv47zIk z=}uO^sl(rE2AF3*r!w*E`G>$p$+EWlqCviF5I@zQ@_8k{g-Flr;o#PvnP@e%88e$o zh)hdXKaE*|opp&hlEeBK;kZ^kuz65`KG=wXZvJ)wFiy=ncSCYn!6|*(ZknKe4bb-% zDz7syh>*dot^^5fNE~OW{<~9- zoXbgfK-pUz0t)M4Za5u5^do9vf~Tpsvd)bDsG!+)*y~2}{ws~?dTKb!$hmx2h7=Lk zk$9dDfH^V=ZEkRhC3b$5Aw%ghNmlRmJAWal_aLq_D)tvzVJkwI*q01=-cJ7Ey}GVO z@Mv8)tfKtW5y-6!0PY_6l+4>gXV?S%;H?k@^yMY&gmhPf0ZqItTRk`MC56#RLZ`FQ znwOou;kKDL-=0!sJQ2rW+80BX0$)vkW19Jm#S@{cm0;ZN#zrM6ZJu=x)9kFQVc(Rf z&c{RAgL8jl6{7JJ%YQ1Ud z8_DL~@V}@|#tvi5iX>2YV+aR`vtS~@C?P3ygYzj|PE_9end-o$NtZ)kpIhC6_8SFy zN*CSX_GUm+=G>-C`u^2eD4VjIs#*0F)V3XzL+Z_ zv5%+5s*VJ(;~D^>{5J8#lB@-c92qQ!#R3o^LM>2Ea^`c}jb6Q=%0!6Q2K=#95asd8 z;VKl-E?n&QAP^16Bbl_Ei@Io{n=XBF-e2PTjHk5eDQVt>ovkZJCFC<3Z`n zy{p8fCqOpk?u#JSC^tGO6m6;bNoCLcXQ&>@|Eq)pSw-@XwXhj?2C(dc}@=6|_#GAa2=>tq2Zi@Dy5cnl{O2Nd8o@^vqJHIYtTA!FbC64_%TH2A8v zZElQJ8Xw?LCx5W7Kt(^<^#*!H)q+UXF#OUr7}2rr`?(0S2_2a713+Jn=w+wEka+^clM6%k zr4k(VqV?NDTIWUlBvNJaNnY*-y%4PFg4|F_3-C$;>GlP2kYT)2S}v_F$7iv?Ud8+t zRZx9u)|iPe7O}&%N}D90wl#k~uvf%|LO{?R784v*^^dq;V_af!5i8!;)Ao)&Ew;2y z8F7m}Z(zf?DR)dTMFdOmZy`9%5d}N$&6tVN!)mlnF5&-dHh2HCrw=r-l@?gy^u3Iw z;X8A^j(7NBEFylCnGiq;ALxv*B0duW1jT~K%fn1P;eNVofI4{8IQ2_+(T1yKNDc(1 zvTRbp@#D4x5G;xsyAIa?8bGP`{2=EPzTkvf7GYzSDP6ZC!io=_j?bnaNL1&R*mexF zp$9A7V0I}sStm%~B#lS+qhh=FoIrV!rZ(rp`^wx^RuUln2f?-*qvtGQ2LCn27&RfN z|2~Jk>B`Is0zlrEwdc`Z74{r$^ZYs;6*2S&i9Fw3faUdK*xaIJGqyULcsL ztBV0SK;!iS+dkYaKuP<){!QSuIo8_l(cji-^yBzbL?o~XlUCUa3s7&k^N&>N5*Es$ z(jO}e_8@ub{b?~hKp3H~oFMF2R{o?nBL};h0tp`XRu^b89#y@^xD-5#ehOu=R%weP zhT&RJE99>eT|wgyKpteAAgvHSBm9biq`CKC)k9D%5(w7ey308c7$Q-@3;-QvGtscP z6WtHND5UWeV%4>Dq4{No{0jte*=c#T$0NWp1H+*m*1^9VPTTf8f2H9ST@(vmX9()0 zX>eNa4?ar2{z2+aib{~ml?1e3nX2SOk7_(A!c&fuWpYsfpr&9mCV^Z-GY0C1?l44; zdk~=5y~H5h6Op4hFKAFow?Y5V{CE&?lxmdX+`Y^)wGa^Nd`!AoL|fbakdfx(*0qBW zgWogVnR~(fPQ7^`d5ifZPr~1XhO@)S9LnbCCL0*@e{|J}YL{S3 zx2=PA{N+Ex!1d?&7c8#|Fw`O^KfEx#Q=0xRGtRXAd2@|=~WYEUVZ$~aVhe`ZhZ@~rlx?L1scS?!v zpOP~&nt!0Z4a2edR$sn_Lx$IwOiWxaA0>J9JgWDQ!{MC_k zS$vQCA`>ToBlpj!#6SILV$>eF6l-}&88|uBqQ2&DgE{L-m&IE5huyFduEo6oP+hMj zmIbkm%ssK{&0skAbJXf$*NF2o+@VadU>!%vmZ1bX?@n;Pn?Ez%U+vEBEK;O`*k*pE zDHv{fJ6~o|upC>1S;4;4KlRhHTo%oM>fOQ0`dd`d7#l{j%YB@eR?OV#$4;qMrRQc8 z)oQ0N<^khGUoD&)91u(}Y$29Cv&L&*Ch2TdXUKZq5-U`98I|Zi&@@SWXqY-AgSBpv zt%Nk1qtN5j+u?U}0hJ@p&sK((ZG#@7#(P1|dz-%5k+pSVSGuHKW9wHe^hjYFyzWxC zqZ#K;?0v5gBI6=98~o*Gt9lVtr5B1QaQF!`ymQn)mkhG25Y~> z`sp?_3CALOEpYaZ2EQBA+W-l*_$&(5Qjr~6nJ+5%C01i@LK0U^GY8uMSYzWuluhB|du=DH#r&?vr1UiUZD z>4q=<#0CXua3*^yr^b~N1F4sbP}+ft>s0<^ti4=xkj5SOZ;KxV=I7t-Fz;G5I*3zR zq7K|oMUnG3tUtDTm%#A~mft%3jf!qv{QEfx`t)1b44epC)h`8oWl_rk`U z*Gvla1(_CPgZGT~vz}DBG)s~oy9uE@%5MFK=*2vO0UgM2y=WH*&Q+!8Z2>hwcDiLh zlI7lh` zg$M6N9PVPK4F|PxoBbfYWG>Rl3za`3@AcE%0a|4zTxypl zDX=+;AdMsbUW2m10vUXk_atw%7aeU^+OfbRUCYq*JAb)@?#h#ynRh{-`*2yh_?`P4 z6-@Pg*KNkCmlWXXEiX_=M=45CVxvft(sB~UA}nR_Q-{RF zZjWS)6y(#oi-ii@J)#Rk@4%5P7>p>?+$*=#Xh@>z7X90U7?Z|nU+g^)QrDgMBff2Y z!GjS?$tGEW9xq@O8B~H3s7N9Vh4K2Cmk;^KEb~Wwvb?DnP`R=7F~F zcrV9_gKM6IX63!st^XL+P~n*=BlB%5RJ#G3AwXe3f$@aQNKtGe;;~B7|7Yh@!pk}- ztaswu7?nMFzCC?eDPIgtXroNQ?&vK5rgn#`>4o!Xu>|ho2cOzbV^i~Qe&-A0IFciq z*E77w=Al!Qlsm{ka6J&j2>WG$s^P1d<_u86+wLT;WQV}oOFrT&NX~yQmGm6EzT-Ker(_FW zPRZvqrI7d+AcJ)4Kvp{<0H#zx2TGU5e1OO= zSN-R2FahFNXHs3~I~fRzUqpX1fpb9Lk09ysB)y?R)S9>o_l?mAC>jFvp-s0%KJ-w^ z^-C8yOf&G%P`uWq`n5RdbKA_zHv5KH>XZ=Y;wZ2vE9nPoTKTGhrZ|N4+wg7=+0KBqW75(6F(4WD z0*y+}!=6Zf*AcrUOF>#7A-O5DdxJ5}0)s;40g_iak4!L`vSSK*c5P`tP*ROUGozw;TM zb*Y~Ga#=oZzVc6~JQwY>=po1Wn}>Ttd4%JqS4c0NY#xKEQZJW8WYjqgKZom$T_X_C zZ51)7fQGvwv|Q(k=)9Z%7z!rFoTv3%eQVxWzN~c(kUF#seDNM*d~gE$V19N=bDaGd zJ>5LA2AW+_en1FAo0D%h1(zj|-m%!f?mar0gF-0;VcTEZ)t8;fQLz20 z-RzC8o|(c^XfIF9%#8KpM;{Daw#`lYI=s6Hjj9pea+)go z>4hxwYSkbezA4En&&LN$@PjMjpJqUg2N0biJQ_l00_?oPKC$0e2mOIupA|mwpbSoi z*&IP%&X0${y2Nv+<3nNPnwvDAb|D=`T0T8P9*x7M6z)d_g$iq}_RFt9>meJ@oYxIl z7YJD6K=Zp8HSnRu8HfG)7-@7b-BJh&`Dz|;R-^lW#y-0e;gv`JOQR|eJIMm&rQ(d! z7*JmfaZ`66P7VFbr79gX6mmJCgyB1d@>}-^W$;8T90CU+xGg|s5&y&PnYYF=rxE)I zmFY_9KQADTc7)hBLT3zAA3!|zkApZVbFTM;{F)^KH!`!vbJ6}jL{x{Zl_f<$vEIW( zR5SEKR$oXRQSCVHz|=fT2568!)2oPhbe=u{2Bk02(V?HTMWR%KVZ;q5hq>+v_@9#cB3qp#~dcD$Rf85t(% ztkl=$+T>c^u$DSh`wPpE_z!EIUek;AgU^B(nwmvbL=%hZBir#*1dTGml3wMDWwaO3 zZok?2bc(EmT3a=Nsa`1n_LveT7eg;*B%u!X^k4VCMu~BU+AOMQQia*AFY%%!0`A}7 zBlrp9ShX67l~v@H31>%ML2E)UL+@nrDNA^cFWC>K_o9PKWSUh2{x==N)c+N;jy5K! z6fWnwN0q_5jRBf|k*?UcG7l_qm>dAEFC4+sio8}el&1?da#8t_EZc7b+^jR#x^I)O z0^8}DUs#089X@q1xzwtfO5&AEWRR@UTzIiDX3Wq@OvdW79mscl4?;boEp|qy!3}+Ff7FeaZaky43fye0 zk&6m*I@{QPT#|gubQr~MEI1h>SiV#HWTVg+(uhsi4)5%xq&bT}pe>E*kKG0ThW?qZ+gGl3>l@lo}F7!#Y*EU z{39>3#gAU;7T`{10cZ~xt34s zs%Qwnbfs5Usi7mX37iTYgOgMYQy?ae^aW-M|V;>8Fn<>ie(=- zF6Zyo?a-}fQO-)u(Fl(@My=sikfs{W&!@(hY0LgW7h#!a9Oomx3(4EnRrRW?qdiUJ zZRdS`7e7oop8H!uTnsd(O588({Cw53`W-PVNxdMp4fsIM1YPlZiVtk*F|Egv4Z12bd8ykgULiHuD2rXLY7Osy)$w^oqK){K(U!fOHZZfD^5 zce4t2Lg&wM+b^z=ALKX-igkb`-~wqlrmT*fO&9zClkE;a54h_q4gh;Z_L%anyA<+@ z>8IyxMCj%J*E7Z{t%;_x=H}H33|J0PqYHBRzx-I?Bd2m`SsR5RjTZ$p3$2sza%_oW z^w#ra80-AwH<54kKgRD3c=D}3mV!)LiZL~uH5Den2P4*0UdXko#yxy21F6b(k==h!0NGjJ?2E(0DxKqBw2XnfGlSpPG}-(bV`r{q-|OkHebUH82}QqU{9t=b7W2$7F^^8Q5dUv9t=^AkuHzY>o9c= zHQ-xsnF?EO)$MTO?`4qXe(GRv%B^dPt4OE!M1iVN%Y*@oZ;%iM0ed?EcPQ{j8PWCX zTp{&sa%f1=RL>3o8QHBo0i2*jd;VkXDJC37$yPyumXls!A@ zM8(0M#vM|#EIMR#&)~r_Hke_2_4Ub$p(3YLFE@p zEi9*a88halN*nrk(tzGVgQYJSUro4c4Do8I=DYD^R5b2v7S#7kGC&dj|L?y~f{x`gK)%UhJ~L1^#;+R+(P z{}AOBi^!jMw4~vzA<;)Gnfns+#%1 zaCOQ1B9_arL>qXVJ2053|Hle1NcZ_{=Ks1lwRl*?$}%MW(J>re^Hr!pLs5yIWJ8X)KK6gn1vya7=)F%ym)u{m|3EL}8LVU)vjO%rAzc z9a^tt{DW`qDHu#c68p8;e(xgb6ZN-|TI_u1DmOvJiZ1ihC@)pg85M_00=nVE`pBkRiYt$w>VRE;K7O028B9XmP0%>T2{D2G z&Yg?mH$aM~mqU@uY0VQHplQyT0djD|!aw%fkI6c)B?deQ%hDbJSV|LF@j~x z!UK-Yvp}_Sdx7}&v9Up23mwK4nRUhkmbz8qiT}}>m(2xqfSw@Wi)3khQ_XP7Fkg;` ze(=J^qU}UFx6(>WxKYwmGBSD#YBG`zty=rS-KIP0W6Q(vm zOc*v?zbbpHSV5iPA9nGSWFc9e{K6io0QJ*Kq~z*8DFd{~JG?rh!>MME`{|xF2WI!_2Av zBQNzZg4!)nwme$Xmw)^joW=lSy`_Bi5SD?{L2k1CMI6hQ9QNW-`d@u|)V5A;QG0D; zG06;5PSF%HQ-%uQ<>4_Nwx3NRmL*PryaYytzX=3qxc}^$zPWDnuTxxol3|PZm4PH` z`Z;3TQxt^8v}YgqmaMo1@E=d2px9FAO;H}RtLPn;2JbbI#5!>?FqHeLSW!-yBepjo zfh7T0m6beW`cR)mIAxGBkiGoP@?~?X!WFkcE5qEFjQRB*{`b1LC$J{QDI<>5V37|x zrZvOB8b~@{k0}`ftUmqW7zbBFWByNQuxHW*v;DhK^tzR87IOvxr%miNk|fW)q`3C@ zTIKixov{Y-L}4g0d%X<=)mVfi*Wn3%;Qinusbn=H>ddYqwnx4{<6NwYC zjS;=y0MXE{n*XA@TFlszGJoQ&<9AqmVTT>;Qw$rjNp%)~w9;2$&s+V~*|^`IQP!!o z+IEZ0z(eO*%>0hRj9d|Y+YHZ{YH-senr;O+2?j znG$RvnN@XIz+-61r0BZkq2>8@Ny0E+zPw>~3Hlr% z8lwOuiBtirKf6NgYUfz!#^e9{rbUOs0NTrgB1`O@_YH=YtiCj`2K#vmBGM7b1qt#X z-BWaJpNNH%G4mLeAS>1OuF2y__so2XpxM~)8th-1Av8agW=MrJcWH4=8T!S3H0DOE zwKzFbq`d=_Wy`WCTDEQ5w(Tz4wq4a_+qThV+tppRZFix&tY5YF+2`zg?tSmRasF5% zXT}U=WJF|+SYxd@)9)TzHKBwv`H-jSLTK|g64ylWAou6*%L+qfLS2{#dF7OTNex7r zfYmNPvW~C*jFx=eepNn(TVmR`k3v1Q`Ig^F P(4p9&Wo_Z^`MpQvu6p{6+_OnFx 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%0DbD>*j( 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 z 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 z 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 K{?_#Z3;zd%h^=D) literal 0 HcmV?d00001 diff --git a/External/OpenCL/tests/AMDAPP_SDK/Template/CMakeLists.txt b/External/OpenCL/tests/AMDAPP_SDK/Template/CMakeLists.txt new file mode 100644 index 0000000000..369465532a --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/Template/CMakeLists.txt @@ -0,0 +1,25 @@ +# Test parameters +set(TestName Template) +set(TestSources Template.cpp) +set(TestData Template_Kernels.cl) +set(OpenCL_CPPFLAGS "") +set(OpenCL_LDFLAGS "") +set(OpenCL_LIBS "") + +# Target to build this specific test. +add_custom_target(opencl-tests-simple-${TestName}) + +# Add dependencies for target to build all the tests in opencl-tests-simple. +add_dependencies(opencl-tests-simple opencl-tests-simple-${TestName}) +create_local_test(${TestName} "${TestSources}" "${TestData}" "${OpenCL_CPPFLAGS}" "${OpenCL_LDFLAGS}" "${OpenCL_LIBS}") + +# Populate & propogate list of tests to run them all using check-opencl-simple. +list(APPEND OPENCL_SIMPLE_TESTS_LIST "${CMAKE_CURRENT_BINARY_DIR}/${TestName}.test") +set(OPENCL_SIMPLE_TESTS_LIST ${OPENCL_SIMPLE_TESTS_LIST} PARENT_SCOPE) + +# Target to run this specific test. +add_custom_target(check-opencl-simple-${TestName} + COMMAND ${TEST_SUITE_LIT} ${TEST_SUITE_LIT_FLAGS} ${TestName}.test + WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} + DEPENDS opencl-tests-simple-${TestName} + USES_TERMINAL) diff --git a/External/OpenCL/tests/AMDAPP_SDK/Template/Template.cpp b/External/OpenCL/tests/AMDAPP_SDK/Template/Template.cpp new file mode 100644 index 0000000000..ccd3b139bc --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/Template/Template.cpp @@ -0,0 +1,680 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + + +#include "Template.hpp" + +/* + * \brief Host Initialization + * Allocate and initialize memory + * on the host. Print input array. + */ +int +initializeHost(void) +{ + width = 256; + input = NULL; + output = NULL; + multiplier = 2; + + ///////////////////////////////////////////////////////////////// + // Allocate and initialize memory used by host + ///////////////////////////////////////////////////////////////// + cl_uint sizeInBytes = width * sizeof(cl_uint); + input = (cl_uint *) malloc(sizeInBytes); + if(!input) + { + std::cout << "Error: Failed to allocate input memory on host\n"; + return SDK_FAILURE; + } + + output = (cl_uint *) malloc(sizeInBytes); + if(!output) + { + std::cout << "Error: Failed to allocate input memory on host\n"; + return SDK_FAILURE; + } + + for(cl_uint i = 0; i < width; i++) + input[i] = i; + + // print input array + print1DArray(std::string("Input").c_str(), input, width); + return SDK_SUCCESS; +} + +/* + * Converts the contents of a file into a string + */ +std::string +convertToString(const char *filename) +{ + size_t size; + char* str; + std::string s; + + std::fstream f(filename, (std::fstream::in | std::fstream::binary)); + + if(f.is_open()) + { + size_t fileSize; + f.seekg(0, std::fstream::end); + size = fileSize = (size_t)f.tellg(); + f.seekg(0, std::fstream::beg); + + str = new char[size+1]; + if(!str) + { + f.close(); + std::cout << "Memory allocation failed"; + return NULL; + } + + f.read(str, fileSize); + f.close(); + str[size] = '\0'; + + s = str; + delete[] str; + return s; + } + else + { + std::cout << "\nFile containg the kernel code(\".cl\") not found. Please copy the required file in the folder containg the executable.\n"; + exit(1); + } + return NULL; +} + +/* + * \brief OpenCL related initialization + * Create Context, Device list, Command Queue + * Create OpenCL memory buffer objects + * Load CL file, compile, link CL source + * Build program and kernel objects + */ +int +initializeCL(void) +{ + cl_int status = 0; + size_t deviceListSize; + + //////////////////////////////////////////////////////////////////// + // STEP 1 Getting Platform. + //////////////////////////////////////////////////////////////////// + + /* + * Have a look at the available platforms and pick either + * the AMD one if available or a reasonable default. + */ + + cl_uint numPlatforms; + cl_platform_id platform = NULL; + status = clGetPlatformIDs(0, NULL, &numPlatforms); + if(status != CL_SUCCESS) + { + std::cout << "Error: Getting Platforms. (clGetPlatformsIDs)\n"; + return SDK_FAILURE; + } + + if(numPlatforms > 0) + { + cl_platform_id* platforms = new cl_platform_id[numPlatforms]; + status = clGetPlatformIDs(numPlatforms, platforms, NULL); + if(status != CL_SUCCESS) + { + std::cout << "Error: Getting Platform Ids. (clGetPlatformsIDs)\n"; + return SDK_FAILURE; + } + for(unsigned int i=0; i < numPlatforms; ++i) + { + char pbuff[100]; + status = clGetPlatformInfo( + platforms[i], + CL_PLATFORM_VENDOR, + sizeof(pbuff), + pbuff, + NULL); + if(status != CL_SUCCESS) + { + std::cout << "Error: Getting Platform Info.(clGetPlatformInfo)\n"; + return SDK_FAILURE; + } + platform = platforms[i]; + if(!strcmp(pbuff, "Advanced Micro Devices, Inc.")) + { + break; + } + } + delete platforms; + } + + if(NULL == platform) + { + std::cout << "NULL platform found so Exiting Application." << std::endl; + return SDK_FAILURE; + } + + + //////////////////////////////////////////////////////////////////// + // STEP 2 Creating context using the platform selected + // Context created from type includes all available + // devices of the specified type from the selected platform + //////////////////////////////////////////////////////////////////// + + + /* + * If we could find our platform, use it. Otherwise use just available platform. + */ + cl_context_properties cps[3] = { CL_CONTEXT_PLATFORM, (cl_context_properties)platform, 0 }; + + context = clCreateContextFromType(cps, + CL_DEVICE_TYPE_GPU, + NULL, + NULL, + &status); + if(status != CL_SUCCESS) + { + std::cout << "Error: Creating Context. (clCreateContextFromType)\n"; + return SDK_FAILURE; + } + + + //////////////////////////////////////////////////////////////////// + // STEP 3 + // 3.1 Query context for the device list size, + // 3.2 Allocate that much memory using malloc or new + // 3.3 Again query context info to get the array of device + // available in the created context + //////////////////////////////////////////////////////////////////// + + // First, get the size of device list data + status = clGetContextInfo(context, + CL_CONTEXT_DEVICES, + 0, + NULL, + &deviceListSize); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Getting Context Info \ + (device list size, clGetContextInfo)\n"; + return SDK_FAILURE; + } + + devices = (cl_device_id *)malloc(deviceListSize); + if(devices == 0) + { + std::cout << "Error: No devices found.\n"; + return SDK_FAILURE; + } + + // Now, get the device list data + status = clGetContextInfo( + context, + CL_CONTEXT_DEVICES, + deviceListSize, + devices, + NULL); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Getting Context Info \ + (device list, clGetContextInfo)\n"; + return SDK_FAILURE; + } + + //////////////////////////////////////////////////////////////////// + // STEP 4 Creating command queue for a single device + // Each device in the context can have a + // dedicated commandqueue object for itself + //////////////////////////////////////////////////////////////////// + + commandQueue = clCreateCommandQueue( + context, + devices[0], + 0, + &status); + if(status != CL_SUCCESS) + { + std::cout << "Creating Command Queue. (clCreateCommandQueue)\n"; + return SDK_FAILURE; + } + + ///////////////////////////////////////////////////////////////// + // STEP 5 Creating cl_buffer objects from host buffer + // These buffer objects can be passed to the kernel + // as kernel arguments + ///////////////////////////////////////////////////////////////// + inputBuffer = clCreateBuffer( + context, + CL_MEM_READ_WRITE | CL_MEM_USE_HOST_PTR, + sizeof(cl_uint) * width, + input, + &status); + if(status != CL_SUCCESS) + { + std::cout << "Error: clCreateBuffer (inputBuffer)\n"; + return SDK_FAILURE; + } + + outputBuffer = clCreateBuffer( + context, + CL_MEM_READ_WRITE | CL_MEM_USE_HOST_PTR, + sizeof(cl_uint) * width, + output, + &status); + if(status != CL_SUCCESS) + { + std::cout << "Error: clCreateBuffer (outputBuffer)\n"; + return SDK_FAILURE; + } + + + ///////////////////////////////////////////////////////////////// + // STEP 6. Building Kernel + // 6.1 Load CL file, using basic file i/o + // 6.2 Build CL program object + // 6.3 Create CL kernel object + ///////////////////////////////////////////////////////////////// + const char * filename = "Template_Kernels.cl"; + std::string sourceStr = convertToString(filename); + const char * source = sourceStr.c_str(); + size_t sourceSize[] = { strlen(source) }; + + program = clCreateProgramWithSource( + context, + 1, + &source, + sourceSize, + &status); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Loading Binary into cl_program \ + (clCreateProgramWithBinary)\n"; + return SDK_FAILURE; + } + + // create a cl program executable for all the devices specified + status = clBuildProgram(program, 1, devices, NULL, NULL, NULL); + if(status != CL_SUCCESS) + { + std::cout << "Error: Building Program (clBuildProgram)\n"; + return SDK_FAILURE; + } + + // get a kernel object handle for a kernel with the given name + kernel = clCreateKernel(program, "templateKernel", &status); + if(status != CL_SUCCESS) + { + std::cout << "Error: Creating Kernel from program. (clCreateKernel)\n"; + return SDK_FAILURE; + } + + return SDK_SUCCESS; +} + + +/* + * \brief Run OpenCL program + * + * Bind host variables to kernel arguments + * Run the CL kernel + */ +int +runCLKernels(void) +{ + cl_int status; + cl_uint maxDims; + cl_event events[2]; + size_t globalThreads[1]; + size_t localThreads[1]; + size_t maxWorkGroupSize; + size_t maxWorkItemSizes[3]; + + //////////////////////////////////////////////////////////////////// + // STEP 7 Analyzing proper workgroup size for the kernel + // by querying device information + // 7.1 Device Info CL_DEVICE_MAX_WORK_GROUP_SIZE + // 7.2 Device Info CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS + // 7.3 Device Info CL_DEVICE_MAX_WORK_ITEM_SIZES + //////////////////////////////////////////////////////////////////// + + + /** + * Query device capabilities. Maximum + * work item dimensions and the maximmum + * work item sizes + */ + status = clGetDeviceInfo( + devices[0], + CL_DEVICE_MAX_WORK_GROUP_SIZE, + sizeof(size_t), + (void*)&maxWorkGroupSize, + NULL); + if(status != CL_SUCCESS) + { + std::cout << "Error: Getting Device Info. (clGetDeviceInfo)\n"; + return SDK_FAILURE; + } + + status = clGetDeviceInfo( + devices[0], + CL_DEVICE_MAX_WORK_ITEM_DIMENSIONS, + sizeof(cl_uint), + (void*)&maxDims, + NULL); + if(status != CL_SUCCESS) + { + std::cout << "Error: Getting Device Info. (clGetDeviceInfo)\n"; + return SDK_FAILURE; + } + + status = clGetDeviceInfo( + devices[0], + CL_DEVICE_MAX_WORK_ITEM_SIZES, + sizeof(size_t)*maxDims, + (void*)maxWorkItemSizes, + NULL); + if(status != CL_SUCCESS) + { + std::cout << "Error: Getting Device Info. (clGetDeviceInfo)\n"; + return SDK_FAILURE; + } + + globalThreads[0] = width; + localThreads[0] = 1; + + if(localThreads[0] > maxWorkGroupSize || + localThreads[0] > maxWorkItemSizes[0]) + { + std::cout << "Unsupported: Device does not support requested number of work items."; + return SDK_FAILURE; + } + + //////////////////////////////////////////////////////////////////// + // STEP 8 Set appropriate arguments to the kernel + // 8.1 Kernel Arg outputBuffer ( cl_mem object) + // 8.2 Kernel Arg inputBuffer (cl_mem object) + // 8.3 Kernel Arg multiplier (cl_uint) + //////////////////////////////////////////////////////////////////// + + // the output array to the kernel + status = clSetKernelArg( + kernel, + 0, + sizeof(cl_mem), + (void *)&outputBuffer); + if(status != CL_SUCCESS) + { + std::cout << "Error: Setting kernel argument. (output)\n"; + return SDK_FAILURE; + } + + // the input array to the kernel + status = clSetKernelArg( + kernel, + 1, + sizeof(cl_mem), + (void *)&inputBuffer); + if(status != CL_SUCCESS) + { + std::cout << "Error: Setting kernel argument. (input)\n"; + return SDK_FAILURE; + } + + // multiplier + status = clSetKernelArg( + kernel, + 2, + sizeof(cl_uint), + (void *)&multiplier); + if(status != CL_SUCCESS) + { + std::cout << "Error: Setting kernel argument. (multiplier)\n"; + return SDK_FAILURE; + } + + //////////////////////////////////////////////////////////////////// + // STEP 9 Enqueue a kernel run call. + // Wait till the event completes and release the event + //////////////////////////////////////////////////////////////////// + status = clEnqueueNDRangeKernel( + commandQueue, + kernel, + 1, + NULL, + globalThreads, + localThreads, + 0, + NULL, + &events[0]); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Enqueueing kernel onto command queue. \ + (clEnqueueNDRangeKernel)\n"; + return SDK_FAILURE; + } + + + // wait for the kernel call to finish execution + status = clWaitForEvents(1, &events[0]); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Waiting for kernel run to finish. \ + (clWaitForEvents)\n"; + return SDK_FAILURE; + } + + status = clReleaseEvent(events[0]); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Release event object. \ + (clReleaseEvent)\n"; + return SDK_FAILURE; + } + + //////////////////////////////////////////////////////////////////// + // STEP 10 Enqueue readBuffer to read the output back + // Wait for the event and release the event + //////////////////////////////////////////////////////////////////// + status = clEnqueueReadBuffer( + commandQueue, + outputBuffer, + CL_TRUE, + 0, + width * sizeof(cl_uint), + output, + 0, + NULL, + &events[1]); + + if(status != CL_SUCCESS) + { + std::cout << + "Error: clEnqueueReadBuffer failed. \ + (clEnqueueReadBuffer)\n"; + return SDK_FAILURE; + } + + // Wait for the read buffer to finish execution + status = clWaitForEvents(1, &events[1]); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Waiting for read buffer call to finish. \ + (clWaitForEvents)\n"; + return SDK_FAILURE; + } + + status = clReleaseEvent(events[1]); + if(status != CL_SUCCESS) + { + std::cout << + "Error: Release event object. \ + (clReleaseEvent)\n"; + return SDK_FAILURE; + } + return SDK_SUCCESS; +} + + +/* + * \brief Release OpenCL resources (Context, Memory etc.) + */ +int +cleanupCL(void) +{ + cl_int status; + + //////////////////////////////////////////////////////////////////// + // STEP 11 CLean up the opencl resources used + //////////////////////////////////////////////////////////////////// + + status = clReleaseKernel(kernel); + if(status != CL_SUCCESS) + { + std::cout << "Error: In clReleaseKernel \n"; + return SDK_FAILURE; + } + status = clReleaseProgram(program); + if(status != CL_SUCCESS) + { + std::cout << "Error: In clReleaseProgram\n"; + return SDK_FAILURE; + } + status = clReleaseMemObject(inputBuffer); + if(status != CL_SUCCESS) + { + std::cout << "Error: In clReleaseMemObject (inputBuffer)\n"; + return SDK_FAILURE; + } + status = clReleaseMemObject(outputBuffer); + if(status != CL_SUCCESS) + { + std::cout << "Error: In clReleaseMemObject (outputBuffer)\n"; + return SDK_FAILURE; + } + status = clReleaseCommandQueue(commandQueue); + if(status != CL_SUCCESS) + { + std::cout << "Error: In clReleaseCommandQueue\n"; + return SDK_FAILURE; + } + status = clReleaseContext(context); + if(status != CL_SUCCESS) + { + std::cout << "Error: In clReleaseContext\n"; + return SDK_FAILURE; + } + return SDK_SUCCESS; +} + + +/* + * \brief Releases program's resources + */ +void +cleanupHost(void) +{ + if(input != NULL) + { + free(input); + input = NULL; + } + if(output != NULL) + { + free(output); + output = NULL; + } + if(devices != NULL) + { + free(devices); + devices = NULL; + } +} + + +/* + * \brief Print no more than 256 elements of the given array. + * + * Print Array name followed by elements. + */ +void print1DArray( + const std::string arrayName, + const unsigned int * arrayData, + const unsigned int length) +{ + cl_uint i; + cl_uint numElementsToPrint = (256 < length) ? 256 : length; + + std::cout << std::endl; + std::cout << arrayName << ":" << std::endl; + for(i = 0; i < numElementsToPrint; ++i) + { + std::cout << arrayData[i] << " "; + } + std::cout << std::endl; + +} + +void verify() +{ + bool passed = true; + for(unsigned int i = 0; i < width; ++i) + if(input[i] * multiplier != output[i]) + passed = false; + + if(passed == true) + std::cout << "Passed!\n" << std::endl; + else + std::cout << "Failed!\n" << std::endl; +} + +int +main(int argc, char * argv[]) +{ + // Initialize Host application + if(initializeHost() != SDK_SUCCESS) + return SDK_FAILURE; + + // Initialize OpenCL resources + if(initializeCL() != SDK_SUCCESS) + return SDK_FAILURE; + + // Run the CL program + if(runCLKernels() != SDK_SUCCESS) + return SDK_FAILURE; + + // Print output array + print1DArray(std::string("Output"), output, width); + + // Verify output + verify(); + + // Releases OpenCL resources + if(cleanupCL()!= SDK_SUCCESS) + return SDK_FAILURE; + + // Release host resources + cleanupHost(); + + return SDK_SUCCESS; +} diff --git a/External/OpenCL/tests/AMDAPP_SDK/Template/Template.hpp b/External/OpenCL/tests/AMDAPP_SDK/Template/Template.hpp new file mode 100644 index 0000000000..54749d4dcd --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/Template/Template.hpp @@ -0,0 +1,119 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + + +#ifndef TEMPLATE_H_ +#define TEMPLATE_H_ + + + + +#include +#include +#include +#include +#include +#include + + +// GLOBALS +#define SDK_SUCCESS 0 +#define SDK_FAILURE 1 + +/* + * Input data is stored here. + */ +cl_uint *input; + +/* + * Output data is stored here. + */ +cl_uint *output; + +/* + * Multiplier is stored in this variable + */ +cl_uint multiplier; + +/* problem size for 1D algorithm and width of problem size for 2D algorithm */ +cl_uint width; + +/* The memory buffer that is used as input/output for OpenCL kernel */ +cl_mem inputBuffer; +cl_mem outputBuffer; + +cl_context context; +cl_device_id *devices; +cl_command_queue commandQueue; + +cl_program program; + +/* This program uses only one kernel and this serves as a handle to it */ +cl_kernel kernel; + + +// FUNCTION DECLARATIONS + +/* + * OpenCL related initialisations are done here. + * Context, Device list, Command Queue are set up. + * Calls are made to set up OpenCL memory buffers that this program uses + * and to load the programs into memory and get kernel handles. + */ +int initializeCL(void); + +/* + * Convert char* to string + */ +std::string convertToString(const char * filename); + +/* + * This is called once the OpenCL context, memory etc. are set up, + * the program is loaded into memory and the kernel handles are ready. + * + * It sets the values for kernels' arguments and enqueues calls to the kernels + * on to the command queue and waits till the calls have finished execution. + * + * It also gets kernel start and end time if profiling is enabled. + * @return returns SDK_SUCCESS on success and SDK_FAILURE otherwise + */ +int runCLKernels(void); + +/** + * Releases OpenCL resources (Context, Memory etc.) + * @return returns SDK_SUCCESS on success and SDK_FAILURE otherwise + */ +int cleanupCL(void); + +/** + * Releases program's resources + * @return returns SDK_SUCCESS on success and SDK_FAILURE otherwise + */ +void cleanupHost(void); + +/* + * Prints no more than 256 elements of the given array. + * Prints full array if length is less than 256. + * + * Prints Array name followed by elements. + */ +void print1DArray( + const std::string arrayName, + const unsigned int * arrayData, + const unsigned int length); + + +#endif /* #ifndef TEMPLATE_H_ */ diff --git a/External/OpenCL/tests/AMDAPP_SDK/Template/Template.reference_output b/External/OpenCL/tests/AMDAPP_SDK/Template/Template.reference_output new file mode 100644 index 0000000000..9bfabcf9e1 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/Template/Template.reference_output @@ -0,0 +1,8 @@ + +Input: +0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 + +Output: +0 2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58 60 62 64 66 68 70 72 74 76 78 80 82 84 86 88 90 92 94 96 98 100 102 104 106 108 110 112 114 116 118 120 122 124 126 128 130 132 134 136 138 140 142 144 146 148 150 152 154 156 158 160 162 164 166 168 170 172 174 176 178 180 182 184 186 188 190 192 194 196 198 200 202 204 206 208 210 212 214 216 218 220 222 224 226 228 230 232 234 236 238 240 242 244 246 248 250 252 254 256 258 260 262 264 266 268 270 272 274 276 278 280 282 284 286 288 290 292 294 296 298 300 302 304 306 308 310 312 314 316 318 320 322 324 326 328 330 332 334 336 338 340 342 344 346 348 350 352 354 356 358 360 362 364 366 368 370 372 374 376 378 380 382 384 386 388 390 392 394 396 398 400 402 404 406 408 410 412 414 416 418 420 422 424 426 428 430 432 434 436 438 440 442 444 446 448 450 452 454 456 458 460 462 464 466 468 470 472 474 476 478 480 482 484 486 488 490 492 494 496 498 500 502 504 506 508 510 +Passed! + diff --git a/External/OpenCL/tests/AMDAPP_SDK/Template/Template_Kernels.cl b/External/OpenCL/tests/AMDAPP_SDK/Template/Template_Kernels.cl new file mode 100644 index 0000000000..62dcf6aff0 --- /dev/null +++ b/External/OpenCL/tests/AMDAPP_SDK/Template/Template_Kernels.cl @@ -0,0 +1,30 @@ +/********************************************************************** +Copyright ©2013 Advanced Micro Devices, Inc. All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +• Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. +• Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or + other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY + DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS + OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +********************************************************************/ + +/*! + * Sample kernel which multiplies every element of the input array with + * a constant and stores it at the corresponding output array + */ + + +__kernel void templateKernel(__global unsigned int * output, + __global unsigned int * input, + const unsigned int multiplier) +{ + uint tid = get_global_id(0); + + output[tid] = input[tid] * multiplier; +} diff --git a/External/OpenCL/tests/AMDAPP_SDK/Template/docs/Template.pdf b/External/OpenCL/tests/AMDAPP_SDK/Template/docs/Template.pdf new file mode 100644 index 0000000000000000000000000000000000000000..7e3a0fe45c36440f481c5b48b1654a297fe0824f GIT binary patch literal 222842 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%0D4v;HWTej%-V0 zp`11?RX^y%?8Vo2OgA?HxaJtuNpphkVF9GK&wv`z#F330E_ucKcl#%9?rx_LciG$} zZvyed*19P*E(0QX2JgR9=Eyk}9iEnRtB)H`gL{vV)b|h(Jd8H1rrc7Tewg%QzC4WMV0vV^fQz#Q84! zvIgP}Br)m4*ZKJ(?4fVanhOdYY+Jig90y!HD76-DF%ncIYOB^Bx{N zzK9j;)LM0@IEAy*L{< zDkvWNs>M75rroS3hV<_vyb)uz3bT*YGc|#PZH9=yW!1KP$fH|LO&~v03KIsLo3g<*-@=?#kLwT72J10kUK{x z2`Vu+z=q0&vnq0R2RW=QGtkuJblIKuVVbCiVqVmvI$J3><-NPyGT&S&V*0~4)u-me zA+_F6_Us~Ni6uMHCO#bGSP2H{v@v2o5}w9An?=%HbRV(Sb2taYAYfxyfxQhTEtX$c zsfWX(c1P~@0J@5=Tt@>o%$;5~%ppD^!Pz2W5neo95!qIR`{*Nu%&rW&okFo9&0*Wx zpj@JdM7*Jl?TI1j!_^MgRa?vX&wk+cb)Me&{8P z2Nq#9k4<)emz>9>V$kF4@h`ZQbe1U>WXBcksxvCuzFvd-7}Df73>4%c5Ew<{_O}gU zRY}@(sBf?#*gM=|3~U6psfgIXTTL(J*^;_o*3GrmCW-bEhTtB@GlBtI&(AGpKFL?MEtv7~5|dv;N|>P{dj@`*m-8)+ZxqlZnCs1r;kSPBBDBOnXQw{92MgZ5j@=QJNYXTaIV!+!M7Oc zuDUv|>OkofplOkY*+sTP?Qm(1WbM?#H?F00R)678&d;Ez*A*3Vkh&RX7LadMhAp70f@2~Kj;MJdV3(%i=j>&k%F#crVt z4ZFFio{5anmn@<=9x!xz5$MtKDVgq{jfBSGX63X~ekRmGIgv?YIzLU;3iHk57#u-$ zIfb_*_dCrWZ`Q}w+wpsLLS>qLnngU!V-K*UeDVXjp-1%Rk+)<2vxdDa}$8o*Y^-OXbL@F!g(d-Z{I5}s|B z^4xZ%Z~2$SBU*dV8s`0YrQHz&9^pKo}&?f632x43#~oa47F-Q z?oz!WAf4aHJrYceepetq%1T-oynkLj8uCV1?4OZ>fgSmDN4+2 zq4$H2A5$)*o%C}o|FqlkOG?I_!mZv1`i$L@`%c?5?fAO-0Y75jF}axC4{di9INtn3~|~b;#q?WEo8A zWuW@p=~6w>u4|g9N6{znUMlGS+Nr$%Oasr{iHHspqSlgWb-%yPQfRrArVKs9)A7ul zLvkBhCJ5y>YyXvsR+N0--U*(;$=-GrIO^1%JR%^(zHj;U({+*}sIQ&TJ_9E6XuG z(O#D|t7w49hgFMgjwXNm9;~HCJgQK10^jbhOI zm9#8Kxjw=;j0=fzl;Rw0^7Bv#Kqu2?EE?GvouWmYK^frPjGNyj0h!bIpsH*+NrdOU z8>sBo;bti?L*`egxVi3_ezdF1_W5aO*WDcqa%imRPkhT~OMb7isEN)H7mG@-Z`NHd zXDGa@Lk;|$0jtf?rqg7h$VouN`yL?B2~h=nO!TI*0qxbmr5Lq+bGyNm+XST_q%hWl z^CA}%dmh}>1ujb^T=Ao0>7%|nT7t0GM!H20#FqkQ70rL#&09A=Kcybp7`8?=N3#8l zAQ;=^Kr7noQmLN%^7Ele%@>Shk%%3iS&O|YwE`r=!h(;K%5KjGY8t?`(NZLqAy0+~ zCf=!kH!u8TO|x-4Qhv~JM!|LqbL5Pc{_X4Xgp-Iebhx3K#84gyZ$XyZ@-;8QX6A4Q4#TvA@FPsZGng(8iFe}`KokXN@p1)d z3=+&Kqd4<{OhLF%9U)!qo>i^Q*AbW zWKH!o<=Y<%?Z5WUz$L%!cf*M;uLV)*Uer!9uiUIPq&D<;H>>TnpHv#c&N8{FVx7{{ zD75!nZ^WM+>HM~6?%vs^>wS-KXmE?Yu#0(rO@N9e4Zy=E4>~<8xE66uuq7-dChQ-_ zIH>{8;^{k6o#Mk(7rEov>M+-s+Pk8&dgyPEZO9Gx<%Tx*dGmyPePw6)pkR;~15{+R zVu8h8H0;~k$0G1hrt%F&G(tX&fF2jRT44lZI6OJe_a|MD=|}rCuVutX>FtyefONio zN~~hBhSR8;-hjxcSGJ6*+3yov1~-tq)9XoH8IF1x3JL@fU?lZ*!S@LpV{F{n!{-+! z*mwMuya7Mg+nHPSCLKx+UO{{Wa>(H;AkcLhm)r@<2vRV7NI(`QPXkjRlqO9%{?;1i zPr6S|5@_B{1@Ey1j#4yn7st&@lmz)Gf-6=hm1tVDI^LDhNCoW7-O)A-OVcF~Yrsa; z0Q~iWQv}Ai$JnT(i55Q**GiZnNM|0U~l$HH2+xe{se$XH_mPQXc3$AMwyp-s?Uwb zo$%CM=#RJ?PF)KFc+tgKfa)1wva;SoAe(Vw<`36U7Y{wq6chJ=6KFj!%%SM|?oeJ% z)ococq5fhDsn|2hkKIH06()@XZ2CO``EMUn-Iq#hqFC>jIGT!zwEg1gh0wGBJ2GNe zfTGUh(h{tB)B(qi-`LiPjj&@7aR7s{DFcaD`WU}WTKa4xouvCQzvwUA2w)WMGYc<= z*@7$zseHeCshu3P#OsROy8385|HQ8*Q)~xsftI1gbiDk3(I5ZFAO9AhtnD0?>QI@`Z$UE8@DVaEH(S21A(J7m_JL~+_WpCo>Y+>T`_zw4yOP=CC*#4mX2iw2O zh6ot{?81K;{nh@*=->Jg2LsdppUNY{p$CWUid70=q+VHfEq07Be#ne|o;mi|RbXt` zu}S9hUJ;q$as5>PJJ~oHgR%i<04K6dH=<+gW#HbUw(p+g2xRB$X>;#=13ES2R_Lt# zovpjSeS6(&mS*IQI>TXyibN;q<~z?+CME911PA@+NmF3TZ+w8F^$3C#C?!lX@hS@bFqTn z|4Yu>A^r?b184Q>Om~if{Y>m!G_82sCtv0;dc}tn3`L1pR0Z~2*qXZmn|94&%E8Mm zLaK2dmGNO;=w5ECgr$WdvIEM3QK6xR}78s2WV2DAx*+8Tfw^Ul5ddmoC>Qx7kpZQLkCW9_4kb=MC>ktN+oM_ zUVvFIUe>_vnM+13WO(7xszLffJzKA^fE@GL7Y1q} zq)&P?-RgbIaSEhZxY4vZ)_16q(H0yygwZH;ARD$K1JA@GwvFte7J66W{7-Y#kl6?K zB~{u+`rAxpc`fsEQxx4Wc9f4D-cs3iWelY}U`lYXi)4Ds=F=!weUcD^P9Mk~)1f|Q zq$Hq2mGvh-rno+&`9&2D?ptoTs2r3&FTG)lu>oIAf?5r9d_sBDQ8x8^tBu|` zxbT+~SN2f-V$+e2&Yoos6k%`(y}!?Lz*D)x_ln6-xd@Qo@Ijqwj}LxeX(28Y5j zze0_CCScmW(fTug>Sgl;Mg30GB?E-W=?U2lkm`0sye;K$Ru&T$- zVYyLnPoL`#T(zzH7-*2K<(VA*y1uJkg36l96nDmiYKOX3FAcGx3Z*E_>?HQ9k2b%ldrpsv5! z5yhQ=6lugzF~;wv#e9wpB>5gO&qT zu5=Va;CMnc1!Nx(8sf@yvqX*nM2PA=sOyyx77Rw-!r$CjezwP?uW>_$e&93=>t%D$ z0SGgLC(K1zY&Wk`w}T;s`%LRn8Zae&KHmb4>Fa!y$Ox>c(5Ty*zKv~6i=&yO6?!-; z7 z4nPJ&#^emyUu+l;CRQL4NQ{C?zlP_4jr?zc8|e1(PadjV6}X5GI4P1~U@XM@L) zxH#nuKzyH%rJSaSzh5yoZtA||@CPI3E9n9cK!BP|#;cAD< zg2}2sM$BKm&!ey(v5UQeb%>TcdZ?`ocL5fcL?Wtg06P_j1c7KCFiN&T=vkUN8o*U7;1v(WZ8Hr=?1fQ91RET@(K znbCUr7?}RDLT1`Y0sp4DT1*wY6B9hlu@@*0nV-wZrKL||mOkr@D$e;@Km$rS33<7b zmnuF|%cf=|IzQEOBm+P4;q(~_aw0eY#1?!%e9LSVo9IK7tSf+d46ZU}im&dC#6$rvu>3q%=yg7hBVEdl{xB%g0;BW;voc%&>Rwi84~ z@^Z#|{=sjEYn9+A$orw~%9zT`9`N!Qm?QB6s!n0)FWGNi8kE;=$xcV?FJ#SZKp`lU z{W%_IOQUj$EH;h&@23<95C;V&p9CTS#&F!RSd`dx#nW`nr-kq(y;7zt( z^_w6^&>`o0u|ipp=h-n^rYNQt$5B1uoV^P_M^%g7*M}b@ro82cl1sbLEL~FeJoh8Q zD`3Xye2qF)fN4+lG)pSkj)tGg*yp@Sya-U_zm5GocB zHE(hfvFPj;29HH@vQ@^4t)&k+smljv!Rf+hig~s;P8M8MM=`*eB*~QkzuWefLM`uUhd%3)O6ZN`@4I&me13UL4vY%y}L41iiTE=4>xaFt5 zm<*%MVFk6{Hg(Wwz&8h$sZtdLT@rX!>Yzxo;)uIlwrWwOalXYG z7e&W~OU?=`Q#t!wnD(a?F4FBXoYuX2`61B0yX0+EzKZGXqRO$-u4`O#(##dJs~Hqd z`T9&)nGEhXVi$3zP-N}!bneDuFk_>nfEYizowI*RsOqG3B5m__+G1mpTw^5!K#%sK z+FcQQ%_5ykX4Aef@@!CO5eE77m)niOXt=U!YMV^5LRd4ueKPhGV;$u+3`M8 z_LofJV3af0?~pwm!LD)exZD)UDxsWhkqu|-k#UfVfAXZK_4W*;-YhfmW8X4 zNP+tKq!It!ydXp&a~dW@J(pL&Ngql9cgm~;(wE(sml{~~Ti(wN*E^T&31&*c=X>HI zH7d`Zv?rQ`#o1Jd#cwYl>x2ouaGTnR3J|U_4YNU(!>D&pfeLE|?#<#fhUJX%p4`?G zg()OLz>n})m3pN>KH#b7&QG3ZAZVvJ>7O=Anun|Q)lTG#SD8NV2 zBG}C9!q6TS*OH=k9G>BH&r0{*jAbMaC6xsz{UrB&P3Ib3C}Xy)m#X|pdZjw>VXl&G zT<6%}bb2!N!7sjrDtmJXvThKH3@D#ezw`T-8P=+D=-@Vrfq1?ZYc)R;X}LBt*f3JL z$+{2;#O)qU+u6o0sALCDqs@@gD=J{K8I@50%+yv9Zr7WLoBDgX$ot~kDyf|h788Mx zGuIcw0YUR2^9Zg^nL^PI(!}mm{F2Szhz4ypj_fr$u$Rp7Ti?-?1ikY1=+Kxz7&O!B zf1wG@lf|AWQAt=GgFR8zAY7A$eauwMMhz^>;UP?Qq6*R&Xc_X3Cn7P~k3h4rJ&LB1i%+P7O*C@6S!$Rltub@Q`x<_$2DNBnmYk(NPx3OIII@vN__Otzzi@uE6(L=Fa+Aw<**>tf?@8gj z|CuEG8q+syFeK93b(a1DiTm-Vb@*gpL&|RKw1r)bnvPv90|$M*E&EJnQ=ZKtw{U*+ zZQsIe&ru3U&KL{+G6V-lzy2CK*pvfgaN(B+aO9wBO$vJg^*F%U}$~W$Q0d_X44C3KojxSlvN1 zI)(tL7(ghU70LIj#l?MeqrEpL15cUn0Iei+cYc9-YmWDkfu&A#tA?3trV9kLPwf+v zB*Bm?hlnaGwiYKQ*=U~JA%-#eY1d?t66eIJ&j7uWR1{30!_c%i-hNCA)P;l^eDSVjFjyF>2 ziy89Vi5c6~i}!vzkgwC|-lk$(L?iicwC2lq^!r~TbzTNDLv&OeufK6}9IR&oa#l3> zbzqbe@;)+jonX^jE;zHT_7x|{j_bvb76gfUyLCWgm(iF>KCD0xdnmH1(|9P zTF(SHZENLXXWYJ?q?4fT%3oL4BcgT&@`$MAEtNoY4dLM-a61*eP%Gg9b3HFa?b4<6 zSMW=>Cor*3<9+jN-E}8GmvT!94BNkiP&A=4-R23aJwIj;b1+vd8K2d*iQ5HTNOBXD z2nbWg-B*Ia=-FR@ZA@d_Rnze74>R}%hkqxo%1|^Vm^NW#T$Y7;9ngacA*nQcCriNZ{# zXp}l{rL!tmu0<*hPwKjZE*FA{GBIPye<0E6B0m1b z01aUpH_l|cixFDnS>LjVY2Rs@youzDg!M6TIlEYNKV|}&1X@4Kt;}W2Q`1=>SjRSl zJ`@|9kH#4^af>j8N^ic_V7H_++TT7QYZi-m{xbl{r!kKO8C+>em;TlZ5@AKR;uiyK z!lM$HG99DzVZ=KdEOcaXiFjJb@2!L~)5u!@S>%ilzD;(>lIK9F)o!_KG=%rGCxs)H?5gn_|0f;>A!)2K5Nwa3?tJ9)0T{9j`lc75{_v9c~>Z1 z%{MTlg3(wi+Sh_*k0xI2=w|bP6q(B_tJN9y8@(4mauSprdmx`kyze4uQE4}LvTFn_ zNJ}8pmRmC3UTG%jqmkvA&#>!(Yn)rW#j{OZ@N-@)-wAlVXhsRkh;tY?X9x&_llq~E z2H*}?bar-2Qb>$#RLpUrqE2Evt1U%(yEQ_iQj_h4*86G9Qcb|u6>k0erd>_kcq__X zBm(C(Q$-o}oV3!KxW+7`cq(C@ zMo_zAl0rGWPc=kd4sB3F=WmDix`U~sFa;tQ&|^M|5?$v^&iDvr0$Y&|Te_^)?6%-! zT&MLzdj`XO@%e@QG9qj_eIPjd4sF)UH9hND*4^kfrw^$`Go zPTh6Cd)%vwF9i8j;nRh1*LWucTEUc6zj3P(LEn;m#av@sU%IAEzU{p%?6uL(1sMG5 zne$8yNY2LS-2P`eS_&_TqQ*5Jxjrj!Ymlx&H%Y7-Bn}=anE!j8+CUSgyqvm8#CY#7+^4w6k z<_X&QM^sYE8FqVcQuz6F&v7#u6%jbj3*0!Zs>fmDbhF|^xuX}pEg@NSw6@#2pzdf_ z=t$tq{DV_elh(7%{lr*4!fY>_8A#r)Vt0?Izz( z@7f}s+)u?BsP~yHdKkIoTA8fWs}|}`do=#%Kz3j*!J&}MubC!#-#2~MaAwqfLc&vp9C!9^p&}6?}$MEI$jrPYL(0e?s z{30xFJLM)(h#xD4`i*VDh&XDK5?bOItL5E$#% znEV|yXdJ#0d`51k$ofKl3^y#gyEYJa;_$9*^v=vyj?}KfZ4No*)}|jMOFz+`wHv-N z*vOh{Kh4~u#&dx}>hX5?FsS1lATð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 literal 0 HcmV?d00001 diff --git a/External/OpenCL/tests/CMakeLists.txt b/External/OpenCL/tests/CMakeLists.txt new file mode 100644 index 0000000000..0b55c2489a --- /dev/null +++ b/External/OpenCL/tests/CMakeLists.txt @@ -0,0 +1,4 @@ +add_subdirectory(AMDAPP_SDK) + +# Propogate the list of tests to run. +set(OPENCL_SIMPLE_TESTS_LIST ${OPENCL_SIMPLE_TESTS_LIST} PARENT_SCOPE)