One typicall example is irqbalance, which does not work as it should on VBox, because it sees all vCPU as part of one physical CPU, and just quits. I belive that this will then instruct guest to use different optimizations, and take in account that thread migration is expensive, and thus, increase preformance. I would like to have a way to present vCPU's in guest as separate physical CPU's, instead of just cores of single physical CPU. If you in this scenario show CPU as cores of single CPU, guest might use wrong optimization, and actually make things work slower than it should. And this will be costly, because L1/L2/元 cache copy and context switching. In this case, memory is equially shared between all threads on host, but you can assume that in more of 50% time, threads for one guest will run on different CPU. This changes drastically if host does _not_ support NUMA grupping. Effectively, this causes that CPU threads (of guest) behave as cores of single physical processor - because they are actually executed on the same NUMA node, and thus, on single physical CPU. If host supports NUMA, host OS will group threads on one node, in attempt to avoid expensive copy over NUMA nodes. And, for most of the things, i do agree with you.Īlso, problem is not with host - it just sees threads, and yes, host OS distributes those threads.īut, please note that how this distribution is done, depends on the state of NUMA structure. It's the job of the host operating system to distribute the execution threads of all currently running virtual machines over the physical hardware. The more virtual CPUs you configure, the more threads are started on the host. A guest CPU is just a thread running on the host computer. But there was no recent change how VirtualBox emulates multiple CPUs. The VirtualBox performance with multi-CPU guests needs improvement, this is a known problem. If needed, i can provide logs from host, and guests. I say connected, because it seems that only affects older host CPU's - running VM's on HP380 G7 (i7), with lagrer number of CPU on guest does not influence performance in a major way. I do also assume that this could be connected to other reports about suboptimal performance with more than one CPU. I did not manage to find anywhere any reference on how to make VirtualBox present CPU's as physical ones, so i do assume that this is something that needs to be done. On VMWare this was working flawlesly - you can go to VMWare knowelege base, and search for article 2030577. Increasing vCPU (guest CPU count) to anything above 2 causes huge performance degradation, and instability (frequent oopses). Host is installed using CentOS 6.5, as do guests.Īlso, HP580 G5 have 4 CPU's with 2x2 cores. It seems, that this is having some performance penalty, as guests seems to be running slower than before. Model name : Intel(R) Xeon(R) CPU X7350 2.93GHzįlags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx lm constant_tsc rep_good pni ssse3 lahf_lmĪddress sizes : 40 bits physical, 48 bits virtual When i did migrate those to VirtualBox, now CPU's are shown as "cores": Model name : Intel(R) Xeon(R) CPU X7542 2.67GHzįlags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts xtopology tsc_reliable nonstop_tsc aperfmperf pni ssse3 cx16 sse4_1 sse4_2 popcnt lahf_lm ida epb dtsĪddress sizes : 36 bits physical, 48 bits virtual In example - this is from guest running on another similar host with VMWare: All of them, when displaying cpuinfo, did show CPU's as separate physical packages. I have HP580 G5 machine, which was running ESXi package, and there was number of guest machines (mostly linuxes). But, it seems that it have more than one performance penalty. The summary is somewhat missleading, sorry about that, but i was just not sure how to "commpress" it to something meaningfull.Īs up to 4.3.10 version, VirtualBox engine only support multiCPU configurations, where guest sees multiple CPU's as one physical CPU, with more cores and siblings.įor majority of use-cases this is sufficiant to emulate multi-cpu environment.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |