#7
Post
by DAH » Thu Apr 03, 2008 9:57 am
I believe these instruction may help you, I found them sometime ago on the net and have saved them.
If you have 1 gigabyte (1024MB) of RAM or higher, the default User Handle and GDI Handle limits can be pretty restrictive when running a large working set of applications that demand the most from your system and tax it heavily.
First and foremost, I must warn you that modifying these settings incorrectly can render your Windows installation near useless. Also, depending on your computer configuration and the amount of RAM in your system, you may wish to play around with the numbers until you find a setting that is perfect for your computer configuration and working set.
To back up everything, open the Windows Registry Editor:
Click on the Start button.
On the Start menu, click on "Run..."
In the Run dialog, type "regedit.exe" (without the quotes) and then press Enter or click OK.
Now, to backup a registry key:
In the Registry Editor on the left hand side, you will see the navigation pane. Using your mouse or keyboard, navigate to the following subkeys:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Windows
Right click on each of the subkeys above in the left hand pane and from the context menu that appears, choose the "Export" option. Save the exported registry data files where ever you wish, but make sure that they will be accessible should we need to restore them in the future.
Now that you have backed up the registry keys that we will be modifying, we can begin making modifications to the values in order to increase the handle limits in Windows.
With the Registry Editor opened, navigate to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\SubSystems.
You will notice a set of "REG_MULTI_SZ" and "REG_EXPAND_SZ" keys in the right hand pane. The one that we are interested in modifying is called "Windows".
To modify the key, double click on it. It should look something like this:
%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,3072,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16
The section of this string we are interested in modifying is SharedSection.
In the SharedSection part of the string you will notice 3 numbers. What we are interested in is the middle value, "3072". Modify this value so that it reads "8192" instead.
It should look something like this after modifying the value:
%SystemRoot%\system32\csrss.exe ObjectDirectory=\Windows SharedSection=1024,8192,512 Windows=On SubSystemType=Windows ServerDll=basesrv,1 ServerDll=winsrv:UserServerDllInitialization,3 ServerDll=winsrv:ConServerDllInitialization,2 ProfileControl=Off MaxRequestThreads=16
Now that this registry entry has been modified we can continue on with the other values that need to be modified in order to raise the GDI limits.
In the left hand pane of the Registry Editor, navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows. In the right hand side, you will see two REG_DWORD values, named GDIProcessHandleQuota and USERProcessHandleQuota. We will need to modify both of these.
The first key we will want to modify is GDIProcessHandleQuota. This keys value can be set between 256 and 16,384 (maximum), and the default value is 10,000. I'd recommend using 15,000 as a value for this key, however if you are doing a lot of multitasking, shoot for the stars and go with 16,384.
This key cannot be set past 16,384 as it is the maximum acceptable value.
Now, let's modify USERProcessHandleQuota. This keys value can be set between 200 and 18,000 (maximum), with a default value of 10,000. I'd recommend increasing this value to the same number used with GDIProcessHandleQuota, however as previously mentioned if you are working with a hefty application workload, shoot for the stars and go with the maximum value of 18,000.
This key cannot be set past 18,000 as it is the maximum acceptable value.
Do NOT attempt to increase these values past the maximum - Windows will become very unstable and may even stop working correctly. If Windows starts acting up after changing these values, lower them until the issues are resolved, or restore the backups of these keys' values that we created before making modifications.
Now that you've changed these values, restart your computer and tax the system using the Internet Explorer trick mentioned previously - open Internet Explorer and hold down Ctrl+N on your keyboard to open up new Internet Explorer windows. Continue this until menus, buttons, and user interface elements stop working correctly. Also, open any applications you run day-to-day while you are performing this, so that you can get more of an idea if you have everything configured correctly.
You may also want to monitor your memory usage and handles information in Task Manager to see whether or not the above registry values need any more modifications.
ThinkPad T60p T7600 4 GB RAM 320 GB 7200 RPM HD Vista Ultimate Service Pack 2 5.1 4.7 4.2 4.6 5.8