| /oneTBB/examples/migration/recursive_fibonacci/ |
| H A D | task_emulation_layer.h | 85 template <typename C, typename... Args> 94 template <typename F, typename... Args> 95 F create_child(Args&&... args) { in create_child() 99 template <typename F, typename... Args> 105 template <typename F, typename... Args> 106 F* allocate_child(Args&&... args) { in allocate_child() 110 template <typename F, typename... Args> 151 F create_child_impl(Args&&... args) { in create_child_impl() 193 template <typename F, typename... Args> 195 F obj{std::forward<Args>(args)...}; in create_root_task() [all …]
|
| /oneTBB/test/tbb/ |
| H A D | test_join_node_key_matching.cpp | 91 template <typename... Args> 92 concept can_initialize_join_node = requires(tbb::flow::graph& g, Args... args) { 93 tbb::flow::join_node<typename tuple_helper<sizeof...(Args)>::type, 107 template <std::size_t ArgCount, typename CorrectT, typename IncorrectT, typename... Args> 108 struct multiple_arguments_initialization_helper<ArgCount, 0, CorrectT, IncorrectT, Args...> { 114 template <std::size_t IncorrectArgIndex, typename CorrectT, typename IncorrectT, typename... Args> 118 static constexpr bool value = can_initialize_join_node<Args...>; 153 template <std::size_t CurrentArgCount, typename CorrectT, typename... Args> 158 template <typename CorrectT, typename... Args> 159 struct join_node_correct_initialization_helper<0, CorrectT, Args...> { [all …]
|
| H A D | test_parallel_reduce.cpp | 130 template <typename... Args> 131 void run_parallel_reduce( Args&&... args ) const { in run_parallel_reduce() 181 template <typename... Args> 182 void run_parallel_deterministic_reduce( Args&&... args ) const { in run_parallel_deterministic_reduce() 269 template <typename... Args> 271 tbb::parallel_reduce(std::forward<Args>(args)...); 274 template <typename... Args> 279 template <typename... Args> 283 template <typename... Args> 287 template <typename... Args> [all …]
|
| H A D | test_parallel_for.cpp | 224 template <typename Partitioner, typename... Args> 225 void run_parallel_for( Args&&... args ) const { in run_parallel_for() 227 tbb::parallel_for(std::forward<Args>(args)..., part, my_ctx); in run_parallel_for() 230 template <typename... Args> 231 void run_overload( Args&&... args ) const { in run_overload() 235 tbb::parallel_for(std::forward<Args>(args)..., my_ctx); in run_overload() 307 template <typename... Args> 308 concept can_call_parallel_for_basic = requires( Args&&... args ) { 309 tbb::parallel_for(std::forward<Args>(args)...); 312 template <typename... Args> [all …]
|
| H A D | test_collaborative_call_once.cpp | 59 template<typename T, typename... Args> 60 void operator()(T first_op, Args&&... args) { in operator ()() 62 (*this)(std::forward<Args>(args)...); in operator ()() 75 template<typename Fn, typename... Args> 76 void call_once_in_for_loop(std::size_t N, Fn&& body, Args&&... args) { in call_once_in_for_loop() 83 template<typename Fn, typename... Args> 84 void call_once_in_parallel_for(std::size_t N, Fn&& body, Args&&... args) { in call_once_in_parallel_for() 87 auto stored_pack = tbb::detail::d0::save_pack(std::forward<Args>(args)...); in call_once_in_parallel_for() 102 template<typename Fn, typename... Args> 103 void call_once_threads(std::size_t N, Fn&& body, Args&&... args) { in call_once_threads() [all …]
|
| H A D | test_mutex.cpp | 186 template <typename... Args> 187 concept mutexes = (... && tbb::detail::scoped_lockable<Args>); 189 template <typename... Args> 190 concept rw_mutexes = (... && tbb::detail::rw_scoped_lockable<Args>);
|
| H A D | test_indexer_node.cpp | 582 template <typename... Args, std::size_t... Seq> 583 void test_follows_impl(std::tuple<Args...> t, tbb::detail::index_sequence<Seq...> seq) { in test_follows_impl() 585 using indexer_output_t = typename indexer_node<Args...>::output_type; in test_follows_impl() 588 auto bn = std::make_tuple(broadcast_node<Args>(g)...); in test_follows_impl() 590 indexer_node<Args...> my_indexer(follows(std::get<Seq>(bn)...)); in test_follows_impl() 598 template <typename... Args> 600 test_follows_impl(std::tuple<Args...>(), tbb::detail::make_index_sequence<sizeof...(Args)>()); in test_follows()
|
| /oneTBB/test/common/ |
| H A D | test_follows_and_precedes_api.h | 33 template <typename... Args> 34 struct testing_method_follows<tbb::flow::join_node<Args...>> : std::integral_constant<int, 1> {}; 35 template <typename... Args> 38 template <typename... Args> 40 template <typename... Args> 43 template <typename... Args> 128 template <typename... Args> 130 template <typename... Args> 132 template <typename... Args> 134 template <typename... Args> [all …]
|
| H A D | custom_allocators.h | 177 template <typename U, typename... Args> 178 void construct( U* ptr, Args&&... args ) { in construct() 179 base_traits::construct(*this, ptr, std::forward<Args>(args)...); in construct() 288 template <typename U, typename... Args> 289 void construct( U* ptr, Args&&... args ) { in construct() 291 base_traits::construct(*this, ptr, std::forward<Args>(args)...); in construct() 424 template <typename U, typename... Args> 425 void construct( U* ptr, Args&&... args ) { in construct() 426 base_traits::construct(*this, ptr, std::forward<Args>(args)...); in construct()
|
| /oneTBB/include/oneapi/tbb/detail/ |
| H A D | _small_object_pool.h | 51 template <typename Type, typename... Args> 52 Type* new_object(execution_data& ed, Args&&... args) { in new_object() 55 auto constructed_object = new(allocated_object) Type(std::forward<Args>(args)...); in new_object() 59 template <typename Type, typename... Args> 60 Type* new_object(Args&&... args) { in new_object() 63 auto constructed_object = new(allocated_object) Type(std::forward<Args>(args)...); in new_object()
|
| H A D | _template_helpers.h | 40 template <typename... Args> 41 using void_t = typename void_impl<Args...>::type; 117 template <typename First, typename... Args> 118 struct conjunction<First, Args...> 127 template <typename First, typename... Args> 128 struct disjunction<First, Args...> 164 template <std::size_t N, typename... Args> 170 struct pack_element<N, T, Args...> { 174 template <typename T, typename... Args> 175 struct pack_element<0, T, Args...> { [all …]
|
| H A D | _utils.h | 223 template <typename... Args> 224 void assert_pointers_valid(Args*... p) { in assert_pointers_valid() 350 template <typename F, typename... Args> in atomic_do_once() 351 auto invoke(F&& f, Args&&... args) in atomic_do_once() 353 noexcept(std::is_nothrow_invocable_v<F, Args...>) in atomic_do_once() 354 -> std::invoke_result_t<F, Args...> in atomic_do_once() 356 return std::invoke(std::forward<F>(f), std::forward<Args>(args)...); in atomic_do_once() 359 noexcept(noexcept(std::forward<F>(f)(std::forward<Args>(args)...))) in atomic_do_once() 360 -> decltype(std::forward<F>(f)(std::forward<Args>(args)...)) in atomic_do_once() 362 return std::forward<F>(f)(std::forward<Args>(args)...); in atomic_do_once()
|
| H A D | _flow_graph_node_set_impl.h | 103 template <typename... Args> 104 struct is_async_node<async_node<Args...>> : std::true_type {}; 241 template<typename NodeType, typename OrderFlagType, typename... Args> 242 void make_edges(const node_set<OrderFlagType, Args...>& s, NodeType& node) { 247 template <typename NodeType, typename OrderFlagType, typename... Args> 248 void make_edges(NodeType& node, const node_set<OrderFlagType, Args...>& s) {
|
| H A D | _flow_graph_types_impl.h | 54 template<int N, template<class> class PT, typename... Args> 55 struct wrap_tuple_elements<N, PT, std::tuple<Args...> >{ 56 typedef typename std::tuple<PT<Args>... > type; 59 template<int N, template<class> class PT, typename KeyTraits, typename... Args> 60 struct wrap_key_tuple_elements<N, PT, KeyTraits, std::tuple<Args...> > { 63 typedef typename std::tuple<PT<KeyTrait<K, KHash, Args> >... > type;
|
| /oneTBB/test/conformance/ |
| H A D | conformance_parallel_scan.cpp | 63 template<typename... Args> 64 void operator()(Args&&... args) { in operator ()() 65 oneapi::tbb::parallel_scan(std::forward<Args>(args)..., Partitioner()); in operator ()() 71 template<typename... Args> 72 void operator()(Args&&... args) { in operator ()() 73 oneapi::tbb::parallel_scan(std::forward<Args>(args)...); in operator ()() 140 template <typename... Args> 143 Args&&... args) { in test_pscan_invoke() 144 auto result = oneapi::tbb::parallel_scan(std::forward<Args>(args)...); in test_pscan_invoke()
|
| H A D | conformance_flowgraph.h | 414 void test_body_exec(Args... node_args) { in test_body_exec() 431 template<typename Node, typename Body, typename ...Args> 432 void test_copy_body_function(Args... node_args) { in test_copy_body_function() 446 template<typename Node, typename InputType, typename ...Args> 447 void test_buffering(Args... node_args) { in test_buffering() 500 template<typename Node, typename ...Args> 501 void test_forwarding_single_push(Args... node_args) { in test_forwarding_single_push() 583 template<typename Node, typename ...Args> 584 void test_copy_ctor_for_buffering_nodes(Args... node_args) { in test_copy_ctor_for_buffering_nodes() 627 template<typename Node, typename InputType, typename ...Args> [all …]
|
| H A D | conformance_graph.cpp | 86 template<typename Node, typename ...Args> 87 void test_buffering_nodes_rf_reset_protocol(Args... node_body){ in test_buffering_nodes_rf_reset_protocol() 105 template<typename Node, typename InputType, typename ...Args> 106 void test_nodes_with_body_rf_reset_bodies(Args... node_args){ in test_nodes_with_body_rf_reset_bodies()
|
| /oneTBB/include/oneapi/tbb/ |
| H A D | concurrent_queue.h | 195 template <typename... Args> 196 void emplace( Args&&... args ) { in emplace() 243 template <typename... Args> 244 void internal_push( Args&&... args ) { in internal_push() 485 template <typename... Args> 486 void emplace( Args&&... args ) { in emplace() 490 template <typename... Args> 491 bool try_emplace( Args&&... args ) { in try_emplace() 556 template <typename... Args> 557 void internal_push( Args&&... args ) { in internal_push() [all …]
|
| H A D | collaborative_call_once.h | 141 template <typename Fn, typename... Args> 142 friend void collaborative_call_once(collaborative_once_flag& flag, Fn&& f, Args&&... args); 207 template <typename Fn, typename... Args> 208 void collaborative_call_once(collaborative_once_flag& flag, Fn&& fn, Args&&... args) { in collaborative_call_once() 215 auto stored_pack = save_pack(std::forward<Args>(args)...); in collaborative_call_once() 218 auto func = [&] { fn(std::forward<Args>(args)...); }; in collaborative_call_once()
|
| H A D | flow_graph.h | 943 template <typename... Args> 1101 template <typename... Args> 1378 template <typename... Args> 1565 template <typename... Args> 1676 template <typename... Args> 2017 template <typename... Args> 2154 template <typename... Args> 2181 template <typename... Args> 2347 template <typename... Args> 2374 template <typename... Args> [all …]
|
| H A D | tbb_allocator.h | 88 template<typename U, typename... Args> 89 void construct(U *p, Args&&... args) in construct() 90 { ::new (p) U(std::forward<Args>(args)...); } in construct()
|
| H A D | concurrent_vector.h | 415 template <typename... Args> 416 iterator emplace_back( Args&&... args ) { in emplace_back() 417 return internal_emplace_back(std::forward<Args>(args)...); in emplace_back() 773 template <typename... Args> 774 iterator internal_emplace_back( Args&&... args ) { in internal_emplace_back() 790 template <typename... Args> 827 template <typename... Args> 852 template <typename... Args> 863 template <typename... Args> 900 template <typename... Args> [all …]
|
| H A D | cache_aligned_allocator.h | 77 template<typename U, typename... Args> 78 void construct(U *p, Args&&... args) in construct() 79 { ::new (p) U(std::forward<Args>(args)...); } in construct()
|
| H A D | parallel_invoke.h | 201 template <typename... Args, typename T, typename... Fs> 202 struct invoke_helper<std::tuple<Args...>, T, Fs...> : invoke_helper<std::tuple<Args..., T>, Fs...> …
|
| H A D | scalable_allocator.h | 252 template<typename U, typename... Args> 253 void construct(U *p, Args&&... args) in construct() 254 { ::new((void *)p) U(std::forward<Args>(args)...); } in construct()
|