Message ID | 20191014120951.152654-1-jasvinder.singh@intel.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 8DB2B1C11A; Mon, 14 Oct 2019 13:10:05 +0200 (CEST) Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 443861C0D7 for <dev@dpdk.org>; Mon, 14 Oct 2019 13:10:04 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga101.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 14 Oct 2019 04:10:03 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,295,1566889200"; d="scan'208";a="194194020" Received: from silpixa00381635.ir.intel.com (HELO silpixa00381635.ger.corp.intel.com) ([10.237.223.229]) by fmsmga008.fm.intel.com with ESMTP; 14 Oct 2019 04:10:02 -0700 From: Jasvinder Singh <jasvinder.singh@intel.com> To: dev@dpdk.org Cc: cristian.dumitrescu@intel.com Date: Mon, 14 Oct 2019 13:09:34 +0100 Message-Id: <20191014120951.152654-1-jasvinder.singh@intel.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190926085232.47667-1-jasvinder.singh@intel.com> References: <20190926085232.47667-1-jasvinder.singh@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v4 00/17] sched: subport level configuration of pipe nodes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
sched: subport level configuration of pipe nodes
|
|
Message
Jasvinder Singh
Oct. 14, 2019, 12:09 p.m. UTC
This patchset refactors the dpdk qos sched library to allow subport level configuration flexibility of the pipe nodes. Currently, all parameters for the pipe nodes (subscribers) configuration are part of the port level structure which forces all groups of subscribers (pipes) in different subports to have similar configurations in terms of their number, queue sizes, traffic-classes, etc. The new implementation moves pipe nodes configuration parameters from port level to subport level structure. This allows different subports of the same port to have different configuration for the pipe nodes, for examples- number of pipes, queue sizes, pipe profiles, etc. In order to keep the implementation complexity under control, all pipes within the same subport share the same configuration for queue sizes. v4: - remove deprecation note - rebase on current dpdk head - add 64-bit values support v3: - improve doxygen comments v2: - fix qsize parsing in sample application - fix checkpatch warnings Jasvinder Singh (17): sched: add pipe config params to subport struct sched: modify internal structs for config flexibility sched: remove pipe params config from port level sched: add pipe config to subport level sched: modify pipe functions for config flexibility sched: modify pkt enqueue for config flexibility sched: update memory compute to support flexiblity sched: update grinder functions for config flexibility sched: update pkt dequeue for flexible config sched: update queue stats read for config flexibility test/sched: modify tests for subport config flexibility net/softnic: add subport config flexibility to TM ip_pipeline: add subport config flexibility to TM examples/qos_sched: add subport configuration flexibility sched: remove redundant code sched: add support for 64 bit values sched: modify internal structs and functions for 64 bit values app/test/test_sched.c | 35 +- doc/guides/rel_notes/deprecation.rst | 6 - doc/guides/rel_notes/release_19_11.rst | 7 +- drivers/net/softnic/rte_eth_softnic_tm.c | 54 +- examples/ip_pipeline/cli.c | 89 +- examples/ip_pipeline/tmgr.c | 25 +- examples/ip_pipeline/tmgr.h | 9 +- examples/qos_sched/app_thread.c | 20 +- examples/qos_sched/cfg_file.c | 293 ++-- examples/qos_sched/init.c | 54 +- examples/qos_sched/main.h | 1 + examples/qos_sched/profile.cfg | 5 +- examples/qos_sched/profile_ov.cfg | 5 +- examples/qos_sched/stats.c | 50 +- lib/librte_sched/Makefile | 2 +- lib/librte_sched/meson.build | 2 +- lib/librte_sched/rte_approx.c | 57 +- lib/librte_sched/rte_approx.h | 3 +- lib/librte_sched/rte_sched.c | 1575 +++++++++++++--------- lib/librte_sched/rte_sched.h | 157 ++- lib/librte_sched/rte_sched_common.h | 12 +- lib/librte_sched/rte_sched_version.map | 2 +- 22 files changed, 1413 insertions(+), 1050 deletions(-)
Comments
> -----Original Message----- > From: Singh, Jasvinder > Sent: Monday, October 14, 2019 1:10 PM > To: dev@dpdk.org > Cc: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > Subject: [PATCH v4 00/17] sched: subport level configuration of pipe nodes > > This patchset refactors the dpdk qos sched library to allow subport > level configuration flexibility of the pipe nodes. > > Currently, all parameters for the pipe nodes (subscribers) > configuration are part of the port level structure which forces > all groups of subscribers (pipes) in different subports to > have similar configurations in terms of their number, queue sizes, > traffic-classes, etc. > > The new implementation moves pipe nodes configuration parameters > from port level to subport level structure. This allows different > subports of the same port to have different configuration for the > pipe nodes, for examples- number of pipes, queue sizes, pipe > profiles, etc. > > In order to keep the implementation complexity under control, all > pipes within the same subport share the same configuration for queue > sizes. > > v4: > - remove deprecation note > - rebase on current dpdk head > - add 64-bit values support > Hi Jasvinder, I think the 64-bit counter support is a distinct unrelated feature, and I suggest we send a separate patchset for it. It also saves us re-reviewing the large patchset that was already reviewed? Regards, Cristian
> -----Original Message----- > From: Dumitrescu, Cristian > Sent: Monday, October 14, 2019 3:24 PM > To: Singh, Jasvinder <jasvinder.singh@intel.com>; dev@dpdk.org > Subject: RE: [PATCH v4 00/17] sched: subport level configuration of pipe nodes > > > > > -----Original Message----- > > From: Singh, Jasvinder > > Sent: Monday, October 14, 2019 1:10 PM > > To: dev@dpdk.org > > Cc: Dumitrescu, Cristian <cristian.dumitrescu@intel.com> > > Subject: [PATCH v4 00/17] sched: subport level configuration of pipe > > nodes > > > > This patchset refactors the dpdk qos sched library to allow subport > > level configuration flexibility of the pipe nodes. > > > > Currently, all parameters for the pipe nodes (subscribers) > > configuration are part of the port level structure which forces all > > groups of subscribers (pipes) in different subports to have similar > > configurations in terms of their number, queue sizes, traffic-classes, > > etc. > > > > The new implementation moves pipe nodes configuration parameters from > > port level to subport level structure. This allows different subports > > of the same port to have different configuration for the pipe nodes, > > for examples- number of pipes, queue sizes, pipe profiles, etc. > > > > In order to keep the implementation complexity under control, all > > pipes within the same subport share the same configuration for queue > > sizes. > > > > v4: > > - remove deprecation note > > - rebase on current dpdk head > > - add 64-bit values support > > > > Hi Jasvinder, > > I think the 64-bit counter support is a distinct unrelated feature, and I suggest > we send a separate patchset for it. It also saves us re-reviewing the large > patchset that was already reviewed? > I sent separate patches on 64-but counter support. Thanks.