diff --git a/performance/merge_sort_by_key.test b/performance/comparison_sort_by_key.test similarity index 74% rename from performance/merge_sort_by_key.test rename to performance/comparison_sort_by_key.test index 504c7e4c5..b7b02b28a 100644 --- a/performance/merge_sort_by_key.test +++ b/performance/comparison_sort_by_key.test @@ -2,6 +2,15 @@ PREAMBLE = \ """ #include #include + template + struct my_less + { + inline __host__ __device__ + bool operator()(const T &lhs, const T &rhs) const + { + return lhs < rhs; + } + }; """ INITIALIZE = \ @@ -18,7 +27,8 @@ INITIALIZE = \ // test sort thrust::stable_sort_by_key(h_keys.begin(), h_keys.end(), h_values.begin()); - thrust::detail::backend::cuda::detail::stable_merge_sort_by_key(d_keys.begin(), d_keys.end(), d_values.begin(), thrust::less<$KeyType>()); + + thrust::stable_sort_by_key(d_keys.begin(), d_keys.end(), d_values.begin(), my_less<$KeyType>()); ASSERT_EQUAL(d_keys, h_keys); ASSERT_EQUAL(d_values, h_values); @@ -27,7 +37,7 @@ INITIALIZE = \ TIME = \ """ thrust::copy(d_keys_copy.begin(), d_keys_copy.end(), d_keys.begin()); - thrust::detail::backend::cuda::detail::stable_merge_sort_by_key(d_keys.begin(), d_keys.end(), d_values.begin(), thrust::less<$KeyType>()); + thrust::stable_sort_by_key(d_keys.begin(), d_keys.end(), d_values.begin(), my_less<$KeyType>()); """ FINALIZE = \ diff --git a/performance/report.py b/performance/report.py index 2436c3ab2..fe9ce1bef 100644 --- a/performance/report.py +++ b/performance/report.py @@ -15,7 +15,7 @@ for method in ['indirect_sort']: output(method + '.xml', 'Sort', 'VectorLength', 'Time', plot='semilogx', title='Indirect Sorting', format=format) -for method in ['sort', 'merge_sort', 'radix_sort']: +for method in ['sort', 'comparison_sort', 'radix_sort']: output(method + '.xml', 'KeyType', 'InputSize', 'Sorting', title='thrust::' + method, format=format) output(method + '_by_key.xml', 'KeyType', 'InputSize', 'Sorting', title='thrust::' + method + '_by_key', format=format)