]> git.droids-corp.org - dpdk.git/commitdiff
sched: remove vector functions
authorMegha Ajmera <megha.ajmera@intel.com>
Tue, 22 Feb 2022 12:57:42 +0000 (12:57 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Thu, 24 Feb 2022 22:44:04 +0000 (23:44 +0100)
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@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
config/arm/meson.build
config/rte_config.h
lib/sched/rte_sched.c

index 48b88a84f25c761fc3ffdce1e8de5872c3c5c9cf..8aead74086d36744f12e196ce4968491bbff1167 100644 (file)
@@ -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]
index 91d96eeecbd92a39686cfbb27b28160eb3c85aeb..7a7da2f4e564b8d42af164e9b2d0e6d271b42d0f 100644 (file)
@@ -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
index e5c62e3d7795fa910daee30db9c65f9412297a40..162fced252023fa2462fd45a2a9dd36213aa8085 100644 (file)
 #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
@@ -2544,47 +2533,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)
 {
@@ -2598,8 +2546,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)