Category Archives: XenDesktop

Sizing Windows 2016, Windows 2012 and Windows 10 Virtual Machines

It has been almost one year since Windows Server 2016 was released at Microsoft Ignite. Are the virtual machine sizing recommendations for Windows Server 2012R2 applicable to Windows Server 2016? And since we are talking about sizing virtual machines for XenApp and XenDesktop, it might be a good time to revisit Windows 10.

Let’s first look at virtual CPU allocation recommendations: Continue reading Sizing Windows 2016, Windows 2012 and Windows 10 Virtual Machines


Microsoft Office 2016 Impact on XenDesktop Scalability

A day doesn’t go by when I don’t open up at least one Microsoft Office application.  Even on weekends, when I’m not working, I usually open at least one application.

It should be of little surprise that Microsoft Office is one of the most used set of applications in many RDS/VDI deployments.

But what impact does Microsoft Office have on overall single server scalability?

How does the impact change as we move users from Office 2010 to 2013 and onto 2016?


As you can see, single server density decreases.

  • Office 2010 gives us the best scalability.
  • Office 2013 reduces single server density by 20% when compared to Office 2010
  • Office 2016 reduces single server density by 25% when compared to Office 2010

If you’ve followed the blog series on Windows 10 scalability, then remember that those numbers were based on Office 2013.  If Office 2010 were used, those numbers would be higher, with Office 2016, the numbers end up being slightly lower.

Daniel (Follow on Twitter @djfeller)
XenApp Best Practices
XenApp Videos

XenDesktop 7.7 and Windows 10

The other day, I was able to share the latest single server density results when running Windows 7 on XenDesktop 7.7. We looked at a range of parameters like:

      • PVS vs MCS
      • PVS Disk Cache vs RAM Cache
      • Citrix Policies: Very High Definition vs High Server Scalability vs Optimized for WAN
      • Windows 7 optimizations

Once that testing was complete, we moved onto the next version… Windows 10. An again, looking at the exact same parameters.

First, we look at Microsoft Hyper-V 2012R2


Second, we look at Citrix XenServer 6.5 SP1


What do you notice?

Between XenServer & Hyper-V… Not much

Between MCS and PVS… Not much as the 5-6% gains in MCS would be offset by increased storage costs due to lack of RAM Caching capabilities

Between the different policies… Around a 7-8% improvement

Between OS optimizations… Around a 7% improvement

The last part I find very interesting.

If you recall, I recently posted a blog (Windows 10 Optimization: The Results) showing that the Optimized OS config, based on the numerous Windows 10 optimizations, showed a 20% improvement in density. As we look at this expanded series of tests, what I now see is something rather interesting. Simply utilizing the Citrix policy templates, we achieve 1/2 of that density gain.

And I can tell you from experience that implementing the Citrix policies are much easier than working through all of those Windows 10 optimizations

So my advice, definitely use the Citrix policy templates as your starting point. If you want to know more about them, I suggest the following:

Server Specs:

      • Processors: Dual Intel Xeon E5-2697 (12 cores each)
      • RAM: 384 GB
      • Workload: Knowledge Worker
      • VM Specs: 2vCPU, 4 GB RAM


Daniel (Follow @djfeller)

XenApp Best Practices

XenApp Videos







XenDesktop 7.7 and Windows 7

We recently completed a massive round of testing looking at many of the different deployment configurations we can do with a Windows 7 desktop in XenDesktop 7.7. We wanted to look at how different factors might impact single server scalability.

  • PVS vs MCS
  • PVS Disk Cache vs RAM Cache
  • Citrix Policies: Very High Definition vs High Server Scalability vs Optimized for WAN
  • Windows 7 optimizations

Each test was conducted utilizing the same, knowledge worker workload.




As you see, each test builds upon the previous test while only modifying a single parameter. As I’ve gone through the initial results, some things quickly popped out at me:

  1. Machine Creation Services, from a purely single server scalability perspective, shows some impressive numbers.
  2. Enabling the RAM Cache feature within Provisioning Services gave us a 9% gain in server density.
  3. Every hypervisor tested showed similar percent changes between the different tests.
  4. There was little difference between High Server Scalability and Optimized for WAN because the items within the policy were not a significant part of the tested workload.
  5. Switching from the Citrix Very High Definition User Experience Policy to the Citrix High Server Scalability Policy improved server density by a whopping 30%.

