[PATCH v3 1/4] sched: remove code no longer needed
Megha Ajmera
megha.ajmera at intel.com
Tue Feb 22 13:57:42 CET 2022
Remove RTE_SCHED_VECTOR flag from rte_config.h.
This flag is no longer useful. Only scalar version is supported.
Signed-off-by: Megha Ajmera <megha.ajmera at intel.com>
---
config/arm/meson.build | 1 -
config/rte_config.h | 1 -
lib/sched/rte_sched.c | 54 ------------------------------------------
3 files changed, 56 deletions(-)
diff --git a/config/arm/meson.build b/config/arm/meson.build
index 48b88a84f2..8aead74086 100644
--- a/config/arm/meson.build
+++ b/config/arm/meson.build
@@ -17,7 +17,6 @@ flags_common = [
# ['RTE_ARM64_MEMCPY_ALIGN_MASK', 0xF],
# ['RTE_ARM64_MEMCPY_STRICT_ALIGN', false],
- ['RTE_SCHED_VECTOR', false],
['RTE_ARM_USE_WFE', false],
['RTE_ARCH_ARM64', true],
['RTE_CACHE_LINE_SIZE', 128]
diff --git a/config/rte_config.h b/config/rte_config.h
index 91d96eeecb..7a7da2f4e5 100644
--- a/config/rte_config.h
+++ b/config/rte_config.h
@@ -93,7 +93,6 @@
#undef RTE_SCHED_COLLECT_STATS
#undef RTE_SCHED_SUBPORT_TC_OV
#define RTE_SCHED_PORT_N_GRINDERS 8
-#undef RTE_SCHED_VECTOR
/* rte_graph defines */
#define RTE_GRAPH_BURST_SIZE 256
diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c
index 62b3d2e315..1d3051cc0f 100644
--- a/lib/sched/rte_sched.c
+++ b/lib/sched/rte_sched.c
@@ -24,17 +24,6 @@
#pragma warning(disable:2259) /* conversion may lose significant bits */
#endif
-#ifdef RTE_SCHED_VECTOR
-#include <rte_vect.h>
-
-#ifdef RTE_ARCH_X86
-#define SCHED_VECTOR_SSE4
-#elif defined(__ARM_NEON)
-#define SCHED_VECTOR_NEON
-#endif
-
-#endif
-
#define RTE_SCHED_TB_RATE_CONFIG_ERR (1e-7)
#define RTE_SCHED_WRR_SHIFT 3
#define RTE_SCHED_MAX_QUEUES_PER_TC RTE_SCHED_BE_QUEUES_PER_PIPE
@@ -2545,47 +2534,6 @@ grinder_schedule(struct rte_sched_port *port,
return 1;
}
-#ifdef SCHED_VECTOR_SSE4
-
-static inline int
-grinder_pipe_exists(struct rte_sched_subport *subport, uint32_t base_pipe)
-{
- __m128i index = _mm_set1_epi32(base_pipe);
- __m128i pipes = _mm_load_si128((__m128i *)subport->grinder_base_bmp_pos);
- __m128i res = _mm_cmpeq_epi32(pipes, index);
-
- pipes = _mm_load_si128((__m128i *)(subport->grinder_base_bmp_pos + 4));
- pipes = _mm_cmpeq_epi32(pipes, index);
- res = _mm_or_si128(res, pipes);
-
- if (_mm_testz_si128(res, res))
- return 0;
-
- return 1;
-}
-
-#elif defined(SCHED_VECTOR_NEON)
-
-static inline int
-grinder_pipe_exists(struct rte_sched_subport *subport, uint32_t base_pipe)
-{
- uint32x4_t index, pipes;
- uint32_t *pos = (uint32_t *)subport->grinder_base_bmp_pos;
-
- index = vmovq_n_u32(base_pipe);
- pipes = vld1q_u32(pos);
- if (!vminvq_u32(veorq_u32(pipes, index)))
- return 1;
-
- pipes = vld1q_u32(pos + 4);
- if (!vminvq_u32(veorq_u32(pipes, index)))
- return 1;
-
- return 0;
-}
-
-#else
-
static inline int
grinder_pipe_exists(struct rte_sched_subport *subport, uint32_t base_pipe)
{
@@ -2599,8 +2547,6 @@ grinder_pipe_exists(struct rte_sched_subport *subport, uint32_t base_pipe)
return 0;
}
-#endif /* RTE_SCHED_OPTIMIZATIONS */
-
static inline void
grinder_pcache_populate(struct rte_sched_subport *subport,
uint32_t pos, uint32_t bmp_pos, uint64_t bmp_slab)
--
2.25.1
More information about the dev
mailing list