On Fri, 06 Jul 2012 11:20:06 +0800
Jason Wang<jasowang@xxxxxxxxxx> wrote:
On 07/05/2012 08:51 PM, Sasha Levin wrote:I would prefer that the driver sized number of queues based on numberOn Thu, 2012-07-05 at 18:29 +0800, Jason Wang wrote:Yes, currently the virtio-net driver would use 1 txq/txq by default@@ -1387,6 +1404,10 @@ static int virtnet_probe(struct virtio_device *vdev)The code is using this "default" even if the amount of queue pairs it
if (virtio_has_feature(vdev, VIRTIO_NET_F_CTRL_VQ))
vi->has_cvq = true;
+ /* Use single tx/rx queue pair as default */
+ vi->num_queue_pairs = 1;
+ vi->total_queue_pairs = num_queue_pairs;
wants was specified during initialization. This basically limits any
device to use 1 pair when starting up.
since multiqueue may not outperform in all kinds of workload. So it's
better to keep it as default and let user enable multiqueue by ethtool -L.
of online CPU's. That is what real hardware does. What kind of workload
are you doing? If it is some DBMS benchmark then maybe the issue is that
some CPU's need to be reserved.