> -----Original Message----- > From: dev <ovs-dev-boun...@openvswitch.org> On Behalf Of Yanqin Wei > Sent: Tuesday, June 2, 2020 8:10 AM > To: d...@openvswitch.org > Cc: ruifeng.w...@arm.com; lijian.zh...@arm.com; i.maxim...@ovn.org; > n...@arm.com > Subject: [ovs-dev] [PATCH v1 0/6] Memory access optimization for flow > scalability > of userspace datapath. > > 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. 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? Regards, -Harry <snip patch details> _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev