I'm sure they'd be just as slow if not slower using ESX 3 but I'm looking for some assistance.

On a physical Citrix server, logins are 1 - 4 seconds.

The virtual - 16 - 23 seconds.

I'm looking for performance enhancements that I can make to me VMs to try and reduce the login wait times.

The hardware is fine (HP BL685 (24 cores, 64GB RAM). And there's nothing pushing it yet.

Network 10Gb

I'm planning to test the configuration with VMXNET3 tomorrow, but does anyone have a list a best practices I can use when testing?

link|improve this question
1  
if you look at the VM's performance before, during and after one of these slow logins via the VSClient can you see where it's running 'hot' (i.e. CPU, CPUREADY, memory, network, disk etc.), this should help you a great deal finding where you're losing performance. You should pay particular attention to the CPUREADY stat as there's a gotcha with giving VMs too many vCPUs. – Chopper3 Feb 15 '10 at 15:12
feedback

2 Answers

The legend says that Citrix VM actually run worse with more then one vCPU. At my previous work, they were firm believers of this legend and would always create VMs with one vCPU in big numbers.

link|improve this answer
I can concur this is the case with Trend OfficeScan on a 4 vCPU - logon times of 17 minutes with three users logging on at the same time. Reduce down to 2 vCPU and it's <1 minute. I'd like to know more about this potential issue on XenServer – Rob Nicholson Jan 7 '11 at 1:04
PS. Any further references this this rather interesting suggestion of running one vCPU per Citrix XenApp (I assume) VM? Whilst the original post is about ESX Server, we're running on XenServer and have the same problem – Rob Nicholson Jan 7 '11 at 1:14
I have no references but that's what former colleagues that did Citrix XenApp all day would say :-) Also be careful in Xen, it's not necessarily because you allocate two CPUs that you get twice the processing power. – Antoine Benkemoun Jan 7 '11 at 8:06
Best practice from VMware suggests that any VM unless will be running application that will utilize multiple processors, should be installed with single vCPU. – Vick Vega May 8 '11 at 3:12
feedback

Are the hard drive partitions aligned? You can check with the following command:

wmic partition get startingOffset, name, index, blockSize

Generally speaking, we have seen significant disk i/o performance increases with aligned vm guest partitions. Since Windows 2003 and earlier are misaligned by default, this is the first thing to check.

Next, if you are using a single-cpu guest, ensure that you have the correct HAL loaded. I believe it is halaacpi.dll. Using halmacpi.dll on a single-cpu guest may result in poor performance. You need to right-click on hal.dll, select properties, and check the Original File Name field.

link|improve this answer
This is on an ESX machine, which aligns its partitions automatically if created via the VSClient. The .vmdks inside these partitioned are therefore automatically aligned for guest OSs. – Chopper3 Feb 15 '10 at 16:21
feedback

Your Answer

 
or
required, but never shown