Enabling SuperFetch

When you are using Windows Server 2008 as a workstation SuperFetch will give your operating system a little bit more responsiveness. If you are using an SSD as operating system disk, you can skip this page.

Use Registry Tweak in stead of the first 4 steps

1. To enable the SuperFetch service you will first have to make a little change in the registry. Open the Registry Editor by clicking Run in the Start menu. Next type regedit and click OK. In the Registry Editor browse to the location HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters.

SuperFetch1.jpg

2. Right click in the right part of the window and choose DWORD (32bit) Value in the menu New. Type as Name: EnablePrefetcher

SuperFetch2.jpg

3. Edit the value of value EnablePrefetcher by doubleclicking on it. Change the Value data field into ‘3‘ (without quotes)

SuperFetch3.jpg

4. Next create a second DWORD (32bit) Value, name it EnableSuperfetch and also give it as Value data3‘ (without quotes)

SuperFetch4.jpg

5. Close the Registry Editor, then click Run in the menu Start. Type services.msc and click OK. In the Services window, scroll down to the service with name SuperFetch.

SuperFetch5.jpg

6. Right click on the SuperFetch service and choose Properties in the context menu.

SuperFetch6.jpg

7. Next choose in the Startup type dropdown Automatic. Click Apply in the lower right of the Superfetch Properties window. The Start button will now be enabled. Press the Start button to enable SuperFetch for your current session.

SuperFetch7.jpg

8. Final screen. Because we have set the Startup type to Automatic, next time you start Windows Server 2008, the SuperFetch service will run to optimize your systems performance!

SuperFetch8.jpg

21 thoughts on “Enabling SuperFetch”

  • Xavier could you please send me email how did you make it work and how to disable it. I spend about 2 days so far and cant find anywhere.
    Thanks

  • I tried this on the x64 version of Windows Server 2008 and there is no Superfetch service…?

    I found an article on MSDN discussing this problem but no-one had any answers. Does anyone here know why the service is not the on the x64 version?

  • Gary, Windows 2008 R2 doesn’t have HKLMSYSTEMCurrentControlSetservicesSysMain which is why you don’t see the service. More importantly, on inspection of the missing key on a Win 7 machine, you don’t have %SystemRoot%system32sysmain.dll which is required to run the service. I chose to just leave the prefetch service out.

  • Hello – Please can you adbise for R2 – I have added registry entries as per your instructions, but superfetch is still missing from list of services?

  • I’m beginning to think that server is a teeny bit faster than XP on my ageing PC.
    Even with Avira it doesn’t feel as sluggish.
    Nice job Microsoft and REALLY nice job the good people on this site 🙂

  • Anonymous says:

    server is much more stable than vista

    i dual boot and get around 3 bsods with vista
    i only get a very rare error in server telling me that superfetch has crashed

  • @Justin Olbrantz (Quantam): Did you delete your Prefetch folder after changing Prefetch options? Otherwise it’d still prefetch applications when set to boot only, etc., afaik.

  • Many people disable superfetch or in the case of server 08, leave it off.
    This is for a number of reasons and everyone should do their own research and come to their own conclusion depending on their particular usage pattern (if they have one).
    I wont explain why because there are countless sites and forum threads you can find with a quick google.

    The idea of prefetching apps that you’re about to use is great. The problem is the OS predicting which apps they are!

  • What’s the difference between EnableSuperFetch being set to 3 rather than 1?

    Arris: See the following options:
    1 = Enable SuperFetch for boot files only;
    2 = Enable SuperFetch for programs only;
    3 = Enable SuperFetch for both boot files and programs.

  • As reghack:

    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetchParameters]
    “EnablePrefetcher”=dword:00000003
    “EnableSuperfetch”=dword:00000003
    [HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesSysMain]
    “Start”=dword:00000002

  • For server 2008 x64 I also used the 32bit value, dont know whats the effect if you use the qword…
    Arris: 32bit DWORD should be used in both architectures. In Vista SP1 x64 these are all 32bit values too.

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>