So, yesterday, I was bouncing around the internet and came across this post on the MSDN Blog: The default interactive desktop heap size has been increased on 32-bit Vista SP1
There are a few other posts concerning this stuff. Part 2 takes a look at all Windows Versions which support this feature.
And the overview page details how to tune the parameter.
Here is the relevant Registry item that controls this behavior:
The default data for this registry value will look something like the following (all on one line):
The number you want to change is the "3072" in the SharedSection portion. Change it to "12288" to increase the available memory for the Interactive Desktop Heap to 12MB. I did this in Windows XP SP2 and the Shell is MUCH more responsive. There used to be little lags when I would close a program and then immediately open another one or click on the Start button. It is just as snappy as all get out now.
I would recommend this change to anyone running XP SP2 and Windows Server 2003 32Bit.
You need to reboot after making the change.
Please post your results.
Peace!
This is going to be a short blog post, but considering the amount of feedback we’ve received on the our two previous desktop heap posts, I think this is worth blogging about. 32-bit Vista SP1 and 32-bit Windows Server 2008 both have a new value for the default size of interactive desktop heaps. Previously, this heap size was 3 MB by default, but on Vista SP1 and Server 2008 the default interactive heap size is 12 MB. We’ve heard your comments about the problems associated with the heap size, and this new default size should go a long way towards avoiding interactive desktop heap depletion.
On 32-bit systems, running Vista SP1 or Windows Server 2008, you’ll now see that the relevant portion of the registry value looks like this (by default)...
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\Windows
SharedSection=1024,12288,512
64-bit Windows still has a default interactive desktop heap size of 20MB. Keep in mind that in Vista, session view space (the memory range that desktop heaps are allocated from) is now a dynamic address range. This means that in Vista and Server 2008 the individual desktop heap sizes can be increased to larger sizes with less concern over exhausting session view space.
- Matthew
There are a few other posts concerning this stuff. Part 2 takes a look at all Windows Versions which support this feature.
And the overview page details how to tune the parameter.
Here is the relevant Registry item that controls this behavior:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems\Windows
The default data for this registry value will look something like the following (all on one line):
%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=OnSubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16
The number you want to change is the "3072" in the SharedSection portion. Change it to "12288" to increase the available memory for the Interactive Desktop Heap to 12MB. I did this in Windows XP SP2 and the Shell is MUCH more responsive. There used to be little lags when I would close a program and then immediately open another one or click on the Start button. It is just as snappy as all get out now.
I would recommend this change to anyone running XP SP2 and Windows Server 2003 32Bit.
You need to reboot after making the change.
Please post your results.
Peace!
Comment