On Wed, Jun 7, 2023 at 9:30 AM Zhirun Yan <zhirun....@intel.com> wrote: > > This patch enables to chose new scheduler model. Must define > RTE_GRAPH_MODEL_SELECT before including rte_graph_worker.h > to enable specific model choosing. > > Signed-off-by: Haiyue Wang <haiyue.w...@intel.com> > Signed-off-by: Cunming Liang <cunming.li...@intel.com> > Signed-off-by: Zhirun Yan <zhirun....@intel.com> > --- > lib/graph/rte_graph_worker.h | 12 ++++++++++++ > 1 file changed, 12 insertions(+) >
> rte_graph_walk(struct rte_graph *graph) > { > +#if !defined(RTE_GRAPH_MODEL_SELECT) || RTE_GRAPH_MODEL_SELECT == > RTE_GRAPH_MODEL_RTC Is nt defined instead of !defined? Use bracket around RTE_GRAPH_MODEL_SELECT == RTE_GRAPH_MODEL_RTC. > rte_graph_walk_rtc(graph); > +#elif defined(RTE_GRAPH_MODEL_SELECT) && RTE_GRAPH_MODEL_SELECT == > RTE_GRAPH_MODEL_MCORE_DISPATCH Use bracket around RTE_GRAPH_MODEL_SELECT == > + rte_graph_walk_mcore_dispatch(graph); > +#else > + int model = rte_graph_worker_model_get(graph); Introduce rte_graph_worker_model_no_check_get() as commented earlier. > + > + if (model == RTE_GRAPH_MODEL_RTC) > + rte_graph_walk_rtc(graph); > + else if (model == RTE_GRAPH_MODEL_MCORE_DISPATCH) > + rte_graph_walk_mcore_dispatch(graph); I think, switch case better to support new model in future. Please check the performance before changing. i.e switch ( rte_graph_worker_model_no_check_get()) { case RTE_GRAPH_MODEL_MCORE_DISPATCH: rte_graph_walk_mcore_dispatch(graph) break; default: rte_graph_walk_rtc(graph); }