[SYCL][CUDA] Fix LIT testing with CUDA devices#1300
Conversation
|
WARNING This PR fixes CUDA LIT testing and multiple LIT tests will unexpectedly pass while more will fail. A follow up PR will fix this as I didn't want to overload this PR. ninja check-sycl-cuda
...
Unexpected Passing Tests (2):
SYCL :: basic_tests/boolean.cpp
SYCL :: hier_par/hier_par_basic.cpp
SYCL :: kernel_from_file/hw.cpp
********************
Failing Tests (7):
SYCL :: backend/cuda/primary_context.cpp
SYCL :: basic_tests/handler/handler_copy_with_offset.cpp
SYCL :: basic_tests/handler/handler_mem_op.cpp
SYCL :: group-algorithm/all_of.cpp
SYCL :: group-algorithm/broadcast.cpp
SYCL :: group-algorithm/any_of.cpp
SYCL :: group-algorithm/exclusive_scan.cpp
SYCL :: group-algorithm/leader.cpp
SYCL :: group-algorithm/inclusive_scan.cpp
SYCL :: group-algorithm/none_of.cpp
SYCL :: group-algorithm/reduce.cpp
SYCL :: program_manager/env_vars.cpp
SYCL :: multi_ptr/multi_ptr.cpp
SYCL :: scheduler/DataMovement.cpp
SYCL :: scheduler/MultipleDevices.cpp
SYCL :: usm/allocator_vector.cpp
SYCL :: usm/allocatorll.cpp
SYCL :: usm/allocator_vector_fail.cpp
SYCL :: usm/badmalloc.cpp
SYCL :: usm/depends_on.cpp
SYCL :: usm/dmemll.cpp
SYCL :: usm/hmemll.cpp
SYCL :: usm/memadvise.cpp
SYCL :: usm/memcpy.cpp
SYCL :: usm/memset.cpp
SYCL :: usm/mixed.cpp
SYCL :: usm/mixed2.cpp
SYCL :: usm/mixed_queue.cpp
SYCL :: usm/mixed2template.cpp
SYCL :: usm/queue_wait.cpp
SYCL :: usm/smemll.cppAnd the following two tests hang when run for CUDA: basic_tests/device_event.cpp
regression/group.cppFollow up PR to rework: #1303 |
75d856f to
1a33ab8
Compare
# Conflicts: # sycl/test/lit.cfg.py
|
@bjoernknafla ping |
1a33ab8 to
556d275
Compare
|
I have updated the list of failing and now also hanging tests. I will first rework the PR that fixes LIT tests before this PR can go in. |
|
@bjoernknafla, could you take a look at merge conflicts, please? |
|
@bader Will do. |
556d275 to
01a0e92
Compare
sycl/test/lit.cfg.py
Outdated
There was a problem hiding this comment.
On a fail LIT prints out this information and eases running the test by hand. Though the user still needs to add the LD_LIBRARY_PATH to find the SYCL library, but that is not part of this change.
sycl/tools/CMakeLists.txt
Outdated
There was a problem hiding this comment.
I removed this to avoid duplication and instead use the cudadrv target set up in the sycl/plugin/cuda/CMakeLists.txt CMake file.
01a0e92 to
379636c
Compare
Build the `get_device_count_by_type` tool with the required preprocessor definitions to enable CUDA, and link with CUDA. Pass correct backend name to the `get_device_count_by_type` tool that is required to run tests with PI OpenCL instead of PI CUDA. Clean up the `get_device_count_by_type` tool code to make it harder to call it with the wrong backend and get unexpected query results back. Signed-off-by: Bjoern Knafla <bjoern@codeplay.com>
379636c to
aee267f
Compare
|
@romanovvlad, please, approve to unblock merge. |
|
There is an open change request that GitHub cannot identify as the commit (due to rebasing) is gone... |
|
@bjoernknafla, basic_tests/buffer/buffer_dev_to_dev.cpp seems to hang. Do you know why? |
|
I haven’t seen |
|
I've restarted the job and it passed. |
…duler_docs * origin/sycl: [SYCL][PI][CUDA] Implements get_native interoperability (intel#1332) [SYCL] Fix check-sycl test suite on systems w/o OpenCL (intel#1503) [SYCL][Doc] Update ExtendedAtomics documentation (intel#1487) [SYCL][CUDA] Expose context extended deleters on PI API (intel#1483) [SYCL][NFC] Remove a dropped environment variable from a test (intel#1506) [SYCL] Add opencl-aot to sycl-toolchain target (intel#1504) [SYCL] Allow to run deploy LIT tests from particular directory [SYCL][CUDA] Fix LIT testing with CUDA devices (intel#1300) [SYCL] Remove operator name keywords (intel#1501) [Driver][SYCL] Consider .lo files as static archives (intel#1500) [SYCL-PTX] Update the compiler design to describe the CUDA target (intel#1408) [SYCL] Fix library build on Windows (intel#1499) [SYCL][NFC] Refactor lit.cfg.py (intel#1452) [SYCL] Fixed sub-buffer memory allocation update (intel#1486) [SYCL] Ensure proper definition of spirv builtins for SYCL (intel#1393) [SYCL][CUDA] LIT XFAIL/UNSUPPORTED (intel#1303) [SYCL][Doc] Function-type kernel attribute extension (intel#1494)
…c_abi_checks * origin/sycl: (32 commits) [SYCL] Do not force LLVM_INCLUDE_TESTS variable (intel#1505) [SYCL][NFC] Align nd_item members with constructor initialization list (intel#1521) [SYCL] Move get_info_host implementation to header (intel#1514) [SYCL] Always use dynamic CRT for Unit tests (intel#1515) [SYCL][NFC] Temporarily disable sporadically failing test (intel#1526) [SYCL] Fix inline namespaces (intel#1525) [SYCL] Release notes for March'20 DPCPP implementation update (intel#1511) [SYCL][PI][CUDA] Implements get_native interoperability (intel#1332) [SYCL] Fix check-sycl test suite on systems w/o OpenCL (intel#1503) [SYCL][Doc] Update ExtendedAtomics documentation (intel#1487) [SYCL][CUDA] Expose context extended deleters on PI API (intel#1483) [SYCL][NFC] Remove a dropped environment variable from a test (intel#1506) [SYCL] Add opencl-aot to sycl-toolchain target (intel#1504) [SYCL] Allow to run deploy LIT tests from particular directory [SYCL][CUDA] Fix LIT testing with CUDA devices (intel#1300) [SYCL] Remove operator name keywords (intel#1501) [Driver][SYCL] Consider .lo files as static archives (intel#1500) [SYCL-PTX] Update the compiler design to describe the CUDA target (intel#1408) [SYCL] Fix library build on Windows (intel#1499) [SYCL][NFC] Refactor lit.cfg.py (intel#1452) ...
Build the
get_device_count_by_typetool with the required preprocessordefinitions to enable CUDA, and link with CUDA.
Passed correct backend name to the
get_device_count_by_typetool tois required to run tests with PI OpenCL instead of PI CUDA.
Clean up the
get_device_count_by_typetool code to make it harder tocall it with the wrong backend and get unexpected query results back.
Signed-off-by: Bjoern Knafla bjoern@codeplay.com