Loading src/Benchmarks/Sorting/Measurer.h +1 −1 Original line number Diff line number Diff line Loading @@ -10,10 +10,10 @@ #ifdef HAVE_CUDA #ifdef HAVE_CUDA_SAMPLES #include "ReferenceAlgorithms/MancaQuicksort.h" #include "ReferenceAlgorithms/NvidiaBitonicSort.h" #endif #include "ReferenceAlgorithms/CedermanQuicksort.h" #include "ReferenceAlgorithms/ThrustRadixsort.h" #include "ReferenceAlgorithms/NvidiaBitonicSort.h" #endif #include "timer.h" Loading src/Benchmarks/Sorting/ReferenceAlgorithms/CedermanQuicksort.h +1 −1 Original line number Diff line number Diff line Loading @@ -1093,7 +1093,7 @@ int gpuqsort(unsigned int *data, unsigned int size, unsigned int blockscount, un struct CedermanQuicksort { static void sort( Containers::ArrayView< int, Devices::Cuda >& array ) static void sort( TNL::Containers::ArrayView< int, TNL::Devices::Cuda >& array ) { gpuqsort( ( unsigned int * ) array.getData(), ( unsigned int ) array.getSize() ); } Loading src/Benchmarks/Sorting/ReferenceAlgorithms/MancaQuicksort.h +1 −1 Original line number Diff line number Diff line Loading @@ -1318,7 +1318,7 @@ void CUDA_Quicksort_64(double* inputData,double* outputData, uint dataSize, uint struct MancaQuicksort { static void sort( Containers::ArrayView< int, Devices::Cuda >& array ) static void sort( TNL::Containers::ArrayView< int, TNL::Devices::Cuda >& array ) { double timer; CUDA_Quicksort( ( unsigned * ) array.getData(), (unsigned * ) array.getData(), array.getSize(), 256, 0, &timer ); Loading src/Benchmarks/Sorting/ReferenceAlgorithms/NvidiaBitonicSort.h +9 −1 Original line number Diff line number Diff line #ifdef HAVE_CUDA_SAMPLES #include <6_Advanced/sortingNetworks/bitonicSort.cu> #endif #include <TNL/Containers/Array.h> namespace TNL { struct NvidiaBitonicSort { static void sort( Containers::ArrayView< int, Devices::Cuda >& view ) { Array<int, Devices::Cuda> arr; #ifdef HAVE_CUDA_SAMPLES Containers::Array<int, Devices::Cuda> arr; arr = view; bitonicSort((unsigned *)view.getData(), (unsigned *)arr.getData(), (unsigned *)view.getData(), (unsigned *)arr.getData(), 1, arr.getSize(), 1); cudaDeviceSynchronize(); #endif } }; } // namespace TNL src/Benchmarks/Sorting/ReferenceAlgorithms/ThrustRadixsort.h +3 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ #include <thrust/execution_policy.h> #include <TNL/Containers/Array.h> namespace TNL { struct ThrustRadixsort { Loading @@ -11,3 +12,5 @@ struct ThrustRadixsort cudaDeviceSynchronize(); } }; } // namespace TNL Loading
src/Benchmarks/Sorting/Measurer.h +1 −1 Original line number Diff line number Diff line Loading @@ -10,10 +10,10 @@ #ifdef HAVE_CUDA #ifdef HAVE_CUDA_SAMPLES #include "ReferenceAlgorithms/MancaQuicksort.h" #include "ReferenceAlgorithms/NvidiaBitonicSort.h" #endif #include "ReferenceAlgorithms/CedermanQuicksort.h" #include "ReferenceAlgorithms/ThrustRadixsort.h" #include "ReferenceAlgorithms/NvidiaBitonicSort.h" #endif #include "timer.h" Loading
src/Benchmarks/Sorting/ReferenceAlgorithms/CedermanQuicksort.h +1 −1 Original line number Diff line number Diff line Loading @@ -1093,7 +1093,7 @@ int gpuqsort(unsigned int *data, unsigned int size, unsigned int blockscount, un struct CedermanQuicksort { static void sort( Containers::ArrayView< int, Devices::Cuda >& array ) static void sort( TNL::Containers::ArrayView< int, TNL::Devices::Cuda >& array ) { gpuqsort( ( unsigned int * ) array.getData(), ( unsigned int ) array.getSize() ); } Loading
src/Benchmarks/Sorting/ReferenceAlgorithms/MancaQuicksort.h +1 −1 Original line number Diff line number Diff line Loading @@ -1318,7 +1318,7 @@ void CUDA_Quicksort_64(double* inputData,double* outputData, uint dataSize, uint struct MancaQuicksort { static void sort( Containers::ArrayView< int, Devices::Cuda >& array ) static void sort( TNL::Containers::ArrayView< int, TNL::Devices::Cuda >& array ) { double timer; CUDA_Quicksort( ( unsigned * ) array.getData(), (unsigned * ) array.getData(), array.getSize(), 256, 0, &timer ); Loading
src/Benchmarks/Sorting/ReferenceAlgorithms/NvidiaBitonicSort.h +9 −1 Original line number Diff line number Diff line #ifdef HAVE_CUDA_SAMPLES #include <6_Advanced/sortingNetworks/bitonicSort.cu> #endif #include <TNL/Containers/Array.h> namespace TNL { struct NvidiaBitonicSort { static void sort( Containers::ArrayView< int, Devices::Cuda >& view ) { Array<int, Devices::Cuda> arr; #ifdef HAVE_CUDA_SAMPLES Containers::Array<int, Devices::Cuda> arr; arr = view; bitonicSort((unsigned *)view.getData(), (unsigned *)arr.getData(), (unsigned *)view.getData(), (unsigned *)arr.getData(), 1, arr.getSize(), 1); cudaDeviceSynchronize(); #endif } }; } // namespace TNL
src/Benchmarks/Sorting/ReferenceAlgorithms/ThrustRadixsort.h +3 −0 Original line number Diff line number Diff line Loading @@ -2,6 +2,7 @@ #include <thrust/execution_policy.h> #include <TNL/Containers/Array.h> namespace TNL { struct ThrustRadixsort { Loading @@ -11,3 +12,5 @@ struct ThrustRadixsort cudaDeviceSynchronize(); } }; } // namespace TNL