Dr_No2
Contributor
Contributor

32-bit vs 64-Bit Windows Server 2008 and SQL Server 2008 (Guest OS)

Hello,

I am running ESX 3.5 update 2 in a HP BL680c G5 4x Quad Core 2.4ghz CPU with the EVA4400 as my storage device.

My 32-Bit environments are working great, however, now I migrated to Windows Server 2008 64-Bit and SQL Server 2008 64-Bit, and the performance is TERRIBLE!

My queries take about 25-35 seconds when in my 32-bit it will take 7 seconds.

Is this a known issue? I got the impression x64 will at least as good as 32-bit; at least better, but def not worst.

Is there any tweaks or configs Ive missed?

Thanks

Smiley Happy

0 Kudos
19 Replies
Sanjana
Hot Shot
Hot Shot

DrNo,

Is the CPU on the blade a 64-bit CPU? Doy ou have VT (Virtualization Technology) turned on in BIOS. (If not, turn it on, power off, and then power on the box.

--sanjana

0 Kudos
RParker
Immortal
Immortal

Is the CPU on the blade a 64-bit CPU? Doy ou have VT (Virtualization Technology) turned on in BIOS. (If not, turn it on, power off, and then power on the box.

Umm. if these settings were OFF it would be IMPOSSIBLE to run 64-bit VM's BOTH have to be enabled for this to work so the answer to these questions is YES.

0 Kudos
Sanjana
Hot Shot
Hot Shot

oops.

Thats right. I must be on drugs when I asked that.

0 Kudos
RParker
Immortal
Immortal

Thats right. I must be on drugs when I asked that.

Well thanks for sharing! If you have some extra . . . . Smiley Happy

0 Kudos
Rumple
Virtuoso
Virtuoso

Just out of curiosity, you mentioned you are running 32bit much faster...is that a 32bit version of 2008 O/S and SQL or were they 32bit 2005?

0 Kudos
Dr_No2
Contributor
Contributor

I am actually running both a lot faster than in 64-Bit environments.

Windows Server 2008 x64 takes 3 minues or more to just to load. Very slow....x64 Windows Server 2003 is slow too but not as slow as server 2008..

In 32-bit, it is much faster for both environments.

I am in the process of doing a lot of different tests.

I used RDM to bypass the virtual disks. Improved some performance, but x64 still runs slower than 32-Bit

Windows Server 2008 x64 loads great in a regular environment (no virtualization) and with MS Hyper-V. I am still testing SQL Server x64 on both of these environments.

Ill get back with some more results.

0 Kudos
Dr_No2
Contributor
Contributor

So I installed SQL Server 2008 on my Hyper-V environment and loaded my database. I ran the same query and it ran in only 3 seconds!!!!!! ow, I am trying to figure our why there is a huge performance difference.

In Hyper-V, you are able to create a fixed disk that take a loooooong time to create. In ESX, is there any way to "pre-allocated" a VMDK just as there is in Workstation 6.x?

Also, I noticed that my ESX server did not have no-execute protection on disabled. Would this have degrade performance? I am running Intel processors.

Any ideas on how to improve performance on my ESX hosts?

I am in the process of re-installing the Guest OS and retry my test.

0 Kudos
Sanjana
Hot Shot
Hot Shot

DrNo,

Another quick question-

How many vcpus, and RAM are the x64 VMs configured with?

--sanjana

Dr_No2
Contributor
Contributor

4 vCPUs

16GB of RAM

0 Kudos
RParker
Immortal
Immortal

4 vCPUs

Therein lies your problem. VM's are not treated like physical. I doubt very seriously if you actually need that many CPU. Try only 2, see if performance improves.

Sanjana
Hot Shot
Hot Shot

Absolutely. I second RParker.

0 Kudos
Dr_No2
Contributor
Contributor

okay. So I think I found the solution to my problem with the help of you all.

RParker, though setting the vCPU to 2 instead of 4 did not really help my problem (though it improved performance just a bit), It did however allow me to stumble to what I believe is the solution.

While configuring my VM to 2 vCPUs, I had to shut down. When I rebooted, the queries ran much faster. I tries to migrate the server and it gave me the following error:

Unable to migrate from HOST to HOST CPU is incompatible with the virtual machine's requirements at CPUID level 0x8000001 register 'edx". Mismatch detected features: *NX/XD (Data Execution Prevention). NX Memory Protection or DEP was not enabled on the other ESX host (I will shortly)

When I ran "64 Bit Scout" upon the VM reboot, it now announced me that "DEP" was enabled.

I decided to run another test with a similar server. I migrated the VM (DB) with VMotion to that same exact ESX host with NX\DEP enabled. I ran 64-Bit scout and DEP was "OFF?" or non detected. I ran the test and took 35 seconds to run. I shut the VM off and rebooted it still with with 4 vCPUs. Upon reboot I ran "64 Bit Scout" and now it told me that DEP was enabled. I ran the test in the database and it only took 6 seconds. Big improvement!

Now I posted my series of actions so if I missed anything or something looks fishy, let me know.

As for 2vCPUs vs 4 vCPus - The same test runs 3 seconds as oppose to 6-7 seconds. 2 vCPUs being much faster. The only question I have againts this is that what happens when the 2 vCPUs cannot handle big loads that 4 vCPUs can? is this not going to happen? I am afraid my 2 vCPUs will ping out.

Now the

Thanks for your help all! I really appreaciate it.

0 Kudos
doubleH
Expert
Expert

I have been following this thread with interest as I am thinking of starting to deploy 64 bit guests soon. Could you tell me where I can find more information on 64 Bit Scout? I searched the forum and it only turned up this discussion.

Thanks!

If you found this or any other post helpful please consider the use of the Helpfull/Correct buttons to award points
0 Kudos
Dr_No2
Contributor
Contributor

Im sorry. Either the name changed since I downloaded it for I named it wrong to begin with.

This is the tool I use and tells me if the CPU is 64-Bit capable, DEP turned on\off, and VT on\off

So far it has been pretty accurate for me.

0 Kudos
IT_Architect
Enthusiast
Enthusiast

When I ran "64 Bit Scout" upon the VM reboot, it now announced me that "DEP" was enabled<

I downloaded the utility. I ran it on my XP 32 bit laptop and it came back with: 64 Yes Yes. I uploaded it to a 32 bit Windows 2008 Server VM on an ESXi

and it came back with 64 Yes No. The chip has to be capable because it is an Intel 5430. Is this because the VM is 32 bit or there is a problem in the BIOS of the machine?

0 Kudos
Texiwill
Leadership
Leadership

Hello,

Moved to Virtual Machine and Guest OS forum.


Best regards,
Edward L. Haletky
VMware Communities User Moderator
====
Author of the book 'VMWare ESX Server in the Enterprise: Planning and Securing Virtualization Servers', Copyright 2008 Pearson Education.
Blue Gears and SearchVMware Pro Blogs -- Top Virtualization Security Links -- Virtualization Security Round Table Podcast

--
Edward L. Haletky
vExpert XII: 2009-2020,
VMTN Community Moderator
vSphere Upgrade Saga: https://www.astroarch.com/blogs
GitHub Repo: https://github.com/Texiwill
0 Kudos
IT_Architect
Enthusiast
Enthusiast

1. In the SecureAble app, the Hardware Virtualizaton always said NO whether it was in a 32 bit or a 64 bit VM. I'm not sure if this is normal or not.

2. I ran Passmark tests between 2008 Server Web Edition 32 bit and 64 bit. Overall, 64 bit was 27% faster and more consistent as well. I was hoping for break even, but was pleasantly suprised. Some memory operations are a 1/3 faster. CPU operations are generally 5%-15% quicker. Most of the remainder the 64 was faster by a more modest margin.

Does anybody get the SecureAble utility to show Hardware Virtualization YES inside of a VM?

0 Kudos
Dr_No2
Contributor
Contributor

In a VM, I get YES:YES:No all the time on my 64-bit OS were 64-bit capable VT and DEP chip enabled. This must have something to do with hypervisor technology and the VM.

On the actual physical box running Windows 2008, I get YES:YES:YES using the securable app. Once I installed MS Hyper-V, I get NO on Hardware Virtualization on the physical box and the virtual machines inside of it. So it is not an ESX only issue.

0 Kudos
IT_Architect
Enthusiast
Enthusiast

Got it! That's the way it works for me also. That's all I needed to know.

Thanks!

0 Kudos