Philip Lippard

Please say it ain't so

Every Man Deserves To Have His Play Toys

My play toy just happens to be 8GB of memory.

8GB Installed on Thinkpad T61p My 8GB of Kingston memory arrived today for my Thinkpad T61p (two 4GB cards).  I did realize a performance gain, and over the next few days I will assess whether multiple concurrent virtual machines perform faster and smoother.  As you can see in the left-most image, my T61p now has 8GB installed with a Windows 7 64 bit host OS.

Windows 7 64 Bit Host Performance After Kingston Memory Installation As far as a performance gain, the right-most AFTER image shows the improved performance using the Windows 7 performance metrics. 
Windows 7 64 Bit Host Performance Before Kingston Memory Installation The right-most BEFORE image shows comparable performance before the Kingston memory installation.
As you may recall from my original Sep-2009 blog post I have pursued several steps in getting ready for 64 bit Windows 7 and also extending the life of and improving the performance of my Thinkpad T61p.  My principal objective has been to migrate my host OS and eventually all guest OSs to 64 bit, however in doing so I also wanted to speed up the hard drives while also adding additional memory to assist with the 64 bit host OS improved performance.  To summarize the steps taken since Sep-2009:
 
  • Replace original T61p hard drives with faster Hitachi drives; both primary and Ultra-Bay drive.  All VMs are on Ultra-Bay drive.
  • Consider which virtual machine management software I want to use with Windows 7 64 bit host OS.  After a few problems, I realized that Microsoft had taken a significant step backwards with the Windows 7 version of Windows Virtual PC (WVP) support and I settled on using the new Windows 7 compatible version of VMWare Workstation; version 7.0. My biggest problem with VMWare Workstation was a problem in conducting an iPhone synchronization within a VMWare virtual machine; which ultimately was resolved as an iPhone data corruption problem.
  • Replace my existing 4GB of memory with 8GB of faster Kingston memory.  The obvious goal here was to provide memory beyond the 4GB limit for 32 bit OSs, so that Windows 7 64 bit can freely use all addressable memory, thus hopefully realizing faster and smoother virtual machine performance.

 

Four VMs on Windows 7 64 Bit Host With the above steps now completely realized, here is a sampling of the end result; four concurrent executing virtual machines.....from left to right....1) My old Vista 32 bit Development VM, now converted from VPC 2007 to a VMWare VMDK VM...2) My new 64 bit Windows 7 Development VM; loaded with VS.NET 2010 Beta 2 and all the newly announced products from PDC Nov-2009....3) My 32 bit Windows 7 Administrative VM; containing Outlook, Quicken, etc....and lastly... 4) A small Windows XP image containing IE6 and Firefox 1.5, which I use for legacy testing.  The 1st three VMs are assigned 2GB of memory each, while the Windows XP VM is assigned 256MB.   Of course, the host OS is 64 bit Windows 7.   Sure beats the COMPAQ arm stretcher portable I used to carry through airports in the mid to late 1980s.

Now....is this cool or what ?

Virtualization Performance Results

-I have continued to test the following Windows 7 configuration. 

  • Windows 7 64 Bit Host OS…with either Windows 7 Virtual PC (WVPC) RC support ....or VMWare 6.5 Workstation ...(both are NOT installed at same time)
  • Vista 32 Bit Guest OS (VM # 1 )
  • Windows 7 32 Bit Guest OS (VM # 2)

I was advised by MSFT support that for best overall Windows 7 virtualization performance I should disable the BIOS Speedstep setting in my BIOS Power settings.  These performance results reflect this BIOS Speedstep setting being disabled.

Performance results when comparing WVPC RC to VMWare are as follows…

  1. With only VM # 1 active ... opening a web site project...WVPC takes 1 min 0 sec... VMWare takes 0 min 25 sec.
  2. With only VM # 1 active.... a build of one of my typical web sites ... WVPC takes 3 min 42 sec....VMWare takes 2 min 10 sec.
  3. With both VM # 1 and VM # 2 active... a build of the same web site ... WVPC takes 7 min 20 sec....VMWare takes 4 min 26 sec.

I find that boot-up time is roughly the same for both WVPC and VMWare.... regardless of number of VMs active....obviously boot-up time for two VMs at the same time takes longer....however WVPC takes roughly the same time as VMWare.

vmwareConsidering the above performance results …I have decided to use VMWare for virtualization support as I migrate to Windows 7.  The following VMWare features are also quite compelling:

  • Much better device support…reassignment of devices, etc.
  • Ability to record and replay as a video of a VM's operations.
  • Ability to suspend or take a snapshot of a VM….and resume execution.
  • Richness of configuration options…such as number of CPUs to use within a VM.
  • Ability to host 64 Bit guests OSs.

Next step…I upgrade my Thinkpad T61p memory to 8gb....and over time I migrate the virtual machines from 32 bit to 64 bit.

Backing Off to Windows Vista 64 Bit

Vista 64 Bit Performance Given the problems encountered with Windows Virtual PC (WVP) support, rather than backing off to my Vista 32 Bit host OS, I have decided to back-off to a Vista 64 Bit host OS.  This will enable me to realize the memory relief I am looking for when executing concurrent virtual PCs.

Windows Vista 64 Bit does not provide the performance rating as Windows 7 but it will have to do for now.  I am ordering my 8gb of memory today.


Hitachi SATA 3.0gb Interface Drive Performance I found a utility on the Internet called CrystalDiskMarkwhich provides meaningful disk performance statistics.  My new Hitachi SATA 3.0gb interface Thinkpad T61p hard drives provide a noticeable performance improvement when compared to the performance of the 5400RPM drives I had been using. 

T61p-5400RPM-Disk-Performance I had been using the slower 5400RPM drives primarily because it was what was available at the time (2007) for larger capacity drives.


Biggest drawback with not having Windows 7 64 bit as my host OS is that Windows 7 Virtual PCs support attaching a USB device to a VPC....however I am unable to do so with Vista 64 bit and the predecessor VPC 2007 product......so I am NOT able to sync-up my iPhone within a Vista 64 bit VPC.....and of course Outlook must be in the same VPC for the sync-up.

Windows 7 64 bit - Extending Thinkpad T61p life and improving performance

windows7rc_bloglogo_thumb

As we approach the official release date of Windows 7, I have been considering how I can extend the life of and improve the performance of my Thinkpad T61p (Intel Core 2 Duo CPU T7800 @ 2.60 Ghz) which I purchased in Nov-2007 (pre-crash).  I have been considering using Windows 7 64 bit as my host OS and executing practically everything else in Windows Virtual PCs.  I have been a heavy user of Virtual PC (VPC) 2007 and its predecessor VPC 2004 product, however up to now I have limited my VPC use to development tools only.  My development VPCs include the following:

 

  • Vista/ VS.NET 2008 development environment
  • Windows XP/ VS.NET 2005 development environment
  • Windows XP/ VS.NET 2003 development environment
  • SQL Server 2005 - Enterprise test environment
  • Windows Server 2003 test environment
  • Windows Server 2008 test environment
  • Windows XP DotNetNuke test environment
  • Windows XP IE6 and Firefox 1.5 legacy test environment
  • Windows XP IE7 legacy test environment

I also use what I refer to as my Day-to-Day applications heavily on the same Thinkpad (word processing, online banking, email, iTunes, archive, everything except development).  I also want to consider pushing these Day-to-Day applications down into a dedicated VPC.  One primary reason for this is security; when the Thinkpad needs to be serviced, which involves sending the unit off to IBM Memphis for depot maintenance.  Having Day-to-Day applications as well as development tools in VPCs makes it easy to send a skinny hard drive to IBM Memphis; eliminating the worry of whether my data will be compromised.  I have owned six or seven Thinkpads since 1992, and I usually have to send a unit to IBM Memphis at least once during a three year warranty period.

safe_image

As a result of the inherit benefits of using a 64 bit OS versus 32 bit, a performance gain will no doubt be realized.  I also want to upgrade the hard drives to units which support a Serial ATA 3.0gb interface versus the current 1.5gb interface.  I considered some of the new solid state drives, however capacity is not what I need (usually caps out at around 128gb) and costs is prohibited at around $750 per 128gb drive.  On the other hand, the performance of traditional SATA hard drives have improved significantly.  Hitachi drives are available with a capacity of 320gb for less than $100 (a raw 2.5 SATA drive; no chassis; click on hard drive image).

 

Lenovo-ThinkPad-T61p

My T61p currently has 4gb of memory (two 2gb memory cards).  Because of the 64 bit host OS, I want to consider getting two 4gb memory cards; thus providing total memory of 8gb for heavy VPC usage.   As a result of 64 bit CPU operations, I expect a performance improvement with the 64 bit OS alone, however the real benefit I am looking for from a 64 bit OS is the broader range of memory available.  With 32 bit, memory access is limited to 4gb total.  With 64 bit, I expect the 8gb memory to provide quite noticeable multiple VPC performance improvements. Click the Thinkpad image to see memory I am considering.

 

32-Bit-Performance

Before I embark on installing my Windows 7 64 bit host OS onto my new Hitachi drive, I first want to obtain performance measurements of my current Vista 32 bit environment.  I go to Control Panel/ Performance Information and Tools, where one can request a performance rating.  One should note from this 32 bit performance rating that 1) Processor calculations per second is rated @ 5.4.......2) Memory operations per second is rated @ 5.1.....and 3) Primary hard drive transfer data rate is rated @ 5.1.

