From patchwork Fri Feb 18 09:36:47 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ajmera, Megha" X-Patchwork-Id: 107795 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 8EBECA0032; Fri, 18 Feb 2022 10:37:08 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 79EDA41142; Fri, 18 Feb 2022 10:37:04 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id AB89340150 for ; Fri, 18 Feb 2022 10:37:02 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1645177022; x=1676713022; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=M7rsPoizPB4wy30Yt6vaOf6QqeuUv49nYJhccSJ4MVM=; b=O9DF+WB+X8QmnKqv1O2D9oHrJ7bNp3IIkvffqrIEBWL+rILVxumoFlti GjJaRfN1QdQU5neP00bsqoy9bHbEUwxoSQg3yi20L2+DqQDG531bJk9V4 gxflK/N5z5mTwIqw05YI8FfyQ2NiuqP1Of3W0O13gtiu2oxrh4zfEUFYJ 9ko5Oe9iEiMrQjTxvjJ/EsPT8crbBbxWQYeBRU4LlNv+SIcHlNUBEVLm7 JNdUa30Li7nM7oltlHFwJIBAPZ11Cm6pE79jJct8rVf96k7l+CTL+8ELy qSwdneBTiT7JZzv9eXnZ69etgyX9M8p4Y5YMPMQ/4cwwVD2xzqysoXLBv g==; X-IronPort-AV: E=McAfee;i="6200,9189,10261"; a="250849503" X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="250849503" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Feb 2022 01:37:02 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="489318637" Received: from silpixa00397515.ir.intel.com (HELO silpixa00397515.ger.corp.intel.com) ([10.237.222.51]) by orsmga003.jf.intel.com with ESMTP; 18 Feb 2022 01:37:00 -0800 From: Megha Ajmera To: dev@dpdk.org, jasvinder.singh@intel.com, cristian.dumitrescu@intel.com, thomas@monjalon.net, david.marchand@redhat.com Subject: [PATCH v2 1/4] sched: Cleanup qos scheduler defines from rte_config Date: Fri, 18 Feb 2022 09:36:47 +0000 Message-Id: <20220218093650.2549927-2-megha.ajmera@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220218093650.2549927-1-megha.ajmera@intel.com> References: <20220218093650.2549927-1-megha.ajmera@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Cleanup of sched config options those are by-default not defined. Signed-off-by: Megha Ajmera Acked-by: Cristian Dumitrescu --- config/rte_config.h | 8 ++------ doc/guides/sample_app_ug/qos_scheduler.rst | 3 +-- lib/sched/rte_sched.c | 4 ++++ 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/config/rte_config.h b/config/rte_config.h index 91d96eeecb..917097630e 100644 --- a/config/rte_config.h +++ b/config/rte_config.h @@ -88,12 +88,8 @@ /* rte_power defines */ #define RTE_MAX_LCORE_FREQS 64 -/* rte_sched defines */ -#undef RTE_SCHED_CMAN -#undef RTE_SCHED_COLLECT_STATS -#undef RTE_SCHED_SUBPORT_TC_OV -#define RTE_SCHED_PORT_N_GRINDERS 8 -#undef RTE_SCHED_VECTOR +/* KNI defines */ +#define RTE_KNI_PREEMPT_DEFAULT 1 /* rte_graph defines */ #define RTE_GRAPH_BURST_SIZE 256 diff --git a/doc/guides/sample_app_ug/qos_scheduler.rst b/doc/guides/sample_app_ug/qos_scheduler.rst index 49c14a00da..7016ca4078 100644 --- a/doc/guides/sample_app_ug/qos_scheduler.rst +++ b/doc/guides/sample_app_ug/qos_scheduler.rst @@ -42,8 +42,7 @@ The application is located in the ``qos_sched`` sub-directory. .. note:: To get statistics on the sample app using the command line interface as described in the next section, - DPDK must be compiled defining *RTE_SCHED_COLLECT_STATS*, which can be done by changing the relevant - entry in the ``config/rte_config.h`` file. + DPDK must be compiled after defining *RTE_SCHED_COLLECT_STATS* in the ``config/rte_config.h`` file. Running the Application ----------------------- diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c index 62b3d2e315..6c3e3bb0bf 100644 --- a/lib/sched/rte_sched.c +++ b/lib/sched/rte_sched.c @@ -35,6 +35,10 @@ #endif +#ifndef RTE_SCHED_PORT_N_GRINDERS +#define RTE_SCHED_PORT_N_GRINDERS 8 +#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 From patchwork Fri Feb 18 09:36:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ajmera, Megha" X-Patchwork-Id: 107796 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DC9A8A0032; Fri, 18 Feb 2022 10:37:13 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 5E07C41150; Fri, 18 Feb 2022 10:37:05 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 4B549410FB for ; Fri, 18 Feb 2022 10:37:04 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1645177024; x=1676713024; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=4cr4lDATOL/E23xYyCsv+y0pfT7HvN0yUk8DX1zO1uE=; b=iCYRudyhz7MVXTHMkj2wgNsh/e84/mFnOgNz1vQn5aKpz0LF3gdw0jOD UXyUSPm5eG+XzWuMa4OWrMDx0GSpjs+hdvih4MRdSTKeO7yUnG5+TZ7XB R3eDv3HO3/c6Q9MDGWrGlQnWMsD31UaoFi+MhyVIi2HEd1Sy/uuSZN5V+ wNZKAyf2Zd/S9HXw/pFjNZaPpdKDq0Xx4jbnxVpIRJLZDgd1YFStrkLh6 pikjDVUwsipvRuscg59K0N+HxNtFJ6NbPFULd9R9DAR/SGUE4ZM/vacoT pwkxBqpcE+q/nXnkH/trjIZZ1J0S7MPvpgkt7djRe85glYfVSvEV40Dg7 Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10261"; a="250849506" X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="250849506" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Feb 2022 01:37:03 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="489318650" Received: from silpixa00397515.ir.intel.com (HELO silpixa00397515.ger.corp.intel.com) ([10.237.222.51]) by orsmga003.jf.intel.com with ESMTP; 18 Feb 2022 01:37:02 -0800 From: Megha Ajmera To: dev@dpdk.org, jasvinder.singh@intel.com, cristian.dumitrescu@intel.com, thomas@monjalon.net, david.marchand@redhat.com Subject: [PATCH v2 2/4] sched: Always enable stats in HQoS library. Date: Fri, 18 Feb 2022 09:36:48 +0000 Message-Id: <20220218093650.2549927-3-megha.ajmera@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220218093650.2549927-1-megha.ajmera@intel.com> References: <20220218093650.2549927-1-megha.ajmera@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Removed "RTE_SCHED_COLLECT_STATS" flag from HQoS. Signed-off-by: Megha Ajmera --- lib/sched/rte_sched.c | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c index 6c3e3bb0bf..6f2d85edc0 100644 --- a/lib/sched/rte_sched.c +++ b/lib/sched/rte_sched.c @@ -1790,8 +1790,6 @@ rte_sched_port_queue_is_empty(struct rte_sched_subport *subport, #endif /* RTE_SCHED_DEBUG */ -#ifdef RTE_SCHED_COLLECT_STATS - static inline void rte_sched_port_update_subport_stats(struct rte_sched_port *port, struct rte_sched_subport *subport, @@ -1849,8 +1847,6 @@ rte_sched_port_update_queue_stats_on_drop(struct rte_sched_subport *subport, #endif } -#endif /* RTE_SCHED_COLLECT_STATS */ - #ifdef RTE_SCHED_CMAN static inline int @@ -1989,18 +1985,14 @@ rte_sched_port_enqueue_qptrs_prefetch0(struct rte_sched_subport *subport, struct rte_mbuf *pkt, uint32_t subport_qmask) { struct rte_sched_queue *q; -#ifdef RTE_SCHED_COLLECT_STATS struct rte_sched_queue_extra *qe; -#endif uint32_t qindex = rte_mbuf_sched_queue_get(pkt); uint32_t subport_queue_id = subport_qmask & qindex; q = subport->queue + subport_queue_id; rte_prefetch0(q); -#ifdef RTE_SCHED_COLLECT_STATS qe = subport->queue_extra + subport_queue_id; rte_prefetch0(qe); -#endif return subport_queue_id; } @@ -2042,12 +2034,10 @@ rte_sched_port_enqueue_qwa(struct rte_sched_port *port, if (unlikely(rte_sched_port_cman_drop(port, subport, pkt, qindex, qlen) || (qlen >= qsize))) { rte_pktmbuf_free(pkt); -#ifdef RTE_SCHED_COLLECT_STATS rte_sched_port_update_subport_stats_on_drop(port, subport, qindex, pkt, qlen < qsize); rte_sched_port_update_queue_stats_on_drop(subport, qindex, pkt, qlen < qsize); -#endif return 0; } @@ -2059,10 +2049,8 @@ rte_sched_port_enqueue_qwa(struct rte_sched_port *port, rte_bitmap_set(subport->bmp, qindex); /* Statistics */ -#ifdef RTE_SCHED_COLLECT_STATS rte_sched_port_update_subport_stats(port, subport, qindex, pkt); rte_sched_port_update_queue_stats(subport, qindex, pkt); -#endif return 1; } From patchwork Fri Feb 18 09:36:49 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ajmera, Megha" X-Patchwork-Id: 107797 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 7D93CA0032; Fri, 18 Feb 2022 10:37:20 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 92F1641140; Fri, 18 Feb 2022 10:37:07 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id 2C9F740150 for ; Fri, 18 Feb 2022 10:37:06 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1645177026; x=1676713026; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=Q3xDG4TjuNQSYFV/0Y3Xal/jo3n/Ey5U7BkOe/KeQvw=; b=XJrkmjSMhtvWWJMWpyILeGTL/v6WXsq0eqaMujg/wQBVOM1OkaZjWVs4 BxgEBcCmGmnlmMBlNV/oatGsOuhhvv/8xxSPdp3DkqJuGuRrDhBTat0Qf qS1PsvgXLNdcMPxyZKntPpZK6Vcc0UgMHxLMdJjBKHUlpBbUgon/0n9fT e/pCbYIRW+ZmRpmZcpE2FvhyW8pJf31kb2mAIpySuR7xizN94LzEs6Iq6 jLwMZA39u693CiKmY7x7z/fK3QgF0k97S2y7kGcit5w3IUOSNUFWaqJKt pHiP532c0pUjIkz38YShJUa2gLQo61HvQ6Ir4nEyq58qySWPNeKhjMCk5 w==; X-IronPort-AV: E=McAfee;i="6200,9189,10261"; a="250849515" X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="250849515" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Feb 2022 01:37:05 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="489318657" Received: from silpixa00397515.ir.intel.com (HELO silpixa00397515.ger.corp.intel.com) ([10.237.222.51]) by orsmga003.jf.intel.com with ESMTP; 18 Feb 2022 01:37:04 -0800 From: Megha Ajmera To: dev@dpdk.org, jasvinder.singh@intel.com, cristian.dumitrescu@intel.com, thomas@monjalon.net, david.marchand@redhat.com Subject: [PATCH v2 3/4] sched: Always enable best effort TC oversubscription in HQoS library. Date: Fri, 18 Feb 2022 09:36:49 +0000 Message-Id: <20220218093650.2549927-4-megha.ajmera@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220218093650.2549927-1-megha.ajmera@intel.com> References: <20220218093650.2549927-1-megha.ajmera@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Removed "RTE_SCHED_SUBPORT_TC_OV" flag from HQoS. Signed-off-by: Megha Ajmera --- lib/sched/rte_sched.c | 91 ------------------------------------------- 1 file changed, 91 deletions(-) diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c index 6f2d85edc0..807134b48d 100644 --- a/lib/sched/rte_sched.c +++ b/lib/sched/rte_sched.c @@ -1329,14 +1329,12 @@ rte_sched_subport_config(struct rte_sched_port *port, for (i = 0; i < RTE_SCHED_PORT_N_GRINDERS; i++) s->grinder_base_bmp_pos[i] = RTE_SCHED_PIPE_INVALID; -#ifdef RTE_SCHED_SUBPORT_TC_OV /* TC oversubscription */ s->tc_ov_wm_min = port->mtu; s->tc_ov_period_id = 0; s->tc_ov = 0; s->tc_ov_n = 0; s->tc_ov_rate = 0; -#endif } { @@ -1356,11 +1354,9 @@ rte_sched_subport_config(struct rte_sched_port *port, else profile->tc_credits_per_period[i] = 0; -#ifdef RTE_SCHED_SUBPORT_TC_OV s->tc_ov_wm_max = rte_sched_time_ms_to_bytes(profile->tc_period, s->pipe_tc_be_rate_max); s->tc_ov_wm = s->tc_ov_wm_max; -#endif s->profile = subport_profile_id; } @@ -2267,50 +2263,6 @@ rte_sched_port_enqueue(struct rte_sched_port *port, struct rte_mbuf **pkts, return result; } -#ifndef RTE_SCHED_SUBPORT_TC_OV - -static inline void -grinder_credits_update(struct rte_sched_port *port, - struct rte_sched_subport *subport, uint32_t pos) -{ - struct rte_sched_grinder *grinder = subport->grinder + pos; - struct rte_sched_pipe *pipe = grinder->pipe; - struct rte_sched_pipe_profile *params = grinder->pipe_params; - struct rte_sched_subport_profile *sp = grinder->subport_params; - uint64_t n_periods; - uint32_t i; - - /* Subport TB */ - n_periods = (port->time - subport->tb_time) / sp->tb_period; - subport->tb_credits += n_periods * sp->tb_credits_per_period; - subport->tb_credits = RTE_MIN(subport->tb_credits, sp->tb_size); - subport->tb_time += n_periods * sp->tb_period; - - /* Pipe TB */ - n_periods = (port->time - pipe->tb_time) / params->tb_period; - pipe->tb_credits += n_periods * params->tb_credits_per_period; - pipe->tb_credits = RTE_MIN(pipe->tb_credits, params->tb_size); - pipe->tb_time += n_periods * params->tb_period; - - /* Subport TCs */ - if (unlikely(port->time >= subport->tc_time)) { - for (i = 0; i < RTE_SCHED_TRAFFIC_CLASSES_PER_PIPE; i++) - subport->tc_credits[i] = sp->tc_credits_per_period[i]; - - subport->tc_time = port->time + sp->tc_period; - } - - /* Pipe TCs */ - if (unlikely(port->time >= pipe->tc_time)) { - for (i = 0; i < RTE_SCHED_TRAFFIC_CLASSES_PER_PIPE; i++) - pipe->tc_credits[i] = params->tc_credits_per_period[i]; - - pipe->tc_time = port->time + params->tc_period; - } -} - -#else - static inline uint64_t grinder_tc_ov_credits_update(struct rte_sched_port *port, struct rte_sched_subport *subport, uint32_t pos) @@ -2405,46 +2357,6 @@ grinder_credits_update(struct rte_sched_port *port, } } -#endif /* RTE_SCHED_TS_CREDITS_UPDATE, RTE_SCHED_SUBPORT_TC_OV */ - - -#ifndef RTE_SCHED_SUBPORT_TC_OV - -static inline int -grinder_credits_check(struct rte_sched_port *port, - struct rte_sched_subport *subport, uint32_t pos) -{ - struct rte_sched_grinder *grinder = subport->grinder + pos; - struct rte_sched_pipe *pipe = grinder->pipe; - struct rte_mbuf *pkt = grinder->pkt; - uint32_t tc_index = grinder->tc_index; - uint64_t pkt_len = pkt->pkt_len + port->frame_overhead; - uint64_t subport_tb_credits = subport->tb_credits; - uint64_t subport_tc_credits = subport->tc_credits[tc_index]; - uint64_t pipe_tb_credits = pipe->tb_credits; - uint64_t pipe_tc_credits = pipe->tc_credits[tc_index]; - int enough_credits; - - /* Check queue credits */ - enough_credits = (pkt_len <= subport_tb_credits) && - (pkt_len <= subport_tc_credits) && - (pkt_len <= pipe_tb_credits) && - (pkt_len <= pipe_tc_credits); - - if (!enough_credits) - return 0; - - /* Update port credits */ - subport->tb_credits -= pkt_len; - subport->tc_credits[tc_index] -= pkt_len; - pipe->tb_credits -= pkt_len; - pipe->tc_credits[tc_index] -= pkt_len; - - return 1; -} - -#else - static inline int grinder_credits_check(struct rte_sched_port *port, struct rte_sched_subport *subport, uint32_t pos) @@ -2491,9 +2403,6 @@ grinder_credits_check(struct rte_sched_port *port, return 1; } -#endif /* RTE_SCHED_SUBPORT_TC_OV */ - - static inline int grinder_schedule(struct rte_sched_port *port, struct rte_sched_subport *subport, uint32_t pos) From patchwork Fri Feb 18 09:36:50 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ajmera, Megha" X-Patchwork-Id: 107798 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id AAED9A0032; Fri, 18 Feb 2022 10:37:25 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 8C2D14115B; Fri, 18 Feb 2022 10:37:09 +0100 (CET) Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by mails.dpdk.org (Postfix) with ESMTP id BB2294115B for ; Fri, 18 Feb 2022 10:37:07 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1645177027; x=1676713027; h=from:to:subject:date:message-id:in-reply-to:references: mime-version:content-transfer-encoding; bh=HAjMBaT22ZVaq2xf+f/IoOxJsarSpLmHiwGd7ohLQ3o=; b=d3x6NVsffU8q7bo4q/YX9ay7XEL35C0AMkKKaDwgsICixBsyXXcPYZxq xa7gvVJA+QHzH4ualR2l/ErYDn1fE7/NVtZjbDtT+0iyJDy5ZGE1VFB9E hBFYOsvnfXI8Qvquin4DZUdvwnDxq0YoD1WSX8NKwj63qZ8WJtegslfgv d5swRIGg6fFZbhkkDlYpZ9OpT75sb2URP/kWPr/0AH9I/00W/pXnTe8v+ p9dxgoHxWT8oRcmlSqfciB0S13y3LzJV4rWI/XXIgXfUNfFaXDUckwoft jk8Oi9GC6DQNUsfgoAz32nlWAjFs9STPBNSda3YTcZ+deKPOwRPfPHgr1 Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10261"; a="250849519" X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="250849519" Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 18 Feb 2022 01:37:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.88,378,1635231600"; d="scan'208";a="489318664" Received: from silpixa00397515.ir.intel.com (HELO silpixa00397515.ger.corp.intel.com) ([10.237.222.51]) by orsmga003.jf.intel.com with ESMTP; 18 Feb 2022 01:37:06 -0800 From: Megha Ajmera To: dev@dpdk.org, jasvinder.singh@intel.com, cristian.dumitrescu@intel.com, thomas@monjalon.net, david.marchand@redhat.com Subject: [PATCH v2 4/4] sched: Removed code defined under VECTOR Defines. Date: Fri, 18 Feb 2022 09:36:50 +0000 Message-Id: <20220218093650.2549927-5-megha.ajmera@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220218093650.2549927-1-megha.ajmera@intel.com> References: <20220218093650.2549927-1-megha.ajmera@intel.com> MIME-Version: 1.0 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Removed "RTE_SCHED_VECTOR" flag from HQoS. Signed-off-by: Megha Ajmera --- lib/sched/rte_sched.c | 53 ------------------------------------------- 1 file changed, 53 deletions(-) diff --git a/lib/sched/rte_sched.c b/lib/sched/rte_sched.c index 807134b48d..8ad5ca7e05 100644 --- a/lib/sched/rte_sched.c +++ b/lib/sched/rte_sched.c @@ -24,16 +24,6 @@ #pragma warning(disable:2259) /* conversion may lose significant bits */ #endif -#ifdef RTE_SCHED_VECTOR -#include - -#ifdef RTE_ARCH_X86 -#define SCHED_VECTOR_SSE4 -#elif defined(__ARM_NEON) -#define SCHED_VECTOR_NEON -#endif - -#endif #ifndef RTE_SCHED_PORT_N_GRINDERS #define RTE_SCHED_PORT_N_GRINDERS 8 @@ -2446,47 +2436,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) { @@ -2500,8 +2449,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)