Thanks Ian and everyone involved! Now let's go on from here... I will try to post a PMD Perf Metrics v7 with all fixes so far on top of this tomorrow.
Regards, Jan > -----Original Message----- > From: Stokes, Ian [mailto:[email protected]] > Sent: Monday, 15 January, 2018 17:23 > To: Ilya Maximets <[email protected]>; [email protected] > Cc: Heetae Ahn <[email protected]>; Bodireddy, Bhanuprakash > <[email protected]>; Fischetti, Antonio > <[email protected]>; Eelco Chaudron <[email protected]>; Loftus, > Ciara <[email protected]>; Kevin Traynor > <[email protected]>; Jan Scheurich <[email protected]>; O Mahony, > Billy <[email protected]> > Subject: RE: [PATCH v11 0/5] Output packet batching (Time-based). > > > -----Original Message----- > > From: Ilya Maximets [mailto:[email protected]] > > Sent: Monday, January 15, 2018 10:21 AM > > To: [email protected] > > Cc: Heetae Ahn <[email protected]>; Bodireddy, Bhanuprakash > > <[email protected]>; Fischetti, Antonio > > <[email protected]>; Eelco Chaudron <[email protected]>; > > Loftus, Ciara <[email protected]>; Kevin Traynor > > <[email protected]>; Jan Scheurich <[email protected]>; O > > Mahony, Billy <[email protected]>; Stokes, Ian > > <[email protected]>; Ilya Maximets <[email protected]> > > Subject: [PATCH v11 0/5] Output packet batching (Time-based). > > > > This patch-set inspired by [1] from Bhanuprakash Bodireddy. > > Implementation of [1] looks very complex and introduces many pitfalls [2] > > for later code modifications like possible packet stucks. > > > > Thanks all for the effort put into this, I've merged this to the DPDK_MERGE > branch now. > > Thanks > Ian > > > This version targeted to make simple and flexible output packet batching > > on higher level without introducing and even simplifying netdev layer. > > > > [1] [PATCH v4 0/5] netdev-dpdk: Use intermediate queue during packet > > transmission. > > https://mail.openvswitch.org/pipermail/ovs-dev/2017-August/337019.html > > > > [2] For example: > > https://mail.openvswitch.org/pipermail/ovs-dev/2017-August/337133.html > > > > The most of the series already in merged and not included in v9 and later > > versions. > > > > Testing of 'PVP with OVS bonding on phy ports' scenario shows significant > > performance improvement up to +25% (v9 has no performance difference with > > v6 here): > > > > https://mail.openvswitch.org/pipermail/ovs-dev/2017- > > December/341700.html > > > > Other testing results for v6: > > > > https://mail.openvswitch.org/pipermail/ovs-dev/2017- > > December/341605.html > > https://mail.openvswitch.org/pipermail/ovs-dev/2017- > > December/341628.html > > > > Version 11: > > * Minor comment update about distribution of the send cycles in patch > > #2. > > > > Version 10: > > * Rebased on top of '[PATCH v8 0/2] Refactor PMD stats and cycle > > counting': > > https://mail.openvswitch.org/pipermail/ovs-dev/2018- > > January/343008.html > > * Per-rxq cycles accounting changed to use new nested counters. > > > > Version 9: > > * Made on top of current DPDK_MERGE tree (cc4891f). > > * Patches 1-4,6 from v8 dropped as already included in DPDK_MERGE. > > * "Time based ..." patch updated with per-rxq cycles counting from > > the following incremental: > > https://mail.openvswitch.org/pipermail/ovs-dev/2017- > > December/342255.html > > and splitted into 3 logically separate parts for easier review > > purposes: > > 1. Microsecond granularity for dpif-netdev. > > 2. Cycles accounting changes. > > 3. Time based batching itself. > > There was no code changes in comparing with v8 + Incremental, only > > re-split. > > * Output batching mentioned in NEWS. > > * Documentation patch included in this series. > > > > Version 8: > > * Minor rebase on top of current master. > > > > Version 7: > > * Rebased on current istokes/dpdk_merge (3eb8d4f) > > * Dropped dp_netdev_pmd_thread structure refactoring patch. > > Not needed since revert applied. > > > > Version 6: > > * Rebased on current master: > > - Added new patch to refactor dp_netdev_pmd_thread structure > > according to following suggestion: > > https://mail.openvswitch.org/pipermail/ovs-dev/2017- > > November/341230.html > > > > NOTE: I still prefer reverting of the padding related patch. > > Rebase done to not block acepting of this series. > > Revert patch and discussion here: > > https://mail.openvswitch.org/pipermail/ovs-dev/2017- > > November/341153.html > > > > * Added comment about pmd_thread_ctx_time_update() usage. > > > > Version 5: > > * pmd_thread_ctx_time_update() calls moved to different places to > > call them only from dp_netdev_process_rxq_port() and main > > polling functions: > > pmd_thread_main, dpif_netdev_run and dpif_netdev_execute. > > All other functions should use cached time from pmd->ctx.now. > > It's guaranteed to be updated at least once per polling cycle. > > * 'may_steal' patch returned to version from v3 because > > 'may_steal' in qos is a completely different variable. This > > patch only removes 'may_steal' from netdev API. > > * 2 more usec functions added to timeval to have complete public API. > > * Checking of 'output_cnt' turned to assertion. > > > > Version 4: > > * Rebased on current master. > > * Rebased on top of "Keep latest measured time for PMD thread." > > (Jan Scheurich) > > * Microsecond resolution related patches integrated. > > * Time-based batching without RFC tag. > > * 'output_time' renamed to 'flush_time'. (Jan Scheurich) > > * 'flush_time' update moved to 'dp_netdev_pmd_flush_output_on_port'. > > (Jan Scheurich) > > * 'output-max-latency' renamed to 'tx-flush-interval'. > > * Added patch for output batching statistics. > > > > Version 3: > > > > * Rebased on current master. > > * Time based RFC: fixed assert on n_output_batches <= 0. > > > > Version 2: > > > > * Rebased on current master. > > * Added time based batching RFC patch. > > * Fixed mixing packets with different sources in same batch. > > > > > > Ilya Maximets (5): > > dpif-netdev: Use microsecond granularity. > > dpif-netdev: Count cycles on per-rxq basis. > > dpif-netdev: Time based output batching. > > docs: Describe output packet batching in DPDK guide. > > NEWS: Mark output packet batching support. > > > > Documentation/intro/install/dpdk.rst | 58 ++++++++++++ > > NEWS | 2 + > > lib/dpif-netdev.c | 165 +++++++++++++++++++++++++++--- > > ----- > > vswitchd/vswitch.xml | 16 ++++ > > 4 files changed, 205 insertions(+), 36 deletions(-) > > > > -- > > 2.7.4 _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
