Hi Harry,
> > > > OVS userspace datapath is a program with heavy memory access. It needs > > to load/store a large number of memory, including packet header, > > metadata, EMC/SMC/DPCLS tables and so on. It causes a lot of cache > > line missing and refilling, which has a great impact on flow > > scalability. And in some cases, EMC has a negative impact on the > > overall performance. It is difficult for user to dynamically manage the > enabling of EMC. > > > > This series of patches improve memory access of userspace datapath as > > follows: > > 1. Reduce the number of metadata cache line accessed by non-tunnel traffic. > > 2. Decrease unnecessary memory load/store for batch/flow. > > 3. Modify the layout of EMC data struct. Centralize the storage of > > hash value. > > > > In the NIC2NIC traffic tests, the overall performance improvement is > > observed, especially in multi-flow cases. > > Flows delta > > 1-1K flows 5-10% > > 10K flows 20% > > 100K flows 40% > > EMC disable 10% > > Hi Yanqin, > > A quick simple test here with EMC disabled shows similar performance results > to your data above, nice work. I think the optimizations here make sense, to > not touch extra cache-lines until required (eg tunnel metadata), particularly > for outer packet parsing. Many thanks for your time to test and review the patch. > > I hope to enable more optimizations around dpif-netdev in 2.15, so if you are > also planning to do more work in this area, it would be good to sync to avoid > excessive rebasing in future? That is great to hear that. If we have new work planed in 2.15, we will discuss with you and community. > > Regards, -Harry > > <snip patch details> _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev