Re: how to optimize virtio-vhost in 10G net

From: Jason Wang
Date: Sun Feb 15 2015 - 02:40:59 EST




On Sun, Feb 15, 2015 at 3:30 PM, Ding Xiao <ssdxiaoding@xxxxxxxxx> wrote:
I am test virtio-vhost in 10G environment

host info
cpu E2680@xxxxxx
memory 16G
network intel 82599BE
os centos 7

VM info
cpu 4
memory 4G
network using virtio vhost
os centos 7

I using pktgen to send udp package, the result like follow
64b 230Mb/s
1400b 5.9Gb/s

I test the speed in VMware too, the result like follow
64b 700Mb/s
1400 9.3Gb/s

I am very surprised why the speed with virtio-vhost is slow
so I test to analysis this by using perf tool
I found the tun_sendmsg occupancy rate of 35%

It looks like you're using pktgen in guest. Pktgen has known issue with driver that does not have tx completion. See discussion here: https://patchwork.kernel.org/patch/1800711/

So you can't trust pktgen result in this case.

tun_sendmsg using copy_from_user to get the data from VM
Perhaps mapping could improve the performance ?

If you enable vhost_net zerocopy, you will see obvious improvements.

or other Another improvement method ?

I suggest that you can use other benchmark tools (or apply the patch in the above link with pktgen).

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/