© J.C. Kessels 2009
MyDefrag Forum
May 25, 2013, 04:48:30 pm
Welcome,
Guest
. Please
login
or
register
.
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
News
:
Home
Help
Search
Login
Register
MyDefrag Forum
>
MyDefrag v4 Forum
>
Questions and help
>
Tutorial: How to disable Superfetch but keep Prefetch enabled
Pages: [
1
]
2
3
« previous
next »
Print
Author
Topic: Tutorial: How to disable Superfetch but keep Prefetch enabled (Read 12287 times)
BloodySword
JkDefrag Hero
Posts: 1113
Tutorial: How to disable Superfetch but keep Prefetch enabled
«
on:
May 21, 2010, 07:31:54 pm »
Here is a step by step tutorial wich explains how to disable the windows defragmenter and superfetch, while keeping the layout.ini as well as .pf files updated.
I have to clarify something: Disabling Superfetch has absolutely NO effect for MyDefrag. It won't make MyDefrag faster, nor it will change something for the layout.ini and prefetch files (program hints). Please be sure, that you know what you are doing. Disabling Superfetch is a plain opineon-thing. Here is a link to a post with a clarifiation why I find it neccessary to disable Superfetch:
Disadvantages of Superfetch in Windows Vista
Disabling the Windows defragmenter
Just make sure that following registry key is set as follows:
====================================================
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction]
"Enable"="N"
====================================================
You can paste it into a .reg file, then import it with regedit.
Enable Prefetching, disable Superfetching
====================================================
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OptimalLayout]
"EnableAutoLayout"=-
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters]
"EnablePrefetcher"=3
"EnableSuperfetch"=0
====================================================
EnableAutoLayout indicates regedit to REMOVE it. This will ENABLE the AutoLayouting.
EnablePrefetcher = 3 will enable Prefetching both for Booting and Applications
EnableSuperfetch = 0 will completely disable Superfetching. It will let your HDD live much longer.
But feel free to use Superfetching, too by setting the value to 3.
Ckecking if the Superfetching service is started automalicy while booting
Go to control panel, then management, then doubleclick on "Services". Select any service and type "sup" fast into the
keyboard. This will imedately select Superfetch service. Right click into it, select Properties. Make sure that the service
is started automalicy, NOT delayed. If this is the case, you now can do the following step by step tutorial.
Tutorial: Setting up the Computer for first Optimizing after configuring Prefetching
Warning - Don't use this tutorial every time you want to make a monthly defrag!
It is intended to do it only once, after configuring Prefetch! Do not use it every month. Just run MyDefrag!
Step 1: Clearing the prefetch folder
- Navigate your explorer or commander to C:\Windows\Prefetch and select all files and directories that are lying in it.
- Compress all files into a 7-zip, zip or rar archive. If something goes wrong, you will have your old layout-files backed up.
- Delete all selected files and dirs and clear the recycle bin if neccessary.
Step 2: Recreating the boot trace.
- Reboot your system 4 times, but please log in and wait a few minutes till the system is idle before rebooting again.
You will notice that in the Prefetch folder a directory named "ReadyBoot" is recreated, with trace files in it.
Step 3: Cleaning up the system partition.
- Clear out the TEMP directory in your user profile.
- Delete all system restore points. This is neccessary for a clean monthly optimize
-
Temporarly disable the windows system protection / restore
This is important, windows will keep track most changes we make and it will fragment your system more.
Also it can occur, that when MyDefrag moves files, these files are copied into the restore points.
You can use a cleaner program to do it more confortable.
Step 4: Cleaning up the USN-Journal.
- Open a command line interface with administrator rights and type
fsutil usn deletejournal /D c:
This will remove some unmovable file fragments wich will cause much wrap arount fragmentation if not removed.
Doing this is not neccessary on Windows 7. The defragmentation api is able to move and defragment the USN-Journal!
Step 5: Run all your applications that are used VERY often.
- You should now run all applications and programs like Firefox, Notepad++, Games, Tools etc. that you use very often.
This will create the corresponding .pf files in the Prefetch directory. Using this information, windows will create the
layout.ini file in the next step.
Step 6: Recreating the Layout.ini.
- Open a command line interface with administrator rights and type
rundll32 advapi32.dll,ProcessIdleTasks
This will cause windows to create layout.ini. The boot trace information as well as the prefetch file information will
be collected, sorted and the file is written. A new command prompt will appear when the process is finished.
Step 7: Close all background processes that you don't actually need.
- You should now close all background applications such like speedfan (especially if logging is enabled),
Task Bar Shuffle, Eraser, Windows Sidebar etc.
Step 8: Run MyDefrag.
- Now it is time to run MyDefrag to optimize c:. Please be patient and let it run till the end.
I suggest to use the SystemDiskMonthly.MyD in this case.
Step 9: Restore closed programs and disabled services.
- Now you can run your programs that you have closed while defragmenting.
- You should also activate the system restore and create a new point, if you wish.
Finished :o)
Easing
Here you can find the complete registry import file.
prefetch_config.reg
====================================================
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction]
"Enable"="N"
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Prefetcher]
"BootFilesOptimized"=-
"LastDiskLayoutTime"=-
"LastDiskLayoutTimeString"=-
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OptimalLayout]
"EnableAutoLayout"=-
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters]
"EnablePrefetcher"=3
"EnableSuperfetch"=0
====================================================
I attached this tutorial as a PDF file.
Disable Superfetch.pdf
(71.48 KB - downloaded 499 times.)
«
Last Edit: May 26, 2010, 08:50:04 pm by BloodySword
»
Logged
Greetings from Germany!
quanthero
JkDefrag Hero
Posts: 234
Re: Tutorial: How to configure windows to get MyDefrag the best optimize
«
Reply #1 on:
May 21, 2010, 07:37:57 pm »
Great tutorial! In step 4, could you please mention that deleting USN Journal is not necessary on Windows 7?
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: Tutorial: How to configure windows to get MyDefrag the best optimize
«
Reply #2 on:
May 21, 2010, 07:40:16 pm »
Yes, I can. I added some scripts do do it automated, for advanced users.
Done.
I'm thinking of making a one for XP, then publishing it as PDF.
What do you think of it? Or should I ommit XP, since the support
will end next month.
«
Last Edit: May 21, 2010, 07:49:27 pm by BloodySword
»
Logged
Greetings from Germany!
Ratte
JkDefrag Senior
Posts: 48
Re: Tutorial: How to configure windows to get MyDefrag the best optimize
«
Reply #3 on:
May 21, 2010, 08:32:43 pm »
Quote from: BloodySword on May 21, 2010, 07:40:16 pm
Or should I ommit XP, since the support
will end next month.
Das gilt doch nur für XP
SP2
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #4 on:
May 21, 2010, 08:39:59 pm »
Okay, I will make a XP tutorial, too. But, does anybody know how XP does boottracing?
Logged
Greetings from Germany!
jeroen
Administrator
JkDefrag Hero
Posts: 7155
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #5 on:
May 21, 2010, 09:29:08 pm »
Quote from: BloodySword on May 21, 2010, 07:31:54 pm
Here is a step by step tutorial wich explains how to disable the windows defragmenter and superfetch, while keeping the layout.ini as well as .pf files updated.
Thanks for the tutorial, I appreciate it. But it is not necessary to disable SuperFetch to get the "best optimize" results, and personally I think disabling SuperFetch is a bad idea. It is a very good service that makes computers considerably faster. Also, all these steps are useful only for system disks, not for data disks. Also, I am a bit worried that people may get the impression that it is necessary to do all these things every time they want to run MyDefrag, when in fact it is optional. MyDefrag will give very good results without all this cleaning and rebooting and stuff.
p.s. Tip: use the MyDefrag
RunProgram
to run several, if not all, of these commands from within a MyDefrag script. No need for a .cmd file.
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #6 on:
May 21, 2010, 09:42:50 pm »
The tutorial is intended for optimizing a system only, so not the data disks, also the Superfetch sevice keeps enabled using this tutorial. In the tutorial I clarify that it is not neccessary to disable it to get better results. I can do it more visible, if you like.
I have to criticize Superfetch:
After testing a while, I found Superfetch very aggressive and it is interferrencing my daily work.
But in my opineon, Superfetch will stress the disk very aggressively. Everytime when RAM is freed after some was allocated by a process, it starts to cache the files into the RAM. EVERYTIME! A delay or a slowdown would be useful to do this. Additionally after booting, Superfetch fills the Cacke in the RAM. While doing that, all applications that the user want to start immedately after logging on, are VERY SLOW, due to the huge disk movements of superfetch, becaus the application seems not to be in the cache already. The temperature of the HDD will increase. It will wear out the HDD.
Superfetch is not neccessary thanks to MyDefrag
Superfetch is somewhat inefficient with the RAM storaging and keep this cache up to date and present. The today's hardware is not able to do it optimized. So in this case my tests showed, that the system is actually faster when optimizing with MyDefrag using the Layout.ini. Applications will be run much faster after optimizing with MyDefrag, even a month later using daily and weekly scripts, than with Superfetch AND Mydefrag. And the speed improvement with disabling Superfetch is increatable! Feel free to test it for yourself. Disable Superfetch (in the registry only, not the service!) and reboot to clear the cache, then do a ProcessIdleTasks and optimize with MyDefrag monthly. You will see, booting is much faster and applications are executed much faster than with Superfetch enabled.
«
Last Edit: May 21, 2010, 09:47:46 pm by BloodySword
»
Logged
Greetings from Germany!
quanthero
JkDefrag Hero
Posts: 234
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #7 on:
May 21, 2010, 09:44:10 pm »
Quote from: BloodySword on May 21, 2010, 08:39:59 pm
Okay, I will make a XP tutorial, too. But, does anybody know how XP does boottracing?
Prefetch in XP is very similar to Prefetch in Vista/7, so most of your tips still apply. But XP does not do Superfetch (so no EnableSuperfetch key) and does not have extra stuff such as ReadyBoot.
Edit:
Bloody, you should try Superfetch in Windows 7. It is much less aggressive at startup compared to Vista. It is also much more selective and caches only important stuff, not everything as in Vista.
«
Last Edit: May 21, 2010, 09:47:19 pm by quanthero
»
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #8 on:
May 21, 2010, 09:52:03 pm »
Quote from: quanthero on May 21, 2010, 09:44:10 pm
Quote from: BloodySword on May 21, 2010, 08:39:59 pm
Okay, I will make a XP tutorial, too. But, does anybody know how XP does boottracing?
Prefetch in XP is very similar to Prefetch in Vista/7, so most of your tips still apply. But XP does not do Superfetch (so no EnableSuperfetch key) and does not have extra stuff such as ReadyBoot.
Yes, I know there is no Superfetch. But ReadyBoot... There is a tool named BootVis wich will do it. But I read that it is not neccessary because XP will do it itself. The Layout.ini of XP SP2 and SP3 has some boot files at the beginning. I don't know if they are traced or if it is a hardcoded layout template. But I feel that this layout is good enough. Booting is much faster, without BootVis.
Quote from: quanthero on May 21, 2010, 09:44:10 pm
Edit:
Bloody, you should try Superfetch in Windows 7. It is much less aggressive at startup compared to Vista. It is also much more selective and caches only important stuff, not everything as in Vista.
I will try it as soon I have Windows 7. I will get it in November, due to a student account for MSDN. I'll get it for free
.
«
Last Edit: May 22, 2010, 12:28:37 am by BloodySword
»
Logged
Greetings from Germany!
jeroen
Administrator
JkDefrag Hero
Posts: 7155
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #9 on:
May 21, 2010, 10:56:57 pm »
Quote from: BloodySword on May 21, 2010, 09:42:50 pm
After testing a while, I found Superfetch very aggressive and it is interferrencing my daily work.
I do not want to get into a debate about SuperFetch. I disagree with you, let's leave it at that. What remains is that stopping SuperFetch has no effect on the MyDefrag optimization results, so it should not be mentioned in your tutorial. There are tons of other stuff that people could turn off to (presumably) make their computer faster, those are also not mentioned in your tutorial, because that's not what the tutorial is about.
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: Tutorial: How to disable Superfetch but keep Prefetch enabled
«
Reply #10 on:
May 21, 2010, 11:14:29 pm »
I changed the Topic title, I hope it is now more clear that disabling Superfetch won't make better results for defragmenting.
I now added a clarification in red text, in the PDF it is a red box. I also added a PDF version as attachment.
«
Last Edit: May 21, 2010, 11:47:42 pm by BloodySword
»
Logged
Greetings from Germany!
mathilda
Newbie
Posts: 2
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #11 on:
September 04, 2010, 09:59:26 am »
Quote from: quanthero on May 21, 2010, 09:44:10 pm
Quote from: BloodySword on May 21, 2010, 08:39:59 pm
Okay, I will make a XP tutorial, too. But, does anybody know how XP does boottracing?
Prefetch in XP is very similar to Prefetch in Vista/7, so most of your tips still apply. But XP does not do Superfetch (so no EnableSuperfetch key) and does not have extra stuff such as ReadyBoot.
Edit:
Bloody, you should try Superfetch in Windows 7. It is much less aggressive at startup compared to Vista. It is also much more selective and caches only important stuff, not everything as in Vista.
This looks realy nice, - can these advises be used with XP Home edition or Pro - both with SP3 ?
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: Tutorial: How to disable Superfetch but keep Prefetch enabled
«
Reply #12 on:
September 05, 2010, 12:46:59 am »
Thanks!
Windows XP does not have Superfetch, it was introduced in Windows Vista and was improved in Windows 7.
But you can do the other steps, exept for creating the SuperFetch key. (Remove
"EnableSuperfetch"=0
from the REGEDIT file)
Logged
Greetings from Germany!
TheAnonymous
JkDefrag Senior
Posts: 29
Re: Tutorial: How to configure windows to get MyDefrag best optimize (Vista and 7)
«
Reply #13 on:
September 05, 2010, 04:00:28 pm »
Quote from: BloodySword on May 21, 2010, 09:42:50 pm
But in my opineon, Superfetch will stress the disk very aggressively. Everytime when RAM is freed after some was allocated by a process, it starts to cache the files into the RAM. EVERYTIME!
Superfetch runs at the lowest I/O priority because of this reason and Windows is designed to halt or suspend the service and it's functions if resources are needed for some other task.
Quote from: BloodySword on May 21, 2010, 09:42:50 pm
Additionally after booting, Superfetch fills the Cacke in the RAM.
It fills the page cache which is transparent to userspace and is purged automatically as needed when userspace memory is needed.
Quote from: BloodySword on May 21, 2010, 09:42:50 pm
While doing that, all applications that the user want to start immedately after logging on, are VERY SLOW, due to the huge disk movements of superfetch, becaus the application seems not to be in the cache already.
Superfetch shouldn't cause huge disk movements because the data it loads is also cached iunder Windows\Prefetch under the *.DB files. This usually maintains a close spot with each other on the disk, and if it doesn't, MyDefrag will ensure that it does.
Applications you launch boot-up, or ever, will be in the cache the second they launch and will reside into the page cache until it is purged. This is true with all OS's that use the NT kernal and with Linux OS's. Superfetch is a technology that could only do so much and it does attempt to cache certain applications and files during the boot process. However, the applications being very slow is probably not due to Superfetch. The minute amount of disk writes it uses at this time is minimal. The amount of disk reads it does is something that is suspended if resources are truly needed for something else. You should also take into consideration that disabling Superfetch also disabled ReadyBoot (NOT boost) which does most of the disk trashing. It writes a <100MB trace file at boot in order to figure out the most optimal way to perform the next reboot/cold boot.
You should note that Windows 7 waits up to 6 minutes before initializing Superfetch after boot to stop the amount of trashing at startup, whereas Vista didn't.
Quote from: BloodySword on May 21, 2010, 09:42:50 pm
The temperature of the HDD will increase. It will wear out the HDD.
The amount of disk writes and disk reads in this process is something that all functional hard drives should handle without impairing it's lifespan. A great amount of the disk writes is done by ReadyBoot and as for disk reads it should/will be suspended if resources are needed. Now, on the other side, since Superfetch attempts to place files into the page cache before first accessing them with the disk, the lifespan impairment can even out because the next file accessed can already be in memory and thereby save having to do any disk activity.
Quote from: BloodySword link=topic=3740.msg22451#msg22451 date=1274474570T
Superfetch is somewhat inefficient with the RAM storaging and keep this cache up to date and present.
I would say the opposite. The most commonly accessed files will be precached and files you open that are not already cached will already be cached. The page cache will be cleared as userspace memory is needed and the service and it's functions run at the lowest priority possible. Reading from memory is faster than reading from any disk.
Quote from: BloodySword link=topic=3740.msg22451#msg22451 date=1274474570T
So in this case my tests showed, that the system is actually faster when optimizing with MyDefrag using the Layout.ini. Applications will be run much faster after optimizing with MyDefrag, even a month later using daily and weekly scripts, than with Superfetch AND Mydefrag.
I would formally request if you can describe "much faster" in a less subjective manner.
Quote from: BloodySword link=topic=3740.msg22451#msg22451 date=1274474570T
Disable Superfetch (in the registry only, not the service!) and reboot to clear the cache, then do a ProcessIdleTasks and optimize with MyDefrag monthly. You will see, booting is much faster and applications are executed much faster than with Superfetch enabled.[/font]
Booting might be faster when reaching the desktop, but I'm skeptical as for your claim on application launch times. Are you comparing first-launch? Because if you close application X and open it again at a later time chances are it is still in the page cache with Superfetch enabled or not.
Logged
BloodySword
JkDefrag Hero
Posts: 1113
Re: Tutorial: How to disable Superfetch but keep Prefetch enabled
«
Reply #14 on:
September 06, 2010, 08:27:23 am »
Quote
Superfetch shouldn't cause huge disk movements
Wrong. My Disk was cooked while Superfetch was enabled.
Quote
Superfetch runs at the lowest I/O priority because of this reason and Windows is designed to halt or suspend the service and it's functions if resources are needed for some other task.
Seems like it is not low enough... Programs take MINUTES to startup while Superfetch is filling its cache...
Quote
The most commonly accessed files will be precached and files you open that are not already cached will already be cached. The page cache will be cleared as userspace memory is needed and the service and it's functions run at the lowest priority possible. Reading from memory is faster than reading from any disk.
Wrong, too. If you work with images with dimensions of 9000x13000 pixels or more with more than 3 layers,
everytime
I cleared out the undo history and freed 800-1024MB RAM, Superfetch began to work and cook my HDD.
Quote
I would formally request if you can describe "much faster" in a less subjective manner.
If you'd tell me how I monitor the duration of program starts, then I would.
Quote
Booting might be faster when reaching the desktop, but I'm skeptical as for your claim on application launch times. Are you comparing first-launch? Because if you close application X and open it again at a later time chances are it is still in the page cache with Superfetch enabled or not.
Yes the first time. It is much faster
right after boot
than with Superfetch working.
Quote
You should note that Windows 7 waits up to 6 minutes before initializing Superfetch after boot to stop the amount of trashing at startup, whereas Vista didn't.
Seems that you have missed the fact, that we speak of Windows VISTA Superfetch. In 7, it may do it's job better. But in Vista, everyone should disable it.
-------------
In future, Superfetch will be obsolete because of solid state disks and eventually RAM wich won't loose the bit state when not refreshed (Memristor RAM for example).
«
Last Edit: September 06, 2010, 08:33:18 am by BloodySword
»
Logged
Greetings from Germany!
Pages: [
1
]
2
3
Print
« previous
next »
Jump to:
Please select a destination:
-----------------------------
MyDefrag v4 Forum
-----------------------------
=> Announcements
=> Questions and help
=> Bugs and problems
=> Requests for new features
=> Scripts, and other contributions
-----------------------------
JkDefrag v3 Forum
-----------------------------
=> Announcements
=> Questions and help
=> Bugs and problems
=> Requests for new features
=> Programming with the library
Loading...