From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id F0ED27E89 for ; Mon, 20 Oct 2014 21:13:38 +0200 (CEST) Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by fmsmga103.fm.intel.com with ESMTP; 20 Oct 2014 12:11:36 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="4.97,862,1389772800"; d="scan'208,217";a="403127023" Received: from irsmsx104.ger.corp.intel.com ([163.33.3.159]) by FMSMGA003.fm.intel.com with ESMTP; 20 Oct 2014 12:14:15 -0700 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.21]) by IRSMSX104.ger.corp.intel.com ([169.254.5.248]) with mapi id 14.03.0195.001; Mon, 20 Oct 2014 20:21:47 +0100 From: "Dumitrescu, Cristian" To: "dev@dpdk.org" Thread-Topic: [dpdk-dev] Dynamic port/pipe QoS configuration Thread-Index: AQHP6lW8kwW7YLkJ9UOkLQ1eEbgb4pw1P/8AgAQfDCA= Date: Mon, 20 Oct 2014 19:21:47 +0000 Message-ID: <3EB4FA525960D640B5BDFFD6A3D891262E090FBB@IRSMSX108.ger.corp.intel.com> References: , <251C79C4-74C5-4EF9-A987-3B4DB94A31D5@intel.com> In-Reply-To: <251C79C4-74C5-4EF9-A987-3B4DB94A31D5@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.182] MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] Dynamic port/pipe QoS configuration X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2014 19:13:44 -0000 Hi Satish, Yes, you can change the pipe configuration during run-time, but in a slight= ly different way. The way to do it is by defining multiple pipe profiles at= the port level initialization time and reassigning the pipe to a different= level at run-time. The pipe profiles are statically defined per port at initialization time (t= heir number is configurable through rte_sched_port_params:: n_pipe_profiles= parameter), so you need to know in advance the set of profiles you want to= use at run-time. You can assign pipe X to profile A initially, then re-ass= ign it to profile B later on (by using function rte_sched_pipe_config()). Regards, Cristian From: satish > Date: October 17, 2014 at 2:59:35 PM PDT To: > Subject: Re: [dpdk-dev] Dynamic port/pipe QoS configuration Hi, Can someone please respond to below? Thank you. On Mon, Oct 13, 2014 at 3:54 PM, satish > wrote: Hi, We are trying to provide QoS support for one of our clients using rte_sched. In our implementation we are treating each pipe as a customer. So, we can have maximum of 4096 customers per sub-port. Customers(pipe) can be added, deleted or modified dynamically. Each customer can have different profiles. Currently we are using DPDK-v1.6. Can I modify pipe profile during run time using rte_sched_pipe_config ()? Our plan is to have initial configs as below (similar to examples in DPDK) [1] Specify port params at the initialization of port as below static struct rte_sched_port_params port_param =3D { : : .n_subports_per_port =3D 1, .n_pipes_per_subport =3D 4096, .qsize =3D {64, 64, 64, 64}, .pipe_profiles =3D pipe_profile, .n_pipe_profiles =3D 1, } [2] static struct rte_sched_subport_params subport_param[] =3D { { .tb_rate =3D Link speed (1G/10G..) divided by 8 (bits), .tb_size =3D 1000000, .tc_rate =3D {Same as tb_rate, Same as tb_rate, Same as tb_rate, Same as tb_rate}, .tc_period =3D 10, }, }; [3] static struct rte_sched_pipe_params pipe_profile[] =3D { { /* Profile #0 */ .tb_rate =3D Link speed (1G/10G..) divided by 8 (bits)/4096 (maximum number of pipes), .tb_size =3D 1000000, .tc_rate =3D {pipe's tb_rate, pipe's tb_rate, pipe's tb_rate, pipe's tb_rate}, .tc_period =3D 40, .wrr_weights =3D {16, 4, 2, 1, 16, 4, 2, 1, 16, 4, 2, 1, 16, 4, 2, 1}, }, }; Our plan here is to initialize the pipe with default profile and modify each pipe based on user configurations. My questions are [a] Can I modify pipe profile during run time using rte_sched_pipe_config ()? (question repeated) If I can modify at pipe level, [b] Can we have different profiles for pipes, With one default profile at initialization? [c] Can we modify port level params without deleting the port using rte_sched_port_config ()? Please provide your valuable comments. Thanks in advance. -- Regards, Satish Babu -- Regards, Satish Babu -------------------------------------------------------------- Intel Shannon Limited Registered in Ireland Registered Office: Collinstown Industrial Park, Leixlip, County Kildare Registered Number: 308263 Business address: Dromore House, East Park, Shannon, Co. Clare This e-mail and any attachments may contain confidential material for the s= ole use of the intended recipient(s). Any review or distribution by others = is strictly prohibited. If you are not the intended recipient, please conta= ct the sender and delete all copies.