Re: [ovs-dev] [PATCH v2 0/2] Implement terse dump for netdev-offload

2020-06-05 Thread Simon Horman
On Thu, Jun 04, 2020 at 01:58:08PM +0200, Simon Horman wrote:
> On Thu, Jun 04, 2020 at 01:51:04PM +0300, Roi Dayan wrote:
> > 
> > 
> > On 2020-06-04 1:46 PM, Roi Dayan wrote:
> > > In order to improve revalidator performance, extend netdev-offload with 
> > > terse
> > > dump support. In terse dump mode modify code that parses netlink to 
> > > flower and
> > > flower to match to only provide the essential data for conversion instead 
> > > of
> > > parsing all filter and actions data.
> > > 
> > > Implement support for new TC TCA_DUMP_FLAGS_TERSE flag. With the flag set 
> > > TC
> > > kernel implementation skips output of all other data besides stats, 
> > > cookie and
> > > flags which allows to pack much more filters in single netlink packet and
> > > reduces amount of syscalls required to execute filter dump.
> > > 
> > > The impact of the change is measured by benchmarking revalidator poll 
> > > interval
> > > time with 100k of simple L2 flows with two revalidator threads on setup 
> > > with 2x
> > > Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz, 32GB memory. For such 
> > > configuration
> > > poll interval is reduced from ~1020ms to ~220ms. 
> > > 
> > > Pointer to the kernel patches for the new TC flag:
> > > https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatchwork.ozlabs.org%2Fproject%2Fnetdev%2Fcover%2F20200515114014.3135-1-vladbu%2540mellanox.com%2Fdata=02%7C01%7Croid%40mellanox.com%7C6cd2642b7e5c46cd61e308d80874ce08%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637268645057358795sdata=gHfuLy9ZdymCq%2FqMsP5HPTWTNfO%2BcI%2BeEcopbZ9%2F1hY%3Dreserved=0
> > > 
> > > Pointer to travis ci
> > > https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftravis-ci.org%2Fgithub%2Froidayan%2Fovs%2Fbuilds%2F694595308data=02%7C01%7Croid%40mellanox.com%7C6cd2642b7e5c46cd61e308d80874ce08%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637268645057358795sdata=935ft%2B4OpTZyVGqju4Y3A4mOZusXwN%2F3ZMaonHJwLpo%3Dreserved=0
> > > 
> > > 
> > > Vlad Buslov (2):
> > >   netdev-offload: Implement terse dump support
> > >   tc: Support new terse dump kernel API
> > > 
> > >  lib/dpif-netlink.c| 70 
> > > +-
> > >  lib/netdev-offload-provider.h |  3 +-
> > >  lib/netdev-offload-tc.c   | 71 
> > > ---
> > >  lib/netdev-offload.c  | 10 +++---
> > >  lib/netdev-offload.h  |  6 ++--
> > >  lib/tc.c  | 59 +++
> > >  lib/tc.h  |  5 +--
> > >  ofproto/ofproto-dpif-upcall.c | 24 +--
> > >  8 files changed, 173 insertions(+), 75 deletions(-)
> > > 
> > 
> > forgot to include changelog. 
> > v2
> > - fixing travis errors.
> 
> Thanks, just to be on the safe side I'm running this through Travis again.
> 
> https://travis-ci.org/github/horms2/ovs/builds/694611682
> https://travis-ci.org/github/horms2/ovs/builds/694611768

Thanks again,

I've pushed this series to master.
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [PATCH v2 0/2] Implement terse dump for netdev-offload

