Loading src/TNL/Communicators/MPITypeResolver.h +5 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ struct MPITypeResolver { static inline MPI_Datatype getType() { static_assert( sizeof(Type) == sizeof(char) || sizeof(Type) == sizeof(int) || sizeof(Type) == sizeof(short int) || sizeof(Type) == sizeof(long int), "Fatal Error - Unknown MPI Type"); switch( sizeof( Type ) ) { case sizeof( char ): Loading @@ -30,7 +35,6 @@ struct MPITypeResolver case sizeof( long int ): return MPI_LONG; } TNL_ASSERT_TRUE(false, "Fatal Error - Unknown MPI Type"); }; }; Loading src/TNL/Containers/Algorithms/ArrayOperationsMIC.hpp +4 −5 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <TNL/Containers/Algorithms/ArrayOperations.h> #include <TNL/Containers/Algorithms/Reduction.h> #include <TNL/Containers/Algorithms/ReductionOperations.h> #include <TNL/Exceptions/NotImplementedError.h> namespace TNL { namespace Containers { Loading Loading @@ -146,7 +147,7 @@ ArrayOperations< Devices::MIC >:: copySTLList( DestinationElement* destination, const std::list< SourceElement >& source ) { TNL_ASSERT( false, std::cerr << "TODO" ); throw Exceptions::NotImplementedError(); } template< typename Element1, Loading Loading @@ -212,8 +213,7 @@ containsValue( const Element* data, TNL_ASSERT_TRUE( data, "Attempted to check data through a nullptr." ); TNL_ASSERT_GE( size, 0, "" ); #ifdef HAVE_MIC TNL_ASSERT( false, ); return false; throw Exceptions::NotImplementedError(); #else throw Exceptions::MICSupportMissing(); #endif Loading @@ -230,8 +230,7 @@ containsOnlyValue( const Element* data, TNL_ASSERT_TRUE( data, "Attempted to check data through a nullptr." ); TNL_ASSERT_GE( size, 0, "" ); #ifdef HAVE_MIC TNL_ASSERT( false, ); return false; throw Exceptions::NotImplementedError(); #else throw Exceptions::MICSupportMissing(); #endif Loading src/TNL/Containers/Algorithms/CudaMultireductionKernel.h +2 −2 Original line number Diff line number Diff line Loading @@ -302,9 +302,9 @@ CudaMultireductionKernelLauncher( Operation& operation, <<< gridSize, blockSize, shmem >>>( operation, n, size, input1, ldInput1, input2, output); break; case 1: TNL_ASSERT( false, std::cerr << "blockSize should not be 1." << std::endl ); throw std::logic_error( "blockSize should not be 1." ); default: TNL_ASSERT( false, std::cerr << "Block size is " << blockSize.x << " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." << std::endl ); throw std::logic_error( "Block size is " + std::to_string(blockSize.x) + " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." ); } TNL_CHECK_CUDA_DEVICE; Loading src/TNL/Containers/Algorithms/CudaReductionKernel.h +67 −67 Original line number Diff line number Diff line Loading @@ -331,9 +331,9 @@ struct CudaReductionKernelLauncher <<< gridSize, blockSize, shmem >>>( zero, dataFetcher, reduction, volatileReduction, size, output); break; case 1: TNL_ASSERT( false, std::cerr << "blockSize should not be 1." << std::endl ); throw std::logic_error( "blockSize should not be 1." ); default: TNL_ASSERT( false, std::cerr << "Block size is " << blockSize. x << " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." ); throw std::logic_error( "Block size is " + std::to_string(blockSize.x) + " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." ); } TNL_CHECK_CUDA_DEVICE; Loading src/TNL/Containers/Algorithms/Multireduction_impl.h +2 −4 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ #include <TNL/Assert.h> #include <TNL/Exceptions/CudaSupportMissing.h> #include <TNL/Exceptions/NotImplementedError.h> #include <TNL/Containers/Algorithms/ReductionOperations.h> #include <TNL/Containers/Algorithms/ArrayOperations.h> #include <TNL/Containers/Algorithms/CudaMultireductionKernel.h> Loading Loading @@ -318,10 +319,7 @@ reduce( Operation& operation, const typename Operation::DataType2* input2, typename Operation::ResultType* result ) { TNL_ASSERT( n > 0, ); TNL_ASSERT( size <= ldInput1, ); throw std::runtime_error("Not Implemented yet Multireduction< Devices::MIC >::reduce"); throw Exceptions::NotImplementedError("Multireduction is not implemented for MIC."); } } // namespace Algorithms Loading Loading
src/TNL/Communicators/MPITypeResolver.h +5 −1 Original line number Diff line number Diff line Loading @@ -19,6 +19,11 @@ struct MPITypeResolver { static inline MPI_Datatype getType() { static_assert( sizeof(Type) == sizeof(char) || sizeof(Type) == sizeof(int) || sizeof(Type) == sizeof(short int) || sizeof(Type) == sizeof(long int), "Fatal Error - Unknown MPI Type"); switch( sizeof( Type ) ) { case sizeof( char ): Loading @@ -30,7 +35,6 @@ struct MPITypeResolver case sizeof( long int ): return MPI_LONG; } TNL_ASSERT_TRUE(false, "Fatal Error - Unknown MPI Type"); }; }; Loading
src/TNL/Containers/Algorithms/ArrayOperationsMIC.hpp +4 −5 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ #include <TNL/Containers/Algorithms/ArrayOperations.h> #include <TNL/Containers/Algorithms/Reduction.h> #include <TNL/Containers/Algorithms/ReductionOperations.h> #include <TNL/Exceptions/NotImplementedError.h> namespace TNL { namespace Containers { Loading Loading @@ -146,7 +147,7 @@ ArrayOperations< Devices::MIC >:: copySTLList( DestinationElement* destination, const std::list< SourceElement >& source ) { TNL_ASSERT( false, std::cerr << "TODO" ); throw Exceptions::NotImplementedError(); } template< typename Element1, Loading Loading @@ -212,8 +213,7 @@ containsValue( const Element* data, TNL_ASSERT_TRUE( data, "Attempted to check data through a nullptr." ); TNL_ASSERT_GE( size, 0, "" ); #ifdef HAVE_MIC TNL_ASSERT( false, ); return false; throw Exceptions::NotImplementedError(); #else throw Exceptions::MICSupportMissing(); #endif Loading @@ -230,8 +230,7 @@ containsOnlyValue( const Element* data, TNL_ASSERT_TRUE( data, "Attempted to check data through a nullptr." ); TNL_ASSERT_GE( size, 0, "" ); #ifdef HAVE_MIC TNL_ASSERT( false, ); return false; throw Exceptions::NotImplementedError(); #else throw Exceptions::MICSupportMissing(); #endif Loading
src/TNL/Containers/Algorithms/CudaMultireductionKernel.h +2 −2 Original line number Diff line number Diff line Loading @@ -302,9 +302,9 @@ CudaMultireductionKernelLauncher( Operation& operation, <<< gridSize, blockSize, shmem >>>( operation, n, size, input1, ldInput1, input2, output); break; case 1: TNL_ASSERT( false, std::cerr << "blockSize should not be 1." << std::endl ); throw std::logic_error( "blockSize should not be 1." ); default: TNL_ASSERT( false, std::cerr << "Block size is " << blockSize.x << " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." << std::endl ); throw std::logic_error( "Block size is " + std::to_string(blockSize.x) + " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." ); } TNL_CHECK_CUDA_DEVICE; Loading
src/TNL/Containers/Algorithms/CudaReductionKernel.h +67 −67 Original line number Diff line number Diff line Loading @@ -331,9 +331,9 @@ struct CudaReductionKernelLauncher <<< gridSize, blockSize, shmem >>>( zero, dataFetcher, reduction, volatileReduction, size, output); break; case 1: TNL_ASSERT( false, std::cerr << "blockSize should not be 1." << std::endl ); throw std::logic_error( "blockSize should not be 1." ); default: TNL_ASSERT( false, std::cerr << "Block size is " << blockSize. x << " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." ); throw std::logic_error( "Block size is " + std::to_string(blockSize.x) + " which is none of 1, 2, 4, 8, 16, 32, 64, 128, 256 or 512." ); } TNL_CHECK_CUDA_DEVICE; Loading
src/TNL/Containers/Algorithms/Multireduction_impl.h +2 −4 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ #include <TNL/Assert.h> #include <TNL/Exceptions/CudaSupportMissing.h> #include <TNL/Exceptions/NotImplementedError.h> #include <TNL/Containers/Algorithms/ReductionOperations.h> #include <TNL/Containers/Algorithms/ArrayOperations.h> #include <TNL/Containers/Algorithms/CudaMultireductionKernel.h> Loading Loading @@ -318,10 +319,7 @@ reduce( Operation& operation, const typename Operation::DataType2* input2, typename Operation::ResultType* result ) { TNL_ASSERT( n > 0, ); TNL_ASSERT( size <= ldInput1, ); throw std::runtime_error("Not Implemented yet Multireduction< Devices::MIC >::reduce"); throw Exceptions::NotImplementedError("Multireduction is not implemented for MIC."); } } // namespace Algorithms Loading