From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id F28C7A0565; Mon, 23 Mar 2020 14:09:57 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 15A4D1C067; Mon, 23 Mar 2020 14:09:57 +0100 (CET) Received: from EUR01-HE1-obe.outbound.protection.outlook.com (mail-eopbgr130048.outbound.protection.outlook.com [40.107.13.48]) by dpdk.org (Postfix) with ESMTP id 6133F1C065 for ; Mon, 23 Mar 2020 14:09:55 +0100 (CET) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=b6qmQDMu6ulfNHo4Bks/H/njKwRmYNPoWQ9iuDZyqdKffvRvOhWsN96yFOZVtOdh8emKTSes47hwWX4AgNAGZJngd5BCBaQPZ3LGWU9OqgHKNFxlgDqGIqAicmlSbzGEaAEUQ7FV4/GQwDpNihNFKs9d64sCBnTpK9qOA3+AnBiRBHQ8Pzep/9VEcOmLkHUBszgINvvmKA3beRbJ8iXJkLNHZ5Aw4rfaIWM1FoCXSx1hyd6IuDOEj2b5tvYxH8yYorBCYdLuJHx4EgtRaRpJALZAfPf3Upyrgh68TNxvLauj3Y8A2/R+c4Lp8peVzyvjbBsLUymVttQUYCjCGHWx1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3AY5vOUMG2MPw6NgFHJvKpIupWUu5gAC7Suv25mnL78=; b=mIhmgrEC5KE4Ii6NOZDKb7VBG0JpT/1SMHCnyF3qwf7iRtbMB5yZqNOwnFwQLHMrAPDd7Ee3cKUlTyLs8g5NyK4n5FFU7U0sreFOBw+dykZNwZFiqNMnjSQ5NLzrr7+tnqOlTDOevxc6Zl5/d4QjCePVs2pp1KNog0kdELM80N6WCZIeXwQnMGLjAwhC6yhvCahkGWK9uZ+HDetKBEV9GK45ne15y/IWkg0zOUZQcn2L/BQwfdnmmNjCNNZL+CaDSUF2zNQA+NT/e+ISXlAXDbJNrQhISQ7R9PmT7iWzRMcio33NB8MeqMkPZ+gwWduImWkic61BHN7RA7Bt8MDzcw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=mellanox.com; dmarc=pass action=none header.from=mellanox.com; dkim=pass header.d=mellanox.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3AY5vOUMG2MPw6NgFHJvKpIupWUu5gAC7Suv25mnL78=; b=pgkIZYgqUkcc3XvCBUBBFXdvhvev1AlY9kfgyhEpZF8RSVA7Q4gZVz9Cv1c+r0R3/Hmsk5o8wGLr7dLvlXJQah6wC4HdyQXLrYagwK6tsUOFjnD58CvxPTn9lhgfPcoYQ40zMKaA2Ol0cN/CaCMimFSTly7oh4Vg046hXA2mDX0= Received: from AM0PR05MB6610.eurprd05.prod.outlook.com (20.178.202.18) by AM0PR05MB5764.eurprd05.prod.outlook.com (20.178.115.95) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.2835.20; Mon, 23 Mar 2020 13:09:53 +0000 Received: from AM0PR05MB6610.eurprd05.prod.outlook.com ([fe80::f9b0:5b27:21a3:c758]) by AM0PR05MB6610.eurprd05.prod.outlook.com ([fe80::f9b0:5b27:21a3:c758%3]) with mapi id 15.20.2835.021; Mon, 23 Mar 2020 13:09:52 +0000 From: Wisam Monther To: Thomas Monjalon , Jerin Jacob CC: dpdk-dev , Matan Azrad , Raslan Darawsheh Thread-Topic: [dpdk-dev] [RFC] app/test-flow-perf: add rte_flow perf app Thread-Index: AQHV/GJxxUsI2uww30mzzX9+tgZjqqhRDp6AgABUe4CAAAdoAIAEjGPwgAAZLoCAAAVp4IAAF7wAgAAAXoA= Date: Mon, 23 Mar 2020 13:09:52 +0000 Message-ID: References: <1584452772-31147-1-git-send-email-wisamm@mellanox.com> <2643636.88bMQJbFj6@xps> In-Reply-To: <2643636.88bMQJbFj6@xps> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=wisamm@mellanox.com; x-originating-ip: [188.161.229.199] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 3ee08a67-41f0-4249-d65f-08d7cf2b79c7 x-ms-traffictypediagnostic: AM0PR05MB5764:|AM0PR05MB5764: x-ld-processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtFwd,ExtAddr x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:10000; x-forefront-prvs: 0351D213B3 x-forefront-antispam-report: SFV:NSPM; SFS:(10009020)(4636009)(346002)(39860400002)(366004)(396003)(136003)(376002)(199004)(110136005)(107886003)(54906003)(478600001)(76116006)(52536014)(33656002)(4326008)(9686003)(55016002)(2906002)(5660300002)(186003)(26005)(86362001)(81166006)(81156014)(6506007)(53546011)(8676002)(8936002)(7696005)(66556008)(316002)(66946007)(71200400001)(66476007)(66446008)(64756008); DIR:OUT; SFP:1101; SCL:1; SRVR:AM0PR05MB5764; H:AM0PR05MB6610.eurprd05.prod.outlook.com; FPR:; SPF:None; LANG:en; PTR:InfoNoRecords; A:1; received-spf: None (protection.outlook.com: mellanox.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: FmTL1yGoc66/YSyKS4tXdiqhATQZn6IJntsEIWGqBN5b4q7p9bTFMfiypiWgD+FTyfOHZk3Uyh3bFJ+mAcvzgaJ0tJtr+a432DhF8nEIjGoh1/qwroQgvnxSkcm1jWNyZK8A9MS7u34wl8m1PxZrFRmuozQCEbj1RGGrTa5J6XHK57RKGARho9sVWS5GYFMGuqhhsZLJt31OI+7sdHfdvmteKQxdYqkcB4IO6BKncUzm7dF3gjEoRQwc1pf2s8/w8GZ40Urkohpb2KGUWr5wNw8Y+gCXVcPr7VEYEODG06WRAFwc+84wDCv5czj2WeOr6Y3SYOuZy8ZeTIspJ5DB+N1upSmL+H1yQVvortF8K5YMzNK97ko3tQw/PoOkmKQP+I/B2hJ8l8XyXyOplyS9gzaaP3adm6eePdN7nDWEeHvnPLZtet9JCUzRpEkQyC/V x-ms-exchange-antispam-messagedata: boOoNygi24nRLtYpWsVT500nrZ+nsWyNR2bwNqIb+mR4uC2jnyqLoPV2vxZfDj27JgSFxppkVnn9OkMtsUXtU9uh7i4s4hohjWHvbObNozZgL1//tDayI9PSqvSuu6Dij826cnIVT8USuc9wQdGYOw== Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: Mellanox.com X-MS-Exchange-CrossTenant-Network-Message-Id: 3ee08a67-41f0-4249-d65f-08d7cf2b79c7 X-MS-Exchange-CrossTenant-originalarrivaltime: 23 Mar 2020 13:09:52.8588 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: a652971c-7d2e-4d9b-a6a4-d149256f461b X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: FMYkwmHwM0iOMd6HyTFPexlMqBGOwBR6uiDcgDm41/ttGegllEXGH0alj20BOqcE4DASzVSyslcgzFdUAi+W0w== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM0PR05MB5764 Subject: Re: [dpdk-dev] [RFC] app/test-flow-perf: add rte_flow perf app X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" > -----Original Message----- > From: Thomas Monjalon > Sent: Monday, March 23, 2020 3:00 PM > To: Jerin Jacob ; Wisam Monther > > Cc: dpdk-dev ; Matan Azrad ; > Raslan Darawsheh > Subject: Re: [dpdk-dev] [RFC] app/test-flow-perf: add rte_flow perf app >=20 > 23/03/2020 12:41, Wisam Monther: > > From: Jerin Jacob > > > On Mon, Mar 23, 2020 at 3:23 PM Wisam Monther wrote: > > > > From: Jerin Jacob > > > > > On Fri, Mar 20, 2020 at 5:21 PM Thomas Monjalon wrote: > > > > > > 20/03/2020 07:49, Jerin Jacob: > > > > > > > On Tue, Mar 17, 2020 at 7:16 PM Wisam Jaddo wrote: > > > > > > > > > > > > > > Thanks for this application. Useful stuff. > > > > > > > > > > > > > > > > > > > > > > > Introducing new application for rte_flow performance testin= g. > > > > > > > > The application provide the ability to test insertion rate > > > > > > > > of specific rte_flow rule, by stressing it to the NIC, and > > > > > > > > calculate the insertion rate. > > > > > > > > > > > > > > > > It also provides packet per second measurements after the > > > > > > > > insertion operation is done. > > > > > > > > > > > > > > > > The application offers some options in the command line, > > > > > > > > to configure which rule to apply. > > > > > > > > > > > > > > > > After that the application will start producing rules with > > > > > > > > same pattern but increasing the outer IP source address by > > > > > > > > 1 each time, thus it will give different flow each time, > > > > > > > > and all other items will have open masks. > > > > > > > > > > > > > > > > The current design have single core insertion rate. > > > > > > > > In the future we may have a multi core insertion rate > > > > > > > > measurement support in the app. > > > > > > > > > > > > > > If I understand correctly, > > > > > > > # On the main thread, this application first check the flow > > > > > > > insertion performance # and then start the worker thread for > > > > > > > packet forwarding. > > > > > > > Why this application testing the packet forwarding?, We > > > > > > > already have testpmd for that. > > > > > > > > > > > > I think it is interesting to measure forwarding performance > > > > > > when million of flow rules are in effect. > > > > > > > > > > The rules are applied to the HW CAM, Right? > > > > > Do you see any performance difference? > > > > > > > > > > > > > Yes, there are applied to HW, > > > > > > > > > OK.IMO, it is better to introduce the command-line argument to > > > disable/enable packet forwarding. > > > That will enable if someone needs to test only flow insertion > > > performance to avoid the IO setup. > > > > > > > Sure, we can have the forwarding enabled by default, and I'll add > > --disable-fwd To command line options, it looks reasonable to have it, > > I agree >=20 > In general I prefer things disabled by default. > Option --test-fwd makes more sense and can accept some forwarding > options. sure >=20 >=20 > > > > No not really, I still didn't test the impact of performance yet. > > > > Moreover it's interesting to see such results and the impact on > > > > performance, Also to see the rules are still matching after all > > > > Millions of insertion and millions of packets Sending/receiving. > > > > > > > > > > > > > IMO, This application needs to focus only on > > > > > > > - Insertion performance > > > > > > > - Deletion performance > > > > > > > - IMO, it is better to add a framework for the profile where > > > > > > > the first version of this application can define common a > > > > > > > set of ITEMS and set of ACTION and later others can extend it= . > > > > > > > And the framework can run over all the profiles and spit out > > > > > > > the insertion and deletion performance. > > > > > > > > > > > > What do you call a profile? Is it a set of rules? > > > > > > > > > > set of rules and/or actions. > > > > > > > > > > > I think this first version is proposing rules customization > > > > > > with > > > parameters. > > > > > > > > > > Just that it better to have a framework where one can easily add > > > > > new profiles and test various combos. IMO, Cascade rules take > > > > > more insertion time. > > > > > > > > > > > Note: I prefer a non-interactive application for performance te= sting. > > > > > > > > > > Me too. Command-line is fine. > > > > > > > > > > > > > For this version I'm aiming to have the command line options to > > > > decide the > > > profile. > > > > For example: > > > > . /flow-perf -n 4 -w 0000:03:00.1,dv_flow_en=3D1 -- --ingress > > > > --ether > > > > --ipv4 --udp --vxlan-gpe --queue --mark Will mean 4 Million rules o= f: > > > > Flow create 0 ingress pattern eth / ipv4 src is / udp / > > > > vxlan-gpe / end actions mark id 1 / queue < QUEUE _ID> / end > > > > > > Ok. The syntax looks good. I think we can add a number of rules as > > > well in command like instead of hardcoding to 4Millon. > > > > Sure we can have it also > > BTW, I'm planning to have a file under "user_paramters.h" > > This file for other specific fields such as: > > /** Flows count & iteration size **/ > > #define FLOWS_COUNT 4000000 > > #define ITERATION_SIZE 100000 >=20 > Please make flows count a variable which can be changed with option. Sure >=20 >=20 > > > And what about the flow deletion performance case? > > > > I agree we should have it as well in this application, I plan it to do > > it as well >=20 > Great, thanks >=20 Thanks,