2020-06-04 Thread Simon Horman
On Thu, Jun 04, 2020 at 01:51:04PM +0300, Roi Dayan wrote:
> 
> 
> On 2020-06-04 1:46 PM, Roi Dayan wrote:
> > In order to improve revalidator performance, extend netdev-offload with 
> > terse
> > dump support. In terse dump mode modify code that parses netlink to flower 
> > and
> > flower to match to only provide the essential data for conversion instead of
> > parsing all filter and actions data.
> > 
> > Implement support for new TC TCA_DUMP_FLAGS_TERSE flag. With the flag set TC
> > kernel implementation skips output of all other data besides stats, cookie 
> > and
> > flags which allows to pack much more filters in single netlink packet and
> > reduces amount of syscalls required to execute filter dump.
> > 
> > The impact of the change is measured by benchmarking revalidator poll 
> > interval
> > time with 100k of simple L2 flows with two revalidator threads on setup 
> > with 2x
> > Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz, 32GB memory. For such 
> > configuration
> > poll interval is reduced from ~1020ms to ~220ms. 
> > 
> > Pointer to the kernel patches for the new TC flag:
> > https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatchwork.ozlabs.org%2Fproject%2Fnetdev%2Fcover%2F20200515114014.3135-1-vladbu%2540mellanox.com%2Fdata=02%7C01%7Croid%40mellanox.com%7C6cd2642b7e5c46cd61e308d80874ce08%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637268645057358795sdata=gHfuLy9ZdymCq%2FqMsP5HPTWTNfO%2BcI%2BeEcopbZ9%2F1hY%3Dreserved=0
> > 
> > Pointer to travis ci
> > https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftravis-ci.org%2Fgithub%2Froidayan%2Fovs%2Fbuilds%2F694595308data=02%7C01%7Croid%40mellanox.com%7C6cd2642b7e5c46cd61e308d80874ce08%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637268645057358795sdata=935ft%2B4OpTZyVGqju4Y3A4mOZusXwN%2F3ZMaonHJwLpo%3Dreserved=0
> > 
> > 
> > Vlad Buslov (2):
> >   netdev-offload: Implement terse dump support
> >   tc: Support new terse dump kernel API
> > 
> >  lib/dpif-netlink.c| 70 
> > +-
> >  lib/netdev-offload-provider.h |  3 +-
> >  lib/netdev-offload-tc.c   | 71 
> > ---
> >  lib/netdev-offload.c  | 10 +++---
> >  lib/netdev-offload.h  |  6 ++--
> >  lib/tc.c  | 59 +++
> >  lib/tc.h  |  5 +--
> >  ofproto/ofproto-dpif-upcall.c | 24 +--
> >  8 files changed, 173 insertions(+), 75 deletions(-)
> > 
> 
> forgot to include changelog. 
> v2
> - fixing travis errors.

Thanks, just to be on the safe side I'm running this through Travis again.

https://travis-ci.org/github/horms2/ovs/builds/694611682
https://travis-ci.org/github/horms2/ovs/builds/694611768
___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev


Re: [ovs-dev] [PATCH v2 0/2] Implement terse dump for netdev-offload

2020-06-04 Thread Roi Dayan



On 2020-06-04 1:46 PM, Roi Dayan wrote:
> In order to improve revalidator performance, extend netdev-offload with terse
> dump support. In terse dump mode modify code that parses netlink to flower and
> flower to match to only provide the essential data for conversion instead of
> parsing all filter and actions data.
> 
> Implement support for new TC TCA_DUMP_FLAGS_TERSE flag. With the flag set TC
> kernel implementation skips output of all other data besides stats, cookie and
> flags which allows to pack much more filters in single netlink packet and
> reduces amount of syscalls required to execute filter dump.
> 
> The impact of the change is measured by benchmarking revalidator poll interval
> time with 100k of simple L2 flows with two revalidator threads on setup with 
> 2x
> Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40GHz, 32GB memory. For such configuration
> poll interval is reduced from ~1020ms to ~220ms. 
> 
> Pointer to the kernel patches for the new TC flag:
> https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Fpatchwork.ozlabs.org%2Fproject%2Fnetdev%2Fcover%2F20200515114014.3135-1-vladbu%2540mellanox.com%2Fdata=02%7C01%7Croid%40mellanox.com%7C6cd2642b7e5c46cd61e308d80874ce08%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637268645057358795sdata=gHfuLy9ZdymCq%2FqMsP5HPTWTNfO%2BcI%2BeEcopbZ9%2F1hY%3Dreserved=0
> 
> Pointer to travis ci
> https://eur03.safelinks.protection.outlook.com/?url=https%3A%2F%2Ftravis-ci.org%2Fgithub%2Froidayan%2Fovs%2Fbuilds%2F694595308data=02%7C01%7Croid%40mellanox.com%7C6cd2642b7e5c46cd61e308d80874ce08%7Ca652971c7d2e4d9ba6a4d149256f461b%7C0%7C0%7C637268645057358795sdata=935ft%2B4OpTZyVGqju4Y3A4mOZusXwN%2F3ZMaonHJwLpo%3Dreserved=0
> 
> 
> Vlad Buslov (2):
>   netdev-offload: Implement terse dump support
>   tc: Support new terse dump kernel API
> 
>  lib/dpif-netlink.c| 70 +-
>  lib/netdev-offload-provider.h |  3 +-
>  lib/netdev-offload-tc.c   | 71 
> ---
>  lib/netdev-offload.c  | 10 +++---
>  lib/netdev-offload.h  |  6 ++--
>  lib/tc.c  | 59 +++
>  lib/tc.h  |  5 +--
>  ofproto/ofproto-dpif-upcall.c | 24 +--
>  8 files changed, 173 insertions(+), 75 deletions(-)
> 

forgot to include changelog. 
v2
- fixing travis errors.

___
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev