Loading src/UnitTests/Containers/ArrayOperationsTest.h +0 −1 Original line number Diff line number Diff line Loading @@ -12,7 +12,6 @@ #ifdef HAVE_GTEST #include <TNL/Containers/Algorithms/ArrayOperations.h> #include <TNL/Devices/Cuda.h> #include "gtest/gtest.h" Loading src/UnitTests/Containers/ArrayTest.h +11 −5 Original line number Diff line number Diff line Loading @@ -62,6 +62,7 @@ protected: // types for which ArrayTest is instantiated using ArrayTypes = ::testing::Types< #ifndef HAVE_CUDA Array< int, Devices::Host, short >, Array< long, Devices::Host, short >, Array< float, Devices::Host, short >, Loading @@ -76,9 +77,10 @@ using ArrayTypes = ::testing::Types< Array< long, Devices::Host, long >, Array< float, Devices::Host, long >, Array< double, Devices::Host, long >, Array< MyData, Devices::Host, long >, Array< MyData, Devices::Host, long > // FIXME: this segfaults in String::~String() // Array< String, Devices::Host, long >, // Array< String, Devices::Host, long > #endif #ifdef HAVE_CUDA Array< int, Devices::Cuda, short >, Array< long, Devices::Cuda, short >, Loading @@ -94,9 +96,10 @@ using ArrayTypes = ::testing::Types< Array< long, Devices::Cuda, long >, Array< float, Devices::Cuda, long >, Array< double, Devices::Cuda, long >, Array< MyData, Devices::Cuda, long >, Array< MyData, Devices::Cuda, long > #endif #ifdef HAVE_MIC , Array< int, Devices::MIC, short >, Array< long, Devices::MIC, short >, Array< float, Devices::MIC, short >, Loading @@ -112,15 +115,18 @@ using ArrayTypes = ::testing::Types< Array< int, Devices::MIC, long >, Array< long, Devices::MIC, long >, Array< float, Devices::MIC, long >, Array< double, Devices::MIC, long >, Array< double, Devices::MIC, long > // TODO: MyData does not work on MIC // Array< MyData, Devices::MIC, long >, // Array< MyData, Devices::MIC, long > #endif // all array tests should also work with Vector // (but we can't test all types because the argument list would be too long...) #ifndef HAVE_CUDA , Vector< float, Devices::Host, long >, Vector< double, Devices::Host, long > #endif #ifdef HAVE_CUDA , Vector< float, Devices::Cuda, long >, Loading src/UnitTests/Containers/ArrayViewTest.h +9 −3 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ protected: // types for which ArrayViewTest is instantiated using ViewTypes = ::testing::Types< #ifndef HAVE_CUDA ArrayView< int, Devices::Host, short >, ArrayView< long, Devices::Host, short >, ArrayView< float, Devices::Host, short >, Loading @@ -79,9 +80,10 @@ using ViewTypes = ::testing::Types< ArrayView< long, Devices::Host, long >, ArrayView< float, Devices::Host, long >, ArrayView< double, Devices::Host, long >, ArrayView< MyData, Devices::Host, long >, ArrayView< MyData, Devices::Host, long > // FIXME: this segfaults in String::~String() // , ArrayView< String, Devices::Host, long >, // , ArrayView< String, Devices::Host, long > #endif #ifdef HAVE_CUDA ArrayView< int, Devices::Cuda, short >, ArrayView< long, Devices::Cuda, short >, Loading @@ -97,9 +99,10 @@ using ViewTypes = ::testing::Types< ArrayView< long, Devices::Cuda, long >, ArrayView< float, Devices::Cuda, long >, ArrayView< double, Devices::Cuda, long >, ArrayView< MyData, Devices::Cuda, long >, ArrayView< MyData, Devices::Cuda, long > #endif #ifdef HAVE_MIC , ArrayView< int, Devices::MIC, short >, ArrayView< long, Devices::MIC, short >, ArrayView< float, Devices::MIC, short >, Loading @@ -122,8 +125,11 @@ using ViewTypes = ::testing::Types< // all ArrayView tests should also work with VectorView // (but we can't test all types because the argument list would be too long...) #ifndef HAVE_CUDA , VectorView< float, Devices::Host, long >, VectorView< double, Devices::Host, long > #endif #ifdef HAVE_CUDA , VectorView< float, Devices::Cuda, long >, Loading src/UnitTests/Containers/CMakeLists.txt +32 −29 Original line number Diff line number Diff line Loading @@ -12,15 +12,6 @@ ELSE( BUILD_CUDA ) TARGET_LINK_LIBRARIES( ArrayOperationsTest ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( ArrayTest ArrayTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayTest ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( ArrayViewTest ArrayViewTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayViewTest ${GTEST_BOTH_LIBRARIES} ) ELSE( BUILD_CUDA ) ADD_EXECUTABLE( ArrayTest ArrayTest.cpp ) TARGET_COMPILE_OPTIONS( ArrayTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayTest ${GTEST_BOTH_LIBRARIES} ) Loading @@ -28,22 +19,25 @@ ELSE( BUILD_CUDA ) ADD_EXECUTABLE( ArrayViewTest ArrayViewTest.cpp ) TARGET_COMPILE_OPTIONS( ArrayViewTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayViewTest ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) ADD_EXECUTABLE( StaticArrayTest StaticArrayTest.cpp ) TARGET_COMPILE_OPTIONS( StaticArrayTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( StaticArrayTest ${GTEST_BOTH_LIBRARIES} ) # NOTE: Vector = Array + VectorOperations, VectorView = ArrayView + VectorOperations, # so we test Vector, VectorView and VectorOperations at the same time IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( VectorTest VectorTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( VectorTest ${GTEST_BOTH_LIBRARIES} ) ELSE( BUILD_CUDA ) ADD_EXECUTABLE( VectorTest VectorTest.cpp ) TARGET_COMPILE_OPTIONS( VectorTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( VectorTest ${GTEST_BOTH_LIBRARIES} ) IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( ArrayTestCuda ArrayTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayTestCuda ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( ArrayViewTestCuda ArrayViewTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayViewTestCuda ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( VectorTestCuda VectorTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( VectorTestCuda ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) IF( BUILD_CUDA ) Loading @@ -56,6 +50,10 @@ ELSE( BUILD_CUDA ) TARGET_LINK_LIBRARIES( MultireductionTest ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) ADD_EXECUTABLE( StaticArrayTest StaticArrayTest.cpp ) TARGET_COMPILE_OPTIONS( StaticArrayTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( StaticArrayTest ${GTEST_BOTH_LIBRARIES} ) ADD_EXECUTABLE( StaticVectorTest StaticVectorTest.cpp ) TARGET_COMPILE_OPTIONS( StaticVectorTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( StaticVectorTest ${GTEST_BOTH_LIBRARIES} ) Loading @@ -75,9 +73,14 @@ ADD_TEST( ListTest ${EXECUTABLE_OUTPUT_PATH}/ListTest${CMAKE_EXECUTABLE_SUFFIX} ADD_TEST( ArrayOperationsTest ${EXECUTABLE_OUTPUT_PATH}/ArrayOperationsTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( ArrayTest ${EXECUTABLE_OUTPUT_PATH}/ArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( ArrayViewTest ${EXECUTABLE_OUTPUT_PATH}/ArrayViewTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( StaticArrayTest ${EXECUTABLE_OUTPUT_PATH}/StaticArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( VectorTest ${EXECUTABLE_OUTPUT_PATH}/VectorTest${CMAKE_EXECUTABLE_SUFFIX} ) IF( BUILD_CUDA ) ADD_TEST( ArrayTestCuda ${EXECUTABLE_OUTPUT_PATH}/ArrayTestCuda${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( ArrayViewTestCuda ${EXECUTABLE_OUTPUT_PATH}/ArrayViewTestCuda${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( VectorTestCuda ${EXECUTABLE_OUTPUT_PATH}/VectorTestCuda${CMAKE_EXECUTABLE_SUFFIX} ) ENDIF() ADD_TEST( MultireductionTest ${EXECUTABLE_OUTPUT_PATH}/MultireductionTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( StaticArrayTest ${EXECUTABLE_OUTPUT_PATH}/StaticArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( StaticVectorTest ${EXECUTABLE_OUTPUT_PATH}/StaticVectorTest${CMAKE_EXECUTABLE_SUFFIX} ) #ADD_TEST( MultiArrayTest ${EXECUTABLE_OUTPUT_PATH}/MultiArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) Loading src/UnitTests/Containers/VectorTest.h +2 −1 Original line number Diff line number Diff line Loading @@ -86,6 +86,7 @@ protected: // types for which VectorTest is instantiated // TODO: Quad must be fixed using VectorTypes = ::testing::Types< #ifndef HAVE_CUDA Vector< int, Devices::Host, short >, Vector< long, Devices::Host, short >, Vector< float, Devices::Host, short >, Loading @@ -104,8 +105,8 @@ using VectorTypes = ::testing::Types< Vector< double, Devices::Host, long > //Vector< Quad< float >, Devices::Host, long >, //Vector< Quad< double >, Devices::Host, long > #endif #ifdef HAVE_CUDA , Vector< int, Devices::Cuda, short >, Vector< long, Devices::Cuda, short >, Vector< float, Devices::Cuda, short >, Loading Loading
src/UnitTests/Containers/ArrayOperationsTest.h +0 −1 Original line number Diff line number Diff line Loading @@ -12,7 +12,6 @@ #ifdef HAVE_GTEST #include <TNL/Containers/Algorithms/ArrayOperations.h> #include <TNL/Devices/Cuda.h> #include "gtest/gtest.h" Loading
src/UnitTests/Containers/ArrayTest.h +11 −5 Original line number Diff line number Diff line Loading @@ -62,6 +62,7 @@ protected: // types for which ArrayTest is instantiated using ArrayTypes = ::testing::Types< #ifndef HAVE_CUDA Array< int, Devices::Host, short >, Array< long, Devices::Host, short >, Array< float, Devices::Host, short >, Loading @@ -76,9 +77,10 @@ using ArrayTypes = ::testing::Types< Array< long, Devices::Host, long >, Array< float, Devices::Host, long >, Array< double, Devices::Host, long >, Array< MyData, Devices::Host, long >, Array< MyData, Devices::Host, long > // FIXME: this segfaults in String::~String() // Array< String, Devices::Host, long >, // Array< String, Devices::Host, long > #endif #ifdef HAVE_CUDA Array< int, Devices::Cuda, short >, Array< long, Devices::Cuda, short >, Loading @@ -94,9 +96,10 @@ using ArrayTypes = ::testing::Types< Array< long, Devices::Cuda, long >, Array< float, Devices::Cuda, long >, Array< double, Devices::Cuda, long >, Array< MyData, Devices::Cuda, long >, Array< MyData, Devices::Cuda, long > #endif #ifdef HAVE_MIC , Array< int, Devices::MIC, short >, Array< long, Devices::MIC, short >, Array< float, Devices::MIC, short >, Loading @@ -112,15 +115,18 @@ using ArrayTypes = ::testing::Types< Array< int, Devices::MIC, long >, Array< long, Devices::MIC, long >, Array< float, Devices::MIC, long >, Array< double, Devices::MIC, long >, Array< double, Devices::MIC, long > // TODO: MyData does not work on MIC // Array< MyData, Devices::MIC, long >, // Array< MyData, Devices::MIC, long > #endif // all array tests should also work with Vector // (but we can't test all types because the argument list would be too long...) #ifndef HAVE_CUDA , Vector< float, Devices::Host, long >, Vector< double, Devices::Host, long > #endif #ifdef HAVE_CUDA , Vector< float, Devices::Cuda, long >, Loading
src/UnitTests/Containers/ArrayViewTest.h +9 −3 Original line number Diff line number Diff line Loading @@ -65,6 +65,7 @@ protected: // types for which ArrayViewTest is instantiated using ViewTypes = ::testing::Types< #ifndef HAVE_CUDA ArrayView< int, Devices::Host, short >, ArrayView< long, Devices::Host, short >, ArrayView< float, Devices::Host, short >, Loading @@ -79,9 +80,10 @@ using ViewTypes = ::testing::Types< ArrayView< long, Devices::Host, long >, ArrayView< float, Devices::Host, long >, ArrayView< double, Devices::Host, long >, ArrayView< MyData, Devices::Host, long >, ArrayView< MyData, Devices::Host, long > // FIXME: this segfaults in String::~String() // , ArrayView< String, Devices::Host, long >, // , ArrayView< String, Devices::Host, long > #endif #ifdef HAVE_CUDA ArrayView< int, Devices::Cuda, short >, ArrayView< long, Devices::Cuda, short >, Loading @@ -97,9 +99,10 @@ using ViewTypes = ::testing::Types< ArrayView< long, Devices::Cuda, long >, ArrayView< float, Devices::Cuda, long >, ArrayView< double, Devices::Cuda, long >, ArrayView< MyData, Devices::Cuda, long >, ArrayView< MyData, Devices::Cuda, long > #endif #ifdef HAVE_MIC , ArrayView< int, Devices::MIC, short >, ArrayView< long, Devices::MIC, short >, ArrayView< float, Devices::MIC, short >, Loading @@ -122,8 +125,11 @@ using ViewTypes = ::testing::Types< // all ArrayView tests should also work with VectorView // (but we can't test all types because the argument list would be too long...) #ifndef HAVE_CUDA , VectorView< float, Devices::Host, long >, VectorView< double, Devices::Host, long > #endif #ifdef HAVE_CUDA , VectorView< float, Devices::Cuda, long >, Loading
src/UnitTests/Containers/CMakeLists.txt +32 −29 Original line number Diff line number Diff line Loading @@ -12,15 +12,6 @@ ELSE( BUILD_CUDA ) TARGET_LINK_LIBRARIES( ArrayOperationsTest ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( ArrayTest ArrayTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayTest ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( ArrayViewTest ArrayViewTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayViewTest ${GTEST_BOTH_LIBRARIES} ) ELSE( BUILD_CUDA ) ADD_EXECUTABLE( ArrayTest ArrayTest.cpp ) TARGET_COMPILE_OPTIONS( ArrayTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayTest ${GTEST_BOTH_LIBRARIES} ) Loading @@ -28,22 +19,25 @@ ELSE( BUILD_CUDA ) ADD_EXECUTABLE( ArrayViewTest ArrayViewTest.cpp ) TARGET_COMPILE_OPTIONS( ArrayViewTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayViewTest ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) ADD_EXECUTABLE( StaticArrayTest StaticArrayTest.cpp ) TARGET_COMPILE_OPTIONS( StaticArrayTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( StaticArrayTest ${GTEST_BOTH_LIBRARIES} ) # NOTE: Vector = Array + VectorOperations, VectorView = ArrayView + VectorOperations, # so we test Vector, VectorView and VectorOperations at the same time IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( VectorTest VectorTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( VectorTest ${GTEST_BOTH_LIBRARIES} ) ELSE( BUILD_CUDA ) ADD_EXECUTABLE( VectorTest VectorTest.cpp ) TARGET_COMPILE_OPTIONS( VectorTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( VectorTest ${GTEST_BOTH_LIBRARIES} ) IF( BUILD_CUDA ) CUDA_ADD_EXECUTABLE( ArrayTestCuda ArrayTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayTestCuda ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( ArrayViewTestCuda ArrayViewTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( ArrayViewTestCuda ${GTEST_BOTH_LIBRARIES} ) CUDA_ADD_EXECUTABLE( VectorTestCuda VectorTest.cu OPTIONS ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( VectorTestCuda ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) IF( BUILD_CUDA ) Loading @@ -56,6 +50,10 @@ ELSE( BUILD_CUDA ) TARGET_LINK_LIBRARIES( MultireductionTest ${GTEST_BOTH_LIBRARIES} ) ENDIF( BUILD_CUDA ) ADD_EXECUTABLE( StaticArrayTest StaticArrayTest.cpp ) TARGET_COMPILE_OPTIONS( StaticArrayTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( StaticArrayTest ${GTEST_BOTH_LIBRARIES} ) ADD_EXECUTABLE( StaticVectorTest StaticVectorTest.cpp ) TARGET_COMPILE_OPTIONS( StaticVectorTest PRIVATE ${CXX_TESTS_FLAGS} ) TARGET_LINK_LIBRARIES( StaticVectorTest ${GTEST_BOTH_LIBRARIES} ) Loading @@ -75,9 +73,14 @@ ADD_TEST( ListTest ${EXECUTABLE_OUTPUT_PATH}/ListTest${CMAKE_EXECUTABLE_SUFFIX} ADD_TEST( ArrayOperationsTest ${EXECUTABLE_OUTPUT_PATH}/ArrayOperationsTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( ArrayTest ${EXECUTABLE_OUTPUT_PATH}/ArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( ArrayViewTest ${EXECUTABLE_OUTPUT_PATH}/ArrayViewTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( StaticArrayTest ${EXECUTABLE_OUTPUT_PATH}/StaticArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( VectorTest ${EXECUTABLE_OUTPUT_PATH}/VectorTest${CMAKE_EXECUTABLE_SUFFIX} ) IF( BUILD_CUDA ) ADD_TEST( ArrayTestCuda ${EXECUTABLE_OUTPUT_PATH}/ArrayTestCuda${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( ArrayViewTestCuda ${EXECUTABLE_OUTPUT_PATH}/ArrayViewTestCuda${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( VectorTestCuda ${EXECUTABLE_OUTPUT_PATH}/VectorTestCuda${CMAKE_EXECUTABLE_SUFFIX} ) ENDIF() ADD_TEST( MultireductionTest ${EXECUTABLE_OUTPUT_PATH}/MultireductionTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( StaticArrayTest ${EXECUTABLE_OUTPUT_PATH}/StaticArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) ADD_TEST( StaticVectorTest ${EXECUTABLE_OUTPUT_PATH}/StaticVectorTest${CMAKE_EXECUTABLE_SUFFIX} ) #ADD_TEST( MultiArrayTest ${EXECUTABLE_OUTPUT_PATH}/MultiArrayTest${CMAKE_EXECUTABLE_SUFFIX} ) Loading
src/UnitTests/Containers/VectorTest.h +2 −1 Original line number Diff line number Diff line Loading @@ -86,6 +86,7 @@ protected: // types for which VectorTest is instantiated // TODO: Quad must be fixed using VectorTypes = ::testing::Types< #ifndef HAVE_CUDA Vector< int, Devices::Host, short >, Vector< long, Devices::Host, short >, Vector< float, Devices::Host, short >, Loading @@ -104,8 +105,8 @@ using VectorTypes = ::testing::Types< Vector< double, Devices::Host, long > //Vector< Quad< float >, Devices::Host, long >, //Vector< Quad< double >, Devices::Host, long > #endif #ifdef HAVE_CUDA , Vector< int, Devices::Cuda, short >, Vector< long, Devices::Cuda, short >, Vector< float, Devices::Cuda, short >, Loading