mirror of
https://gitlab.com/libeigen/eigen.git
synced 2024-12-21 07:19:46 +08:00
00f32752f7
* Unifying all loadLocalTile from lhs and rhs to an extract_block function. * Adding get_tensor operation which was missing in TensorContractionMapper. * Adding the -D method missing from cmake for Disable_Skinny Contraction operation. * Wrapping all the indices in TensorScanSycl into Scan parameter struct. * Fixing typo in Device SYCL * Unifying load to private register for tall/skinny no shared * Unifying load to vector tile for tensor-vector/vector-tensor operation * Removing all the LHS/RHS class for extracting data from global * Removing Outputfunction from TensorContractionSkinnyNoshared. * Combining the local memory version of tall/skinny and normal tensor contraction into one kernel. * Combining the no-local memory version of tall/skinny and normal tensor contraction into one kernel. * Combining General Tensor-Vector and VectorTensor contraction into one kernel. * Making double buffering optional for Tensor contraction when local memory is version is used. * Modifying benchmark to accept custom Reduction Sizes * Disabling AVX optimization for SYCL backend on the host to allow SSE optimization to the host * Adding Test for SYCL * Modifying SYCL CMake
39 lines
1.4 KiB
CMake
39 lines
1.4 KiB
CMake
FILE(GLOB examples_SRCS "*.cpp")
|
|
|
|
set(EIGEN_SYCL ON)
|
|
list(APPEND CMAKE_EXE_LINKER_FLAGS -pthread)
|
|
if(EIGEN_SYCL_TRISYCL)
|
|
set(CMAKE_CXX_STANDARD 14)
|
|
set(STD_CXX_FLAG "-std=c++1z")
|
|
else(EIGEN_SYCL_TRISYCL)
|
|
if(MSVC)
|
|
# Set the host and device compilers C++ standard to C++14. On Windows setting this to C++11
|
|
# can cause issues with the ComputeCpp device compiler parsing Visual Studio Headers.
|
|
set(CMAKE_CXX_STANDARD 14)
|
|
list(APPEND COMPUTECPP_USER_FLAGS -DWIN32)
|
|
else()
|
|
set(CMAKE_CXX_STANDARD 11)
|
|
list(APPEND COMPUTECPP_USER_FLAGS -Wall)
|
|
endif()
|
|
# The following flags are not supported by Clang and can cause warnings
|
|
# if used with -Werror so they are removed here.
|
|
if(COMPUTECPP_USE_COMPILER_DRIVER)
|
|
set(CMAKE_CXX_COMPILER ${ComputeCpp_DEVICE_COMPILER_EXECUTABLE})
|
|
string(REPLACE "-Wlogical-op" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
|
string(REPLACE "-Wno-psabi" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
|
string(REPLACE "-ansi" "" CMAKE_CXX_FLAGS ${CMAKE_CXX_FLAGS})
|
|
endif()
|
|
list(APPEND COMPUTECPP_USER_FLAGS
|
|
-DEIGEN_NO_ASSERTION_CHECKING=1
|
|
-no-serial-memop
|
|
-Xclang
|
|
-cl-mad-enable)
|
|
endif(EIGEN_SYCL_TRISYCL)
|
|
|
|
FOREACH(example_src ${examples_SRCS})
|
|
GET_FILENAME_COMPONENT(example ${example_src} NAME_WE)
|
|
ei_add_test_internal(${example} example_${example})
|
|
ADD_DEPENDENCIES(unsupported_examples example_${example})
|
|
ENDFOREACH(example_src)
|
|
set(EIGEN_SYCL OFF)
|