Why did we see such a gain when moving to the High Server Scalability policy? Because the Very High Definition User Experience policy utilizes the H.264 codec, which gives the user a great experience, but at the cost of CPU utilization. When we switch to the High Server Scalability policy, we utilize the latest ThinWire technology. We are able to reduce CPU utilization while increasing server density by changing the way the system encodes the data.

In addition, these policies also modify how items are compressed, how many frames per second are transmitted, plus many more.

To learn more about the Citrix policies, check out the following blogs:

  1. Why you should care about the new HDX ThinWire
  2. HDX Policy Templates

Stay tuned for Windows 10 on XenDesktop 7.7

Server Specs:

  • Processors: Dual Intel Xeon E5-2697 (12 cores each)
  • Workload: Knowledge Worker
  • VM Specs: 2vCPU, 4 GB RAM

Daniel ()
XenApp & XenDesktop Best Practices
XenApp & XenDesktop Videos

Windows 10 Optimization: Part 8 – The Results

Statistics are fun. It is amazing what interesting insights you can get from statistics. For example

  1. About 20% of workers would work harder if their employer offered a $1,000 shopping spree at the store of their choice – You hear that Citrix!
  2. About 20% of the people who watch the Super Bowl do so for football, the rest watch commercials
  3. About 20% of copy machine issues worldwide are caused by people sitting on them – That is awesome
  4. Over the past year, my blogs are 20% funnier

And my absolute favorite statistic is from Homer Simpson (who else):

  1. People can come up with statistics to prove anything Kent, forty percent of all people know that.

As you’ve seen, we’ve been creating a Windows 10 optimization guide. The Windows 10 optimization guide was focused on identifying, for VDI, as many of the extra components that would negatively impact server density, while focusing on balancing the user experience, as stated in the XenApp Best Practice: For the best combination of user experience and resource consumption, optimize appropriately.

Over the course of several blogs, we looked at optimizing the following items:

  1. Default apps
  2. Services
  3. Scheduled tasks
  4. User Interface
  5. Runtime
  6. Release
  7. ICA

Now the big question is

“What impact did these modifications have?”

First, it gave me something to blog about (This is a big deal. After 5+ years of blogging, I’m running out of ideas).

But most of you probably care about the second part… What was the impact on server density? And for this, my minions, I mean the Citrix Solutions Lab, took over. (We joke that the Citrix Solutions Lab should rename themselves to Feller’s Lab because it seems like they do a lot of testing for me – pity them).

For the series of tests, we had two different policies, one would simply turn on the Citrix “High Server Scalability” policy setting. This corresponded to Part 7 of the Windows 10 optimization blog.

The second policy we applied were all of the Windows 10 optimizations we discussed in Parts 1, 2, 3, 4, 5 and 6 of the Windows 10 optimization blog series.

Turning the Citrix Scalability policy on, gave us a 10% bump in user density.

Turning on the custom OS optimization policy gave us almost another 10% bump in density.

Turning both of these options on equaled roughly 20% more users on our physical host.

Definitely, not a bad start

Daniel ()
XenApp Best Practices
XenApp Videos

Windows 10 Optimization – Part 7: ICA

MowerWere you planning to buy that? Nope.

Of course, as you saw in my previous blog, my stupid lawn mower wheel snapped off with only 30 minutes left in the season! D’oh!

Figured I would just head to the local hardware store and buy a new one. Guess what? Hardware stores in Minnesota don’t sell lawn mowers in late October. I guess no one wants to mow snow, although it might look cool. I went home, got online and eventually ordered a new mower, which happened to be battery-powered. I still can’t believe I did it, but here is why:

Pros Cons
(Wonder when kids can start mowing)
Can’t mow all day on single charge
(I wouldn’t do this with gas anyways)
No more gas & oil messes Doesn’t look very manly
No more winterizing mower Doesn’t look very manly
(No more ear protection)
Doesn’t look very manly

So in the end,

  1.     I wasn’t planning to buy a lawn mower
  2.     I definitely wasn’t planning to buy a battery-powered lawn mower
  3.     I wasn’t planning to write another portion for the Windows 10 optimization series