The installation of Windows 7 64 bit proceeded without incident, with the exception of the need for a nVidia 64 bit graphics interface driver, which I located on the Internet.  Virtual PC support within Windows 7 has changed names to Windows Virtual PC (WVP).  WVP is available via a separate download, in release candidate form as of this writing.

VPC-Hardware-Virtualization Before switching over to a Windows 7 64 bit host OS, I fully prepare my VPCs for the switchover.  I create the Day-to-Day VPC containing all of my non-development related applications and I use Windows 7 32 bit as the guest OS for this Day-to-Day VPC.  Immediately before the switchover I plan to start with two primary VPCs; my Vista 32 bit VS.Net 2008 Development VPC and my new Windows 7 32 bit Day-to-Day VPC.  Both are executing great with a Vista 32 bit host OS and Virtual PC 2007.  BTW...I did notice that VPC 2007 now has a Hardware Virtualization option; thus providing improved performance when one enables BIOS level Hardware Virtualization.  I am not sure when this Hardware Virtualization option surfaced in the VPC 2007 product.  As I move forward to a Windows 7 64 bit host OS and WVP, I am surprised that Microsoft requires BIOS level Hardware Virtualization if one plans on executing virtual machines un Windows 7.  I have read on the Internet that if one does not have a CPU with the Hardware Virtualization feature that VPC 2007 can be installed on Windows 7, however it is NOT a supported environment.  Considering the completeness of Windows 7, this restriction is surprising.

64-Bit-PerformanceEverything is set to go; Windows 7 64 bit host OS is installed on faster Hitachi hard drive, however I have not yet purchased the 8gb of memory.  The 8gb of memory is primarily beneficial for multiple VPC performance, so I want to make sure everything works well first before making this investment.  I conduct a performance rating of the Windows 7 64 bit host OS and see these results.  Note the improved performance of  1) Processor, 2) Memory ...and 3) Primary Hard Drive, providing an overall performance rating of 5.8.

My general observations from copying quite large data files (VPCs) back and forth from backup USB devices is that that the Hitachi 3gb interface SATA drive appears to be about 40% faster than the 1.5gb SATA drives.

Regrettably, as I move forward to implementing the VPCs within Windows 7 WVP, I first install the new WVP Integration Components (the equivalent of VPC 2007 Virtual Machine Additions) and my WVPs work well for awhile, however after a short while the WVPs start consuming 100% CPU time for no obvious reason.  I actually spent four days working on this and I always encounter the same problem of the WVPs consuming 100% CPU time.   As a result, I can only conclude that the WVP release candidate is not ready for prime time.  For now, I am moving forward to replacing my drives with the faster Hitachi 3.0gb SATA drives (I have a primary and a secondary - VPCs on secondary drive), however regrettably my host OS will continue to be Vista 32 bit for now.  My VPCs are prepped and ready for the move to a Windows 7 64 bit host OS whenever I can find the time to work with MSFT to get the WVP problem resolved.  So, Windows 7 looks great and I am ready to purchase the 8gb of memory, however Windows Virtual PC (WVP) support does not look so good.... at least for now.

I have also noted that Norton Ghost version 14.0 is not supported in Windows 7.  I am not sure I want to move forward with a Windows 7 64 bit host OS if I have no means to take image copies of my drives.  I will have to assess who owns Norton Ghost at this point (Symantec I think) and see if a new version is forthcoming.

So, at this point the show stoppers for moving forward to a Windows 7 64 bit host OS is questionable Windows Virtual PC (WVP) support and Windows 7 compatible Norton Ghost support.