• View Communities
    • Citrix Developer Network
      The place for unfiltered straight talk on Citrix products. Blogs, code downloads, best practices, APIs, and more can all be found here.
    • Citrix Ready Community Verified
      Does it work with Citrix? Application compatibility questions are a thing of the past with the new Citrix Community Verified site.
    • Blogs
      Learn the latest from the Citrix employees who are building application delivery infrastructure technologies.
    • Blogosphere
      The Citrix Blogosphere is a window into the thousands of conversations taking place about Citrix and Application Delivery.
  •  Sign In
The Citrix Blog
Blogs for Bernard Hannon [ Blogs | Profile ]
Permalink | Twitter Post to Twitter | Comments (3) | Views (2367) |

posted by Bernard Hannon

On June 16, 2009 I wrote about the results of virtualization performance tests with 32-bit XenApp and XenServer 5.5 on a dual quad core Intel Xeon x5570 (Nehalem) host server (http://community.citrix.com/pages/viewpage.action?pageId=73564465). I had mentioned that Intel's Hyperthreading technology on the x5570 produced sufficient logical CPU threads to allow us to build eight 2 vCPU, 3.6Gb XenApp VMs vs. only four on the x7350. It required adding another 16Gb of RAM to the x5570, but in doing so, we now had a single host server density of 554 concurrent users vs. only 188 on the x7350 host. That's three times as many users on a dual quad core system with only 16Gb more RAM. Not a bad trade off.

We recently posted a white paper to the XenServer product section of citrix.com highlighting the details of the test project. You can find it here: http://citrix.com/%2Fsite%2Fresources%2Fdynamic%2Fsalesdocs%2FXenApp_XenServer_Intel_Xeon_x5570_WP_Final.pdf. Here's the key takeaway: Virtualizing XenApp servers on the x7350 host created a 4:1 32 bit XenApp server consolidation opportunity. However, that same server consolidation opportunity was now nearly 12:1 when using the x5570! The graph below illustrates the reusults from the whitepaper. Note, we showed the effects of consolidation on the x5570 both with and without Hyperthreading.

If you are one of the many 32 bit XenApp customers still running your farm on physical servers and want to reduce your footprint in the data center, reduce your server energy consumption and cooling requirements, and take advantage of the many management benefits that virtualization with XenServer 5.5 offers, this might be all the incentive you need to get started.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (4) | Views (4522) |

posted by Bernard Hannon

This past April, as Intel was releasing their new Xeon E5500 series processors, we showed you some remarkable test results demonstrating a solid 53% performance improvement between E5400 and E5500 based servers when running a virtualized DBHammer SQL Server 2008 workload [http://community.citrix.com/pages/viewpage.action?pageId=65732872] 
We now wanted to move onto a workload representing the largest segment of the Citrix user community, XenApp. More specifically, XenApp 5.0 virtualized with the new XenServer 5.5. As we've seen in previous similar virtualization performance tests with XenApp on XenServer, when the XenApp guests are 32 bit (the majority of XenApp users still use use 32-bit applications), the opportunity for server consolidation can be significant. We wanted to see just how good the server consolidation opportunity is when an Intel Xeon E5500-based server is used as a XenServer host. In this case, we looked at how the server consolidation might look when going from 2.93 GHz Xeon X7350 physical XenApp servers to 2.93 GHz Xeon E5570 XenServer hosts.

For the purpose of this test, we ran the physical XenApp server with a single 32-bit workload (Windows 2003 SP2 with MS Office). It was given 2 CPUs and 4GB RAM, typical for this XenApp server workload. Using EdgeSight for Load Test (ESLT) version 3.5 we established a baseline of 25 seconds for users to login, run a standard MSOffice task script, and then logout (including network connect time). We added users until the threshold to run this sequence reached a latency of 30%, at which point the server was deemed to be at capacity. Using this configuration and test program, the maximum number of users was 47. This was a relatively small, single physical XenApp server, so 47 concurrent users was considered respectable.

Since we were testing with a Xeon E5570 server with dual quad core CPUs and 32 GB of RAM, we wanted to see how many users we could get onto a single host using multiple XenApp VMs, each with the same resource configuration as we used in the physical server test. We built 2 vCPU, 3.5 GB RAM XenApp virtual servers on the E5570 and ran two tests using the same ESLT workload. The difference between the 4 GB of RAM used in the physical server test and 3.5 in the virtual server test is due to the need for memory overhead when running multiple VMs. In the XenServer setup screen, we selected the option of running XenApp which automatically configured the VMs with the appropriate amount of shadow memory for XenApp workloads.

We also wanted to see the impact of hyperthreading to VM density per host as well as the number of concurrent users per VM. Intel describes hyperthreading as "delivering thread-level parallelism on each processor resulting in more efficient use of processor resources, higher processing throughput and improved performance." It would be interesting to see how many more concurrent XenApp users we could get with an upgrade to the E5570 and by virtualizing with XenServer 5.5 and then see how many more users we might get once hyperthreading was enabled. Would hyperthreading allow us to run twice as many VMs on a single host? To find out, we ran our first virtualized XenApp test with hyperthreading activated and then repeated the test again with it turned off. With hyperthreading, the first thing we noticed was that even though there were only 8 CPU cores on the E5570 host server, XenServer was able to see 16 vCPU cores as resources available to be assigned to VMs. As a result, we were able to successfully run a maximum of eight VMs, each with the necessary 2 vCPU cores, generating an average of 69.25 users per VM for a total of 554 users.

When we ran the second test, this time with hyperthreading turned off, and noticed that the number of users per VM increased slightly to 88. However, the maximum number of VMs was now only four, due to the fact that we now only had 8 vCPU cores to work with. As a result, the total number of users for the host was now only 352.



 

In the end, we discovered that while hyperthreading doubled the number of assignable vCPU resources, it didn't directly translate to a 2:1 increase in the number of users per VM. That's a reasonable trade-off, since hyperthreading effectively doubled the number of VMs that we could create with the same number of CPU cores. So, while were able to generate 6.5x the number of concurrent XenApp users onto a single Xeon E5570 host server without hyperthreading as compared to a single X7350 physical XenApp test server, the number of concurrent users increased to an incredible 10.8x with hyperthreading. That's a remarkable server consolidation opportunity for any 32-bit XenApp administrator. And while XenApp will virtualize very nicely with XenServer on that same dual quad core X7350 server, remember that the number of users per VM when using this test schema will be 47. Since hyperthreading isn't available on the X7350, the maximum number of VMs on the X7350 host would be 4 making the maximum number of concurrent users 188. Not bad, but nowhere near the 544 concurrent users we get on the E5570 with hyperthreading. That's an increase of 356 users, almost three times the number of concurrent XenApp users.

Pretty hard to ignore.  

As we've seen here, the promise of Intel's Nehalem technology is being realized in some very practical ways. As a result, the performance bar for XenApp, when virtualized with XenServer, is now higher than ever.

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (0) | Views (2938) |

posted by Bernard Hannon

In continuation of our virtualization performance tests with large enterprise application platforms running on XenServer, we recently completed an extensive series of performance and scalability tests with Microsoft SQL Server 2008 on XenServer 5. In the past, we successfully demonstrated the enormous server consolidation and management benefits of virtualizing Citrix XenApp 4.5 and 5.0 as well as Microsoft Exchange 2007 using XenServer. Test results for these can be found on the white paper section of XenServer/Essentials at Citrix.com:  http://citrix.com/English/ps2/products/documents_onecat.asp?contentid=683148&cid=White+Papers.

The results of tests for SQL Server 2008 on XenServer were equally as impressive.

Testing was done with readily-available load test programs, DBHammer for SQL and SQLIO, using three hardware configurations we described simply as small, medium and large. We compared results of XenServer with that of native, physical SQL servers running anywhere from one to eight instances of SQL Server 2008, all on single servers. Multiple instance SQL servers were compared to virtual host servers running an equal number of SQL Server VMs. Finally, we did comparison tests using the latest available release (as of Q1 2009) of another virtualization platform provider, described as Vendor X. The following is a highlight of the results: 

Small Configuration:

  • When comparing a single instance native server with a single XenServer VM, XenServer's virtualization overhead was less than 8%. By comparison, overhead for Vendor X was 36%.
  • In the two instance native vs. two VM tests, XenServer out-performed both the native server and Vendor X by a considerable margin.


Medium configuration:

  • XenServer continued to virtualize with less than 8% overhead in the single instance/single VM test and outperformed both the native server and Vendor X in the two and four instance/VM tests.
  • Note: Vendor X did not participate in the single instance/single VM test due to published maximum VM size limitations.


 
Large configuration:

  • Native servers outperformed XenServer in the two instance/VM test, however XenServer outperformed native servers in the four and eight instance/VM tests.
  • Vendor X outperformed XenServer in the four instance/VM test, the only test in the entire SQL Server 2008 test series where they did so. However, Vendor X performance degraded considerably once the number of VMs doubled from four to eight, while XenServer's performance actually improved.     
  • Note: XenServer did not participate in the single instance/single VM test due to published maximum VM size limits. Vendor X did not participate in both the single and two instance/VM tests due to published maximum VM size limits.

  

Once again, XenServer continues to demonstrate the ability to virtualize the most demanding of enterprise application platforms with relative ease. The key benefit of using XenServer virtualization with Microsoft SQL Server lies in the low virtualization overhead, making XenServer an effective server management tool in SQL Server 2008 farms running primarily single instance servers. However, the benefits of virtualization and the strength of XenServer specifically are most pronounced with multiple instances of SQL Server. Multiple XenServer VMs are increasingly more productive than physical SQL servers as the number of instances increase. 

The results for all tests in the project along with a detailed description of the tools and methodologies can be found at: http://citrix.com/%2Fsite%2Fresources%2Fdynamic%2Fsalesdocs%2FSQL_Server2008_XS5_WP.pdf


 

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (4) | Views (6646) |

posted by Bernard Hannon

This is essentially a copy of a post I did on the Intel Server Community page last week. Since it didn't feed the virtualization industry blog pages, I decided to re-post it here as well....

This is a big week for Intel, as they formally announce the availability of their new high performance Xeon 5500 CPU, codenamed "Nehalem". Citrix has anticipated the potential for enhanced performance when using the Intel Xeon E5500 with XenServer for some time now. We were fortunate to have received one of these gems from Intel in January to do our own comparison tests in our Bedford, MA test lab. Since we had just completed a series of performance validation tests for virtualizing SQL Server 2008 in a XenServer 5 environment (a very successful test series I might add...look for the technical WP on this shortly at: http://citrix.com/English/ps2/products/documents_onecat.asp?contentid=683148&cid=White+Papers), we decided to keep the same test environment and repeat a portion of the SQL test series comparing Xeon E5405 vs. Xeon E5570-based XenServer hosts to see what kind of performance improvement we would get.

Each of the test servers were configured with a single SQL Server 2008 VM with 4 vCPU cores and 7GB RAM. We used DBHammer for SQL to create a 10 million record database and generated transaction processing workloads to simulate an actual SQL Server 2008 client workload. Workloads were created starting with 200 clients. Each client workload test ran for 30 minute periods. Starting after the first 10 minutes of each test, we began taking measurements using Microsoft performance monitor and continued doing so for the remaining 20 minutes of the test. MEasurements of the maximum transactions per second rate were taken every fifteen seconds until the 30 minute test period had elapsed. Increments of 200 clients were added until the maximum average CPU utilization level of 90 percent was reached. At 90 percent average CPU utilization, it was determined that the system was saturated and testing was ended.

Given the difference in the clock speeds of the two systems tested, 2.0 GHz and 2.93 GHz respectively, we fully expected to see some level of improved performance, but what we saw was pretty astounding, even to us. The Xeon E5405 XenServer host topped out at 1,600 clients, generating 13,708 maximum transactions per second. The Xeon E5570 XenServer host, by comparison, was able to sustain a load of 2,400 clients, generating 20,978 maximum transactions per second. That's an improvement of 53%!
The results are pretty clear. Not only is the new Intel Nehalem Xeon 5500 series a powerful addition to the Intel Server Solutions lineup, but it is a clear advantage to customers seeking to virtualize enterprise application platforms like SQL Server 2008 using XenServer.

Details of this comparison test will be posted in a whitepaper to: http://citrix.com/English/ps2/products/documents_onecat.asp?contentid=683148&cid=White+Papers later this week. 

Expand Blog Post
Permalink | Twitter Post to Twitter | Comments (5) | Views (6025) |

posted by Bernard Hannon

The question on many people's minds has been answered. Yes, you can virtualize Exchange Server 2007 on XenServer. To go one step further, the results of our recent performance and scalability tests for Exchange Server 2007 with Citrix XenServer demonstrate that not only can you do it, but there are some very compelling reasons why you probably should. Here's why...

Exchange adminstrators have always had to work within a fairly narrow range of limitations from Microsoft when it comes to sizing single or multi-role Exchange servers. While Microsoft's intentions for these sizing limits is likely to obtain maximize performance while minimizing the points of failure that might affect users, the practical reality of those sizing guidelines is a limited ability to take advantage of the ever-increasing capacity and power of today's server hardware. That means that when the enterprise needs to add users, it usually means adding more servers; and we all know how challenging that can be these days. By virtualizing Exchange Server 2007 with Citrix XenServer, administrators now have the ability to operate their Exchange Server farm within Microsoft's sizing guidelines while using XenServer VMs as building blocks to achieve the scalability that isn't possible in a physical Exchange Server environment. 

In our technical whitepaper entitiled "Virtualizating Microsoft Exchange Server 2007 with Citrix XenServer", we demonstrated that Exchange Server virtualizes very well on XenServer. Not only did virtual Exchange Servers running on XenServer exceed Microsoft performance recommendations in every performance category, but in many cases virtual Exchange servers exceeded the perfomance of their native server counterparts! Here's an example of what I mean. This was taken from the latest tests we just completed using Exchange Server 2007 VMs with Windows Server 2008 on XenServer 5.0:

Click on the above image to see the full size chart
 
In terms of SendMail latency, Microsoft's recommendations are for less than 500Ms average latency and less than 1,000Ms in the 95th percentile. In the above results chart, we see that the SendMail latency performance measurements of the four virtual Exchange servers we tested was less than that of the native Exchange servers they were compared to. Results were consistent for both the 2,000 and 4,000 heavy user mailbox tests. Scalability tests measuring SendMail latency for up to 8,000 heavy user mailboxes was just as impressive, especially considering the 8,000 heavy user mailbox workload on a single XenServer host.

Click on the above image to see the full size chart

Results were equally as impressive in each of the other performance measurements categories we tested for, including Disk IOPS latency, CPU utilization and RPC latency.

So, now we know that the overhead for virtualizing Exchange Server 2007 on XenServer is very low and that when doing so Exchange Server 2007 performance is remarkably solid. One challenge solved. But what about reliability and availability? After all, Microsoft Exchange Server is nearly always viewed as one of the more mission-critical applications in the data center. XenServer addresses availability and reliability using our live VM migration feature, XenMotion (free with XenServer Enterprise Edition), together with the High Availability features that come with Citrix Essentials for XenServer. Our tests showed that active Exchange Server VMs were easily migrated between XenServer hosts with no loss in performance whatsoever. Tests also showed that after "protecting" VMs using XenServer's HA feature, we successfully re-started failed Exchange Server VMs on another XenServer host in less than three minutes. As soon as each re-started VM was recognized by Exchange, it immediately resumed taking on a workload. Other HA options include protecting storage and network connections using everRun VM from our alliance partner, Marathon Technologies. Another challenge solved.

This means we now have demonstrated perfomance when virtualizing Exchange Server 2007 with Citrix XenServer, and that performance comes with, and not at the expense of reliability, high availability and scalability. No trade-offs. No sacrificing one to get another.

It makes more sense than ever before for IT managers to take a serious look at the advantages of virtualizing Microsoft Exchange Server with Citrix XenServer. Check out the technical whitepaper and see for yourself. It contains extensive test configuration scenarios and results data along with recommendations and best practices so that anyone can easily configure and run their own pre-production pilot (highly recommended). And now that the Enterprise Edition of XenServer is available free of charge at www.citrix.com, the cost to see the benefits of virtualizing your Exchange Server farm with XenServer yourself has never been lower. Don't just take our word for it. It's time to see for yourself.

Expand Blog Post