VirtualBox

Opened 8 years ago

Last modified 8 years ago

#15952 new defect

virtio slow and have unstable performance when VM have >1 vCPU

Reported by: Hrvoje Owned by:
Component: network Version: VirtualBox 5.1.6
Keywords: virtio bridge slow Cc:
Guest type: Linux Host type: Linux

Description

Hi.

I have DL380 G7, with latest CentOS 6. Also, kernel is upgraded to kernel-lt - 3.10.x. Host have 2 NIC's enabled (configured).

I'm using latest VirtualBox 5.1.x.

Test scenario involves two VM's, and both of them are attached to both host NIC's (bridge). In VM's, both vNIC are set as virtio, and vCPU is set to 1. VM's are Centos 6 also.

Everything works ok - i'm getting >140Mbytes/s on all interfaces (eth0<->eth0 and eth1<->eth1 from VM to VM).

Now, on one of those VM's, increase number of vCPU to 2. Things now start to behave erratic.

For a short time, eth0<->eth0 is ok, and then starts to fluctuate widely - from ~100Kb/s to 50Mb/s. At the same time eth1<->eth1 stays >140Mb/s.

In rare occasion, eth0 can work ok, eth1 poorly.

Changing one of interfaces with Intel (so only one vNIC is virtio) makes things work stable - if eth0 was switched to Intel, it is >20Mb/s, while eth1 stays >140Mb/s.

From this, i would conclude that there is some kind of race condition with virtio when VM uses vCPU>1.

Also, i do not know how to debug this furtherer. Please advise.

Regards,

H.

Attachments (1)

VBox.log (72.0 KB ) - added by Hrvoje 8 years ago.
Log file of VM.

Download all attachments as: .zip

Change History (5)

comment:1 by Frank Mehnert, 8 years ago

Please attach a VBox.log file of such a VM session when you expect an unstable performance.

by Hrvoje, 8 years ago

Attachment: VBox.log added

Log file of VM.

comment:2 by Hrvoje, 8 years ago

Sorry for the delay.

Attached.

H.

comment:3 by Frank Mehnert, 8 years ago

priority: criticalmajor

Thanks for the log. There is certainly a problem but this is not critical as the E1000 emulation should work better. It's better tested.

comment:4 by Hrvoje, 8 years ago

Hi.

Well, yes, E1000 works ok, BUT it has a much lower throughput and higher latency. This is not critical for every day use, but it is if you wont to use VM's to test (performance of) other systems.

I think that this should be fixed soon, since a lot of advanced users will use virtio, and lose valuable time (as i was) to figure out why it works bad.

As minimal, it should be mentioned somewhere in docs?

Regards,

H.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use