| /oneTBB/test/tbb/ |
| H A D | test_join_node_preview.cpp | 39 …<msg_t, tbb::flow::join_node<JoinOutputType>, tbb::flow::buffer_node<msg_t>>(messages_for_follows); in jn_follows_and_precedes() 41 <msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::queueing>>(messages_for_follows); in jn_follows_and_precedes() 43 …<msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::reserving>, tbb::flow::buffer_node<msg_t>>… in jn_follows_and_precedes() 51 …<msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::key_matching<msg_t, hash_compare>>, tbb::f… in jn_follows_and_precedes() 55 <msg_t, tbb::flow::join_node<JoinOutputType>>(messages_for_precedes); in jn_follows_and_precedes() 57 <msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::queueing>>(messages_for_precedes); in jn_follows_and_precedes() 59 <msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::reserving>>(messages_for_precedes); in jn_follows_and_precedes() 61 <msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::key_matching<msg_t, hash_compare>>> in jn_follows_and_precedes() 73 …<msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::key_matching<std::size_t>>, tbb::flow::buf… in jn_msg_key_matching_follows_and_precedes() 76 <msg_t, tbb::flow::join_node<JoinOutputType, tbb::flow::key_matching<std::size_t>>> in jn_msg_key_matching_follows_and_precedes()
|
| H A D | test_join_node_key_matching.cpp | 35 join_node j1(g, body_int, body_int, body_double); in test_deduction_guides() 36 static_assert(std::is_same_v<decltype(j1), join_node<tuple_type, key_matching<int>>>); in test_deduction_guides() 43 join_node j2(follows(b1, b2, b3), body_int, body_int, body_double); in test_deduction_guides() 44 static_assert(std::is_same_v<decltype(j2), join_node<tuple_type, key_matching<int>>>); in test_deduction_guides() 46 join_node j3(precedes(b4), body_int, body_int, body_double); in test_deduction_guides() 47 static_assert(std::is_same_v<decltype(j3), join_node<tuple_type, key_matching<int>>>); in test_deduction_guides() 50 join_node j4(j1); in test_deduction_guides() 51 static_assert(std::is_same_v<decltype(j4), join_node<tuple_type, key_matching<int>>>); in test_deduction_guides() 93 tbb::flow::join_node<typename tuple_helper<sizeof...(Args)>::type,
|
| H A D | test_join_node_msg_key_matching.cpp | 46 join_node<tuple_type, key_matching<int> > j0(g); in test_deduction_guides() 47 join_node j3(j0); in test_deduction_guides() 48 static_assert(std::is_same_v<decltype(j3), join_node<tuple_type, key_matching<int>>>); in test_deduction_guides()
|
| H A D | test_join_node.cpp | 38 typedef typename tbb::flow::join_node<OutputTupleType, tbb::flow::tag_matching> join_node_type; 53 typedef tbb::flow::join_node<input_tuple_type, tbb::flow::reserving> input_join_type; 119 typedef tbb::flow::join_node<JType, tbb::flow::tag_matching> join_node_type;
|
| H A D | test_tbb_header.cpp | 210 TestTypeDefinitionPresence2(flow::join_node<intpair, tbb::flow::reserving> ); in DefinitionPresence() 211 TestTypeDefinitionPresence2(flow::join_node<intpair, tbb::flow::key_matching<int> > ); in DefinitionPresence()
|
| H A D | test_flow_graph_whitebox.cpp | 118 tbb::flow::join_node<std::tuple<int,int>,tbb::flow::reserving> jnode(g); in TestBufferingNode() 361 tbb::flow::join_node<std::tuple<int>, JNODE_TYPE> qj(g); in TestSimpleSuccessorArc() 379 tbb::flow::join_node<my_tuple, tbb::flow::tag_matching> qj(g, in TestSimpleSuccessorArc() 404 tbb::flow::join_node<std::tuple<int,int>, tbb::flow::reserving> rj(g); in TestJoinNode() 687 tbb::flow::join_node<std::tuple<int,int>,tbb::flow::reserving> jnode(g); in TestSequencerNode() 725 tbb::flow::join_node<std::tuple<int,int>, tbb::flow::reserving> jn(g); in TestInputNode()
|
| H A D | test_profiling.cpp | 169 tbb::flow::join_node<std::tuple<int>> node(g);
|
| H A D | test_overwrite_node.cpp | 246 tbb::flow::join_node<std::tuple<size_t>, tbb::flow::reserving> j_node(g);
|
| /oneTBB/test/conformance/ |
| H A D | conformance_join_node.cpp | 47 join_node<tuple_type> j0(g); in test_deduction_guides() 50 join_node j1(follows(b1, b2, b3)); in test_deduction_guides() 53 join_node j2(follows(b1, b2, b3), reserving()); in test_deduction_guides() 56 join_node j3(precedes(b4)); in test_deduction_guides() 59 join_node j4(precedes(b4), reserving()); in test_deduction_guides() 63 join_node j5(j0); in test_deduction_guides() 77 oneapi::tbb::flow::join_node<std::tuple<int>> node1(g); 83 oneapi::tbb::flow::join_node<std::tuple<int>> node_copy(node1); 101 oneapi::tbb::flow::join_node<std::tuple<int>> node_copy2(node1); 263 oneapi::tbb::flow::join_node<std::tuple<int>> node(g); [all …]
|
| H A D | conformance_composite_node.cpp | 27 oneapi::tbb::flow::join_node<std::tuple<int,int>, oneapi::tbb::flow::queueing> j; 102 oneapi::tbb::flow::join_node< std::tuple< int, int >, oneapi::tbb::flow::queueing > j(g);
|
| H A D | conformance_graph.cpp | 150 oneapi::tbb::flow::join_node<std::tuple<int>, oneapi::tbb::flow::queueing> testing_node(g); in test_join_node_rf_reset_protocol() 202 oneapi::tbb::flow::join_node< std::tuple< int >, oneapi::tbb::flow::queueing > j(g);
|
| /oneTBB/doc/main/reference/ |
| H A D | type_specified_message_keys.rst | 3 Type-specified message keys for join_node 16 The extension allows a key matching ``join_node`` to obtain keys via functions associated with 18 provide a function object for each input port of ``join_node``. 33 The extension adds a special constructor to the ``join_node`` interface when the 39 join_node( graph &g ) 41 When constructed this way, a ``join_node`` calls the 59 used to construct the ``join_node``, and ``K`` is the key type 69 `join_node Specification <https://spec.oneapi.com/versions/latest/elements/oneTBB/source/flow_graph…
|
| H A D | constructors_for_nodes.rst | 90 // join_node 91 explicit join_node(follows(...), Policy = Policy()); 92 explicit join_node(precedes(...), Policy = Policy());
|
| H A D | helpers_for_expressing_graphs.rst | 62 join_node<std::tuple<int, int, int>> join(g); 104 join_node join(follows(handlers));
|
| /oneTBB/doc/main/tbb_userguide/ |
| H A D | Flow_Graph_Reservation.rst | 8 ``join_node`` has four possible policies: ``queueing``, ``reserving``, 11 ``join_node`` does not have internal buffering, and it does not pull 16 message will be pulled by the ``join_node``. 19 To support the reserving ``join_node`` some nodes support 23 - When a node connected to a reserving ``join_node`` in push state 24 tries to push a message, the ``join_node`` always rejects the push 32 reserving ``join_node`` will create a message using the reserved 49 ``join_node`` input ports must be reservable. 66 typedef join_node<tuple<int,int>, reserving> join_type; 73 // join_node predecessors are both reservable buffer_nodes [all …]
|
| H A D | create_token_based_system.rst | 17 ``join_node``s can be used to create an analogous system. A ``join_node`` has 26 class join_node; 37 - ``reserving``. This type of policy causes the ``join_node`` to do no 50 The ``input_node`` and ``buffer_node`` are connected to a reserving ``join_node``. 52 by the reserving ``join_node``, and the reserving ``join_node`` will only pull 80 join_node< tuple_t, reserving > j(g);
|
| /oneTBB/include/oneapi/tbb/detail/ |
| H A D | _flow_graph_nodes_deduction.h | 164 join_node(const node_set<order::following, Predecessors...>&, Policy) 165 ->join_node<std::tuple<typename Predecessors::output_type...>, 169 join_node(const node_set<order::preceding, Successor, Successors...>&, Policy) 170 ->join_node<typename Successor::input_type, Policy>; 173 join_node(const node_set<order::following, Predecessors...>) 174 ->join_node<std::tuple<typename Predecessors::output_type...>, 178 join_node(const node_set<order::preceding, Successor, Successors...>) 179 ->join_node<typename Successor::input_type, queueing>; 183 join_node(GraphOrProxy&&, Body, Bodies...) 184 ->join_node<std::tuple<input_t<decltype(decide_on_callable_type<Body>(0))>,
|
| /oneTBB/include/oneapi/tbb/ |
| H A D | flow_graph.h | 2138 template<typename OutputTuple, typename JP=queueing> class join_node; variable 2148 __TBB_NOINLINE_SYM explicit join_node(graph &g) : unfolded_type(g) { in join_node() function 2155 …__TBB_NOINLINE_SYM join_node(const node_set<Args...>& nodes, reserving = reserving()) : join_node(… 2160 __TBB_NOINLINE_SYM join_node(const join_node &other) : unfolded_type(other) { in join_node() function 2175 __TBB_NOINLINE_SYM explicit join_node(graph &g) : unfolded_type(g) { in join_node() function 2182 …__TBB_NOINLINE_SYM join_node(const node_set<Args...>& nodes, queueing = queueing()) : join_node(no… 2187 __TBB_NOINLINE_SYM join_node(const join_node &other) : unfolded_type(other) { in join_node() function 2223 join_node(graph &g) : unfolded_type(g) {} in join_node() function 2312 : join_node(nodes.graph_reference(), bodies...) { in join_node() 2317 __TBB_NOINLINE_SYM join_node(const join_node &other) : unfolded_type(other) { in join_node() function [all …]
|
| /oneTBB/examples/graph/ |
| H A D | README.md | 8 …g_philosophers | An implementation of dining philosophers in graph using the reserving `join_node`.
|
| /oneTBB/examples/graph/cholesky/ |
| H A D | README.md | 10 …join_node`s that combine the inputs required for each call. So for example, there is only a single…
|
| /oneTBB/examples/graph/dining_philosophers/ |
| H A D | README.md | 2 … problem demonstrates `oneapi::tbb::flow` and the use of the reserving `join_node` to solve the po…
|
| /oneTBB/test/common/ |
| H A D | test_follows_and_precedes_api.h | 34 struct testing_method_follows<tbb::flow::join_node<Args...>> : std::integral_constant<int, 1> {}; 138 struct testing_method_precedes<tbb::flow::join_node<Args...>> : std::integral_constant<int, 2> {};
|
| H A D | test_join_node_multiple_predecessors.h | 27 using join_node_t = join_node<std::tuple<continue_msg, continue_msg, continue_msg>, reserving>;
|
| /oneTBB/examples/ |
| H A D | README.md | 11 …philosophers | An implementation of dining philosophers in a graph using the reserving `join_node`.
|
| /oneTBB/doc/GSG/ |
| H A D | samples.rst | 19 …* `An implementation of dining philosophers in graph using the reserving join_node <https://github…
|