Dynamic Memory Pro Tip–be reasonable with your startup ram

Hyper-V now allows you to configure a startup, minimum and maximum memory limit.  If you are like me – you probably leave the startup ram at the default of 512mb – but you should really consider changing it to better suit your environment.  Here is a quick screenshot from one of my Hyper-V servers:


Two things that I have discovered:

  1. Some of my virtual machines benefit from having a startup and minimum that is below 512mb.  My FTP server, for instance, is a core installation of Windows server which just acts as an FTP server (and nothing else).  It happily boots and runs with a startup and minimum amount of 256mb ram.
  2. Other virtual machines benefit from having higher startup ram amounts.  I have never seen my TMG server under 2GB of ram – and have set the startup ram for this virtual machine to 2GB.

Why would I increase the startup ram for the TMG server?  Well – we do not start adding & removing memory dynamically until fairly late in the boot process for Windows (basically we wait until the system is mostly up and running before we start doing anything fancy with memory).  TMG loads a *lot* of processes before we start reacting with dynamic memory.

The result is that while this virtual machine will always run well at the end of the day (no matter what the startup ram value is) the amount of memory assigned for startup ram can have a profound impact on boot times.  When my TMG server has a startup ram value of 512mb it consistently takes ~10 to 15 minutes from cold boot to fully functional.  If I bump the startup ram to 2GB it boots and is functional in under 2 minutes.

The net result for me is that my system is fully functional a lot quicker after any servicing, and I have not had to give up any resource to enable this.