Lines Matching refs:T
74 template <typename T>
76 T operator()() { return 0; } in operator ()()
79 template <typename T>
81 T operator()() { return 7; } in operator ()()
84 template <typename T>
86 T operator()(T left, T right ) const { in operator ()()
91 template <typename T>
93 T operator()(const T& left, const T& right ) const { in operator ()()
98 template <typename T>
99 T my_combine( T left, T right) { return left + right; } in my_combine()
101 template <typename T>
102 T my_combine_ref( const T &left, const T &right) { return left + right; } in my_combine_ref()
104 template <typename T>
107 CombineEachHelper(T& _result) : my_result(_result) {} in CombineEachHelper()
108 void operator()(const T& new_bit) { my_result += new_bit; } in operator ()()
110 T& my_result;
113 template <typename T>
116 CombineEachHelperCnt(T& _result, int& _nbuckets) : my_result(_result), nBuckets(_nbuckets) {} in CombineEachHelperCnt()
117 void operator()(const T& new_bit) { my_result += new_bit; ++nBuckets; } in operator ()()
119 T& my_result;
123 template <typename T>
126 typedef std::vector<T, oneapi::tbb::tbb_allocator<T> > ContainerType;
127 CombineEachVectorHelper(T& _result) : my_result(_result) { } in CombineEachVectorHelper()
135 T& my_result;
141 template <typename T>
144 oneapi::tbb::combinable<T> &sums;
148 ParallelScalarBody ( oneapi::tbb::combinable<T> &_sums ) : sums(_sums) { } in ParallelScalarBody()
153 T& my_local = sums.local(was_there); in operator ()()
162 template <typename T>
165 oneapi::tbb::combinable<T> &sums;
169 ParallelScalarBodyNoInit ( oneapi::tbb::combinable<T> &_sums ) : sums(_sums) { } in ParallelScalarBodyNoInit()
179 template< typename T >
188 T combine_sum(0); in RunParallelScalarTests()
189 T combine_ref_sum(0); in RunParallelScalarTests()
190 T combine_finit_sum(0); in RunParallelScalarTests()
191 T combine_each_sum(0); in RunParallelScalarTests()
192 T copy_construct_sum(0); in RunParallelScalarTests()
193 T copy_assign_sum(0); in RunParallelScalarTests()
194 T move_construct_sum(0); in RunParallelScalarTests()
195 T move_assign_sum(0); in RunParallelScalarTests()
201 oneapi::tbb::combinable<T> sums; in RunParallelScalarTests()
202 …tbb::parallel_for( oneapi::tbb::blocked_range<int>( 0, N, 10000 ), ParallelScalarBody<T>( sums ) ); in RunParallelScalarTests()
203 combine_sum += sums.combine(my_combine<T>); in RunParallelScalarTests()
204 combine_ref_sum += sums.combine(my_combine_ref<T>); in RunParallelScalarTests()
207 oneapi::tbb::combinable<T> sums_to_clear; in RunParallelScalarTests()
208 …parallel_for( oneapi::tbb::blocked_range<int>(0, N, 10000), ParallelScalarBody<T>(sums_to_clear) ); in RunParallelScalarTests()
210 … CHECK_MESSAGE(sums_to_clear.combine(my_combine<T>) == 0, "Failed combinable::clear test"); in RunParallelScalarTests()
213 FunctorAddFinit<T> my_finit_decl; in RunParallelScalarTests()
214 oneapi::tbb::combinable<T> finit_combinable(my_finit_decl); in RunParallelScalarTests()
215 …r( oneapi::tbb::blocked_range<int>( 0, N, 10000 ), ParallelScalarBodyNoInit<T>( finit_combinable )… in RunParallelScalarTests()
216 combine_finit_sum += finit_combinable.combine(my_combine<T>); in RunParallelScalarTests()
219 CombineEachHelper<T> my_helper(combine_each_sum); in RunParallelScalarTests()
223 oneapi::tbb::combinable<T> copy_constructed(sums); in RunParallelScalarTests()
224 copy_construct_sum += copy_constructed.combine(my_combine<T>); in RunParallelScalarTests()
227 oneapi::tbb::combinable<T> assigned; in RunParallelScalarTests()
229 copy_assign_sum += assigned.combine(my_combine<T>); in RunParallelScalarTests()
232 oneapi::tbb::combinable<T> moved1(std::move(sums)); in RunParallelScalarTests()
233 move_construct_sum += moved1.combine(my_combine<T>); in RunParallelScalarTests()
236 oneapi::tbb::combinable<T> moved2; in RunParallelScalarTests()
238 move_assign_sum += moved2.combine(my_combine<T>); in RunParallelScalarTests()
254 template <typename T>
257 oneapi::tbb::combinable< std::vector<T, oneapi::tbb::tbb_allocator<T> > > &locals;
261 …ParallelVectorForBody ( oneapi::tbb::combinable< std::vector<T, oneapi::tbb::tbb_allocator<T> > > … in ParallelVectorForBody() argument
264 T one = 1; in operator ()()
273 template< typename T >
275 typedef std::vector<T, oneapi::tbb::tbb_allocator<T> > ContainerType; in RunParallelVectorTests()
284 T defaultConstructed_sum(0); in RunParallelVectorTests()
285 T copyConstructed_sum(0); in RunParallelVectorTests()
286 T copyAssigned_sum(0); in RunParallelVectorTests()
287 T moveConstructed_sum(0); in RunParallelVectorTests()
288 T moveAssigned_sum(0); in RunParallelVectorTests()
297 …tbb::parallel_for( oneapi::tbb::blocked_range<int> (0, N, 10000), ParallelVectorForBody<T>( vs ) ); in RunParallelVectorTests()
298 CombineEachVectorHelper<T> MyCombineEach(defaultConstructed_sum); in RunParallelVectorTests()
303 CombineEachVectorHelper<T> MyCombineEach2(copyConstructed_sum); in RunParallelVectorTests()
309 CombineEachVectorHelper<T> MyCombineEach3(copyAssigned_sum); in RunParallelVectorTests()
314 CombineEachVectorHelper<T> MyCombineEach4(moveConstructed_sum); in RunParallelVectorTests()
319 CombineEachVectorHelper<T> MyCombineEach5(moveAssigned_sum); in RunParallelVectorTests()
348 template <typename T>
354 FunctorAddFinit7<T> my_finit7_decl; in RunAssignmentAndCopyConstructorTest()
355 oneapi::tbb::combinable<T> create1(my_finit7_decl); in RunAssignmentAndCopyConstructorTest()
356 …REQUIRE_MESSAGE(7 == create1.combine(my_combine<T>), "Unexpected combine result for combinable obj… in RunAssignmentAndCopyConstructorTest()
359 oneapi::tbb::combinable<T> copy1(create1); in RunAssignmentAndCopyConstructorTest()
360 …REQUIRE_MESSAGE(7 == copy1.combine(my_combine<T>), "Unexpected combine result for copy-constructed… in RunAssignmentAndCopyConstructorTest()
363 FunctorAddFinit<T> my_finit_decl; in RunAssignmentAndCopyConstructorTest()
364 oneapi::tbb::combinable<T> assign1(my_finit_decl); in RunAssignmentAndCopyConstructorTest()
366 …REQUIRE_MESSAGE(7 == assign1.combine(my_combine<T>), "Unexpected combine result for copy-assigned … in RunAssignmentAndCopyConstructorTest()
369 oneapi::tbb::combinable<T> move1(std::move(create1)); in RunAssignmentAndCopyConstructorTest()
370 …REQUIRE_MESSAGE(7 == move1.combine(my_combine<T>), "Unexpected combine result for move-constructed… in RunAssignmentAndCopyConstructorTest()
373 oneapi::tbb::combinable<T> move2; in RunAssignmentAndCopyConstructorTest()
375 …REQUIRE_MESSAGE(7 == move2.combine(my_combine<T>), "Unexpected combine result for move-assigned co… in RunAssignmentAndCopyConstructorTest()