Hyper-V has a flexible feature where you can assign memory for startup and then allow the memory that the virtual machines needs to grow as the virtual machine requires it. This is very helpful for TMG firewalls running in virtual machines, as the TMG firewall can consume a lot of memory if you want it to.
But there are a lot of moving parts. In this article, Ricahrd Hicks explains how the TMG firewall will consume virtual memory in a Hyper-V envionment.
Check it out at: