LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Virtualization and Cloud
User Name
Password
Linux - Virtualization and Cloud This forum is for the discussion of all topics relating to Linux Virtualization and Linux Cloud platforms. Xen, KVM, OpenVZ, VirtualBox, VMware, Linux-VServer and all other Linux Virtualization platforms are welcome. OpenStack, CloudStack, ownCloud, Cloud Foundry, Eucalyptus, Nimbus, OpenNebula and all other Linux Cloud platforms are welcome. Note that questions relating solely to non-Linux OS's should be asked in the General forum.

Notices


Reply
  Search this Thread
Old 02-05-2010, 10:50 AM   #1
ineya
Member
 
Registered: Jul 2007
Posts: 39

Rep: Reputation: 16
Question vmware ESX and slow syscalls


We have 2 physical machines in company. Both have the same HW configuration, running the same CPU:
Intel(R) Xeon(R) CPU E5420 @ 2.50GHz

One is a regular linux, and on second one we have ESX, version 4.
In the ESX we have linux, which should be almost identical with the linux on first machine.

The kernel version is: (a bit old for these days, but needed cause of old project)
Linux x 2.4.21-53.ELhugemem #1 SMP Wed Nov 14 03:46:17 EST 2007 i686 i686 i386 GNU/Linux

The problem is that virtualized linux is running slower. I have read, that the overhead should be ~8%, which is something I could live with. But the performance hit can be seen by naked eye.

I made 2 test programs:
First was just doing some extensive work in userspace (e.g. giant loop and counting numbers). Here the performance hit is around 8%-10%, which is fine.

Second program is doing syscalls - "close(0);" in loop. And this is where things aren't pretty anymore:
Linux running on real HW:
Code:
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 99.65    0.963257          10    100002     99999 close
  0.15    0.001403          33        43        41 open
  0.14    0.001368          34        40        36 stat64
  0.06    0.000566         566         1           execve
  0.00    0.000027           5         5           old_mmap
  0.00    0.000007           4         2           fstat64
  0.00    0.000006           6         1           read
  0.00    0.000006           6         1           munmap
  0.00    0.000004           4         1           uname
  0.00    0.000003           3         1           brk
------ ----------- ----------- --------- --------- ----------------
100.00    0.966647                100097    100076 total
 
real    0m4.613s
user    0m0.760s
sys     0m3.730s
Linux running on ESX:
Code:
Process 14702 detached
% time     seconds  usecs/call     calls    errors syscall
------ ----------- ----------- --------- --------- ----------------
 77.76   17.1206772         182    100002     99999 close
  3.01    0.703602      703602         1           execve
  2.99    0.700382      700382         1           set_thread_area
  2.99    0.700337      700337         1           munmap
  2.99    0.700328      700328         1           uname
  2.99    0.700123      700123         1           read
  2.99    0.700108      700108         1           brk
  2.14    0.500571      100114         5           old_mmap
  1.71    0.400229      200115         2           fstat64
  0.43    0.100360       33453         3         1 open
------ ----------- ----------- --------- --------- ----------------
100.00   23.412812                100018    100000 total
 
real    0m48.434s
user    0m5.410s
sys     0m40.610s
The machine running on ESX spent 1200% more time doing the same thing.
Any ideas why this is happening? It seems, that the context switch is very expensive for some reason.
 
Old 02-08-2010, 02:56 PM   #2
rweaver
Senior Member
 
Registered: Dec 2008
Location: Louisville, OH
Distribution: Debian, CentOS, Slackware, RHEL, Gentoo
Posts: 1,833

Rep: Reputation: 167Reputation: 167
You say the machines are configured the same, but how are the disks being accessed, have you verified there are no patches that apply to your hardware that need applied, do both systems use the same kind of underlying raid, do you have any other applications guests on the esx host, and did you install the vmware tools?
 
Old 02-09-2010, 01:28 AM   #3
ineya
Member
 
Registered: Jul 2007
Posts: 39

Original Poster
Rep: Reputation: 16
http://communities.vmware.com/message/1471414
 
1 members found this post helpful.
  


Reply

Tags
bigmem, cpu, smp, vmware



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
VMware ESX 3.5 on Ubuntu 8.04? your_shadow03 Linux - Newbie 2 06-18-2009 05:43 AM
Slackware 12 on VMware ESX 3.02 caustic386 Slackware 10 07-25-2008 09:39 AM
VMware ESX Server Echo Kilo Linux - Server 10 02-09-2008 08:22 PM
VMware esx 3 HELP jstuhlmiller Linux - Newbie 1 09-25-2007 08:02 AM
want to exchange my vmware esx 3.1 against a vmware gsx 3.1 neton Linux - Software 1 08-06-2004 08:23 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Virtualization and Cloud

All times are GMT -5. The time now is 06:10 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration