[ovs-dev] Parallelisation patchset

anton.ivanov at cambridgegreys.com anton.ivanov at cambridgegreys.com
Thu Jan 7 11:56:32 UTC 2021


Hi all,

Follows the parallelisation patch-set. It is incremental on top of the
"tidy up" which is a pre-requisite.

The results are 4x speedup for a 6 core/12 thread machine in lflow
computation without Datapath Groups and 2x speedup with Datapath groups.

The reason for the difference is that adding datapath groups makes it
impossible to use a "split results into fragments and merge fragments"
strategy. All workers have to work on the same result and contend for it.
Even if the contention is reduced via selective locking, this is still
slower than having uncontended result fragments and merging them as they
become ready.

Overall total sum of CPU across all threads for the whole workload
increases by less than 3-4%.

The patchset is designed in a way where some of the infrastructure can
be moved to the OVS tree at a later date.




More information about the dev mailing list