[v8,13/17] graph: enable graph multicore dispatch scheduler model
Checks
Commit Message
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.wang@intel.com>
Signed-off-by: Cunming Liang <cunming.liang@intel.com>
Signed-off-by: Zhirun Yan <zhirun.yan@intel.com>
---
lib/graph/rte_graph_worker.h | 12 ++++++++++++
1 file changed, 12 insertions(+)
@@ -11,6 +11,7 @@ extern "C" {
#endif
#include "rte_graph_model_rtc.h"
+#include "rte_graph_model_mcore_dispatch.h"
/**
* Perform graph walk on the circular buffer and invoke the process function
@@ -25,7 +26,18 @@ __rte_experimental
static inline void
rte_graph_walk(struct rte_graph *graph)
{
+#if !defined(RTE_GRAPH_MODEL_SELECT) || 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
+ rte_graph_walk_mcore_dispatch(graph);
+#else
+ int model = rte_graph_worker_model_get(graph);
+
+ 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);
+#endif
}
#ifdef __cplusplus