From: Heng Qi <hengqi@linux.alibaba.com>
To: netdev@vger.kernel.org, virtualization@lists.linux-foundation.org
Cc: Jason Wang <jasowang@redhat.com>,
"Michael S. Tsirkin" <mst@redhat.com>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>,
"David S. Miller" <davem@davemloft.net>,
Jesper Dangaard Brouer <hawk@kernel.org>,
John Fastabend <john.fastabend@gmail.com>,
Alexei Starovoitov <ast@kernel.org>,
Simon Horman <horms@kernel.org>, Jakub Kicinski <kuba@kernel.org>,
"Liu, Yujie" <yujie.liu@intel.com>
Subject: [PATCH net-next v2 0/5] virtio-net: support dynamic coalescing moderation
Date: Thu, 2 Nov 2023 21:09:28 +0800 [thread overview]
Message-ID: <cover.1698929590.git.hengqi@linux.alibaba.com> (raw)
Now, virtio-net already supports per-queue moderation parameter
setting. Based on this, we use the linux dimlib to support
dynamic coalescing moderation for virtio-net.
Due to some scheduling issues, we only support and test the rx dim.
Some test results:
I. Sockperf UDP
=================================================
1. Env
rxq_0 with affinity to cpu_0.
2. Cmd
client: taskset -c 0 sockperf tp -p 8989 -i $IP -t 10 -m 16B
server: taskset -c 0 sockperf sr -p 8989
3. Result
dim off: 1143277.00 rxpps, throughput 17.844 MBps, cpu is 100%.
dim on: 1124161.00 rxpps, throughput 17.610 MBps, cpu is 83.5%.
=================================================
II. Redis
=================================================
1. Env
There are 8 rxqs, and rxq_i with affinity to cpu_i.
2. Result
When all cpus are 100%, ops/sec of memtier_benchmark client is
dim off: 978437.23
dim on: 1143638.28
=================================================
III. Nginx
=================================================
1. Env
There are 8 rxqs and rxq_i with affinity to cpu_i.
2. Result
When all cpus are 100%, requests/sec of wrk client is
dim off: 877931.67
dim on: 1019160.31
=================================================
IV. Latency of sockperf udp
=================================================
1. Rx cmd
taskset -c 0 sockperf sr -p 8989
2. Tx cmd
taskset -c 0 sockperf pp -i ${ip} -p 8989 -t 10
After running this cmd 5 times and averaging the results,
3. Result
dim off: 17.7735 usec
dim on: 18.0110 usec
=================================================
Changelog:
v1->v2:
- Patch(2/5): a minor fix.
- Patch(4/5):
- improved the judgment of dim switch conditions.
- fix safe problem of work thread.
- Patch(5/5): Drop the tx dim implementation.
Heng Qi (5):
virtio-net: returns whether napi is complete
virtio-net: separate rx/tx coalescing moderation cmds
virtio-net: extract virtqueue coalescig cmd for reuse
virtio-net: support rx netdim
virtio-net: return -EOPNOTSUPP for adaptive-tx
drivers/net/virtio_net.c | 331 ++++++++++++++++++++++++++++++++-------
1 file changed, 274 insertions(+), 57 deletions(-)
--
2.19.1.6.gb485710b
next reply other threads:[~2023-11-02 13:09 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-11-02 13:09 Heng Qi [this message]
2023-11-02 13:09 ` [PATCH net-next v2 1/5] virtio-net: returns whether napi is complete Heng Qi
2023-11-02 13:09 ` [PATCH net-next v2 2/5] virtio-net: separate rx/tx coalescing moderation cmds Heng Qi
2023-11-09 4:18 ` Jason Wang
2023-11-02 13:09 ` [PATCH net-next v2 3/5] virtio-net: extract virtqueue coalescig cmd for reuse Heng Qi
2023-11-02 13:09 ` [PATCH net-next v2 4/5] virtio-net: support rx netdim Heng Qi
2023-11-06 5:13 ` kernel test robot
2023-11-06 5:13 ` kernel test robot
2023-11-09 4:43 ` Jason Wang
2023-11-09 8:31 ` Heng Qi
2023-11-02 13:09 ` [PATCH net-next v2 5/5] virtio-net: return -EOPNOTSUPP for adaptive-tx Heng Qi
2023-11-09 4:45 ` Jason Wang
2023-11-09 8:34 ` Heng Qi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1698929590.git.hengqi@linux.alibaba.com \
--to=hengqi@linux.alibaba.com \
--cc=ast@kernel.org \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=hawk@kernel.org \
--cc=horms@kernel.org \
--cc=jasowang@redhat.com \
--cc=john.fastabend@gmail.com \
--cc=kuba@kernel.org \
--cc=mst@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=virtualization@lists.linux-foundation.org \
--cc=yujie.liu@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.