This portion of the optimization series was not in my original plan because it was not a specific change to the underlying operating system, but should that matter? Originally, I thought yes it does matter, which is why I wasn’t going to include it in the series. But remember, the entire time we talked about different optimizations, we always came back to the

XenApp best practice of:

For the best combination of user experience and resource consumption, optimize appropriately

We followed this for

  1.     Default apps
  2.     Services
  3.     Scheduled tasks
  4.     User Interface
  5.     Runtime
  6.     Release

So, why not look at ICA?

First, take a look at Mayunk Jain’s blog on Why you should care about HDX.

Ok, I’m sold. So let’s do it.

Optimization Description
High Server Scalability This template balances user experience and server scalability. It offers a good user experience while increasing the number of users you can host on a single server. This template does not use video codec for compression of graphics and prevents server side multimedia rendering.

That’s all I have to do? That’s too easy for me. If you look into this policy template, you see the following being done to ICA (Full list of changes are contained in the HDX Policy Template paper)

Policy Setting
Use video codec for compression Do not use
Target frame rate 16
Target minimum frame rate 8
Visual quality Medium
Desktop Wallpaper Prohibited
Menu animations Prohibited
Optimization for Windows Media multimedia redirection over WAN Prohibited
Windows media fallback prevention Play all content only on client
Flash video fallback prevention Only small content
Multimedia conferencing Prohibited
Audio quality Medium-Optimized for speech
Auto-create client printers Auto-create the client’s default printer only
Universal print driver usage Use universal printing only
Universal printing optimization defaults Image compression = Standard quality

Based on this, we optimize server density by slightly reducing the quality of the experience. Seems like a fair trade-off (although not having my favorite background picture on my desktop would upset me).

Note: Some of these Citrix policy settings can be drastic if your users are on the WAN.  For example, the “Optimization for Windows Media multimedia redirection over WAN” will degrade the user experience for WAN users.  If users will access resources via the WAN, use the “Optimized for WAN” Citrix Policy as the starting point.

BTW, I’m open for suggestions on how to make my mower more manly looking. I’m thinking a beer holder or racing stripes might help.

Note: The complete Windows 10 optimization blog series


Windows 10 Optimization – Part 6 – Release

IMG_0754I look forward to winter arriving because it means I’m done mowing the yard for 5-7 months. So you can imagine how excited I was when I was mowing my yard for the final time of the season. I could see the end in sight. I was beginning to think about what I would do with my extra 2 hours of time every weekend.

Almost there. Almost there.

Ummm, why is my mower not moving?

Why is it dragging on the ground?

HEY! Where did my wheel go?

Are you freaking kidding me?

With 30 minutes left of mowing for the season, my wheel fell off. And I don’t simply mean it fell of.  It snapped. And it wasn’t a cheap piece of plastic.  A good sized piece of metal snapped (I guess I’m just too strong).

No matter how far you get, how much you do, it can all be for nothing. As we’ve seen, Windows 10 provides us with many different avenues for optimization. We’ve gone through

  1. Default apps
  2. Services
  3. Scheduled tasks
  4. User Interface
  5. Runtime

All while trying to follow our XenApp best practice of:

For the best combination of user experience and resource consumption, optimize appropriately

And at the end, once we’ve optimized and installed our apps, we have one last thing to do before we are complete and ready for user testing is to optimize the image itself. The image optimization recommendations are manual, but are worthwhile. They include:

Optimization Description
Antivirus definitions If antivirus is installed and running within the virtual desktop, updating the definition file will prevent all desktops from updating on first boot up.
Windows update It is typically advisable to have the latest Windows 10 updates and security fixes before rolling out the image into production. Just remember that if the Windows Update service was disabled, it must be re-enabled to run the update. And if you had to enable it in order to run Windows Update, don’t forget to re-disable it.
App updates Many applications have integrated auto update functionality. These applications should be updated, then the auto update functionality should be disabled.
Disk defragmenter The disk might have become fragmented during installation and configuration, which will lead to less performance. Defragmenting the disk before rolling out will give better performance and reduce storage utilization.

Note: The complete Windows 10 optimization blog series

Daniel ()
XenApp Best Practices
XenApp Videos