| From: |
| Heng Qi <hengqi-AT-linux.alibaba.com> |
| To: |
| Jason Wang <jasowang-AT-redhat.com>, "Michael S. Tsirkin" <mst-AT-redhat.com>, netdev-AT-vger.kernel.org, virtualization-AT-lists.linux-foundation.org |
| Subject: |
| [PATCH net-next 0/5] virtio-net: support dynamic coalescing moderation |
| Date: |
| Thu, 12 Oct 2023 15:44:04 +0800 |
| Message-ID: |
| <cover.1697093455.git.hengqi@linux.alibaba.com> |
| Cc: |
| Xuan Zhuo <xuanzhuo-AT-linux.alibaba.com>, Eric Dumazet <edumazet-AT-google.com>, "David S. Miller" <davem-AT-davemloft.net>, Paolo Abeni <pabeni-AT-redhat.com>, Jesper Dangaard Brouer <hawk-AT-kernel.org>, John Fastabend <john.fastabend-AT-gmail.com>, Alexei Starovoitov <ast-AT-kernel.org>, Jakub Kicinski <kuba-AT-kernel.org>, Simon Horman <horms-AT-kernel.org>, "Liu, Yujie" <yujie.liu-AT-intel.com> |
| Archive-link: |
| Article |
Now, virtio-net already supports per-queue moderation parameter
setting. Based on this, we use the netdim library of linux to support
dynamic coalescing moderation for virtio-net.
Due to hardware scheduling issues, we only tested rx dim.
@Test env
rxq0 has affinity to cpu0.
@Test cmd
client: taskset -c 0 sockperf tp -i ${IP} -t 30 --tcp -m ${msg_size}
server: taskset -c 0 sockperf sr --tcp
@Test res
The second column is the ratio of the result returned by client
when rx dim is enabled to the result returned by client when
rx dim is disabled.
--------------------------------------
| msg_size | rx_dim=on / rx_dim=off |
--------------------------------------
| 14B | + 3% |
--------------------------------------
| 100B | + 16% |
--------------------------------------
| 500B | + 25% |
--------------------------------------
| 1400B | + 28% |
--------------------------------------
| 2048B | + 22% |
--------------------------------------
| 4096B | + 5% |
--------------------------------------
---
This patch set was part of the previous netdim patch set[1].
[1] was split into a merged bugfix set[2] and the current set.
The previous relevant commentators have been Cced.
[1] https://lore.kernel.org/all/20230811065512.22190-1-hengqi...
[2] https://lore.kernel.org/all/cover.1696745452.git.hengqi@l...
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: support tx netdim
drivers/net/virtio_net.c | 394 ++++++++++++++++++++++++++++++++-------
1 file changed, 322 insertions(+), 72 deletions(-)
--
2.19.1.6.gb485710b