Jump to content

Prefetch folder


hotdoge3

Recommended Posts

It bad dont do it slow PC Info > http://www.edbott.com/weblog/archives/000743.html = One more time: do not clean out your Prefetch folder!

http://www.populartechnology.net/2005/10/c...ation-load.html

http://blogs.msdn.com/ryanmy/archive/2005/05/25/421882.aspx = Misinformation and the The Prefetch Flag

http://www.edbott.com/weblog/archives/000024.html = Beware of Bogus XP Advice

http://djlizard.net/2006/06/02/157/ = Old myths never die

http://msdn.microsoft.com/msdnmag/issues/0...el/default.aspx = Prefetch

http://www.theinquirer.net/en/inquirer/new...ked-as-xp-tweak

Subject: Microsoft claims Longhorn will be, er, faster

The only reason why its faster is they added a superfetch feature to the prefetcher. If you look at the key:

 

HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerMemory ManagementPrefetcher

 

you will notice in windows xp

 

EnablePrefetcher = 3 and you will notice in windows longhorn

EnableSuperfetch = 1

 

Well, guess what? You can put the EnableSuperfetch = 1 in windows xp and get the same speed.

 

Wow, Microsoft just added a feature that was already there in xp.

==========================================

It's 2006, and somehow, people still apparently believe that Windows XP does not allow you to use all of your bandwidth

 

because of a service called QoS (Quality of Service). This is patently false.

 

People also think that cleaning the Prefetch folder helps, or that not cleaning it will somehow lower your performance. I

 

would have thought a site like "windowsnetworking.com" would have been a bit more professional about these things, but I

 

can't have everything. They said, and I quote (emphasis theirs):This is bull. Let's break it down:

* XP will retain an index of the locations of files needed by a process in the prefetch folder even if you only use it one

 

time, which is not a big deal. Windows XP automatically prunes old entries after a 129th entry (or more) needs to be created.

 

At worst, you're going to lose less than 20 MB of hard disk space (my prefetch is currently using 4MB).

* XP systems will very low hardware resources (such as memory and hard disk space) are already at a disadvantage, but without

 

prefetching, it would be even worse. There is no advantage in deleting prefetch entries.... and the only time prefetch

 

entries need to change are when the files they are prefetching have changed (such as being upgraded by a Windows Service Pack

 

or hotfix). And as previously stated, they will automatically be pruned to just 128 entries. At least someone out there knows

 

what they're talking about. If you delete all of the prefetch files, they have to be prefetched *again* (which comes at a

 

performance loss), and doesn't that seem like a waste of time?

* Windows doesn't load things in the Prefetch folder unless you're actually attempting to run the program, so claiming that

 

Windows erroneously loads files in there that no longer exist (and thus need to be cleaned) is also patently false.

* Ed Bott said: It doesn?t actually preload anything into RAM until you run the program, and when you do that, prefetching

 

only works if you have RAM to spare.

 

Notes from Microsoft:

* Once every three days, by default, Windows XP will perform a partial defragmentation and adjust the layout of the disk

 

based upon current use. The files to be moved are written in the file Layout.ini (found in the Prefetch directory under the

 

System Root directory). [1]

(Dial-a-fix's "Process Idle Tasks" tool forces this to happen sooner than 3 days).

* Windows XP also uses prefetching when launching applications. The files and the contents of the files accessed by each new

 

process are observed and recorded. No prefetching can be done for the first launch of an application, so first launches are

 

often considerably slower than subsequent launches. About 85% to 90% of the improvement is realized after just one launch of

an application, with the remaining speed improvement coming after the system has had an opportunity to adjust the disk layout

Anyway, these technical myths are extremely annoying to technicians (such as myself), who constantly have to disprove these

 

dubious claims to customers.

==================

I timed from power up, starting with the first beep (POST code) to the point where the hourglass cursor disappeared.

 

With a full Prefetch directory:

? 0:50 to login screen

? 1:08 to desktop

 

After emptying Prefetch directory:

? 0:58 to login screen

? 1:57 to desktop

 

In other words, it took me nearly a minute longer to boot after using this ?speedup? tip!

========================================================

CCleaner Cripples Application Load Times

 

Author: Andrew

 

Recently CCleaner has added an internet urban legend as a cleaning option, "Old Prefetch data". Cleaning the Prefetch folder

 

is an internet Myth that simply will not die due to the gross ignorance of many people in regards to how Windows XP

 

Prefetching works. These same people generally recommend other bogus advice such as disabling Windows Prefetching completely

 

and adding /Prefetch:1 to desktop shortcuts.

 

"Bottom line: You will NOT improve Windows performance by cleaning out the Prefetch folder. You will, in fact, degrade

 

Windows performance by cleaning out the Prefetch folder." - Source

 

CCleaner for the most part is a good application, it quickly and easily removes temporary and unused files from Windows. It

 

has a nice interface that clearly shows what has been "cleaned". On neglected systems this can free hundreds of Megabytes of

 

harddisk space. Apparently in the authors quest to clean everything and anything, he blindly ignored how Prefetching works.

 

Prefetching

"When a Windows XP-based system is booted, data is saved about all logical disk read operations. On later boots, this

 

information is used to pre-fetch these files in parallel with other boot operations. During boot and application launch, a

 

Windows system demands and pages a sizable amount of data in small chunks (4K to 64K), seeking between files, directories,

 

and metadata. The Logical Prefetcher, which is new for Windows XP, brings much of this data into the system cache with

 

efficient asynchronous disk I/Os that minimize seeks. During boot, the logical prefetcher finishes most of the disk I/Os that

 

need to be done for starting the system in parallel to device initialization delays, providing faster boot and logon

 

performance.

 

Logical prefetching is accomplished by tracing frequently accessed pages in supported scenarios and efficiently bringing them

 

into memory when the scenario is launched again. When a supported scenario is started, the transition page faults from mapped

 

files are traced, recording which page of a file is accessed. When the scenario has completed (either the machine has booted

 

or the application started), the trace is picked up by a user-mode maintenance service, the Task Scheduler. The information

 

in the trace is used to update or create a prefetch-instructions file that specifies which pages from which files should be

 

prefetched at the next launch.

 

The user-mode service determines which pages to prefetch by looking at how successful prefetching has been for that scenario

 

in the past, and which pages were accessed in the last several launches of the scenario. When the scenario is run again, the

 

kernel opens the prefetch instructions file and asynchronously queues paging I/O for all of the frequently accessed pages.

 

The actual disk I/Os are sorted by the disk drivers to go up the disk once to load all pages that are not already in memory.

 

This minimizes seeks, cuts down on disk time, and increases performance. The kernel also prefetches the file system metadata

 

for the scenario, for example, MFT entries and directory files. Because prefetching is useful only when the required data is

 

not in memory, the applications that are launched frequently are not traced and prefetched each time." - Source

 

Prefetching Facts

1. Prefetching is enabled by default in Windows XP.

2. Prefetching is configured optimally by default.

3. Prefetching will significantly improve application load times.

4. The Prefetch (.pf) files are not a cache, they are reference files.

5. The Prefetch (.pf) files do not preload/cache anything upon Windows startup that does not normally load at startup.

6. Only one Prefetch (.pf) file is referenced during startup = NTOSBOOT-B00DFAAD.PF

7. Only one Prefetch (.pf) file is created per application.

8. The Prefetch (.pf) files including the Layout.ini and NTOSBOOT-B00DFAAD.PF files are automatically updated.

9. The Prefetch folder is auto cleaned after 128 entries have been reached down to the 32 most used applications.

10. Notebooks running on battery power will not execute idle tasks and thus cannot further optimize or remove prefetch files.

 

What CCleaner does

CCleaner deletes any Prefetch file older then two weeks based on the .pf file's last access date. This is completely idiotic

 

for a number of reasons. First you should never delete a .pf for any installed application. With the .pf file missing, that

 

application will take up to 100% more time to load when you decide to launch it. CCleaner does this to any application you

 

have installed on your computer but have not used in over two weeks. It makes absolutely no sense to delete these files. Why

 

would you deliberately want to slow down any installed application's load time? It will also do this if you have not used you

 

computer for two weeks. Second, it is quite common to disable the NTFS Last Access Time Stamp for performance reasons. I

 

actually recommend doing this since it speeds up the file system. In this case CCleaner will delete any .pf file that was

 

created over two weeks ago. You can clearly see how running CCleaner in this case would wind up deleting ALL your Prefetch

 

files every two weeks. Now you are crippling every application's load time on your system instead of just the ones you have

 

not used in two weeks. Ridiculous!

 

Testing

Make sure the Task Scheduler service is set to automatic. Launch an application like Firefox three times. Reboot and make

 

sure there is a FIREFOX.EXE-XXXXXXXX.pf file in the C:\WINDOWS\Prefetch folder. If there is, launch Firefox and time it. Then

 

delete the .pf file, reboot, relaunch Firefox and time it again. You will now see Firefox take a significantly longer time to

 

load. Now imagine this on any other application, then imagine doing this deliberately every two weeks? Why? To save a tiny

 

bit of HD space? It makes no sense. 128 .pf files take up maybe 5 MB of disk space.

 

Conclusion

Do not clean the prefetch folder! If you use CCleaner uncheck the "Old Prefetch data" option. Finally let the makers of

 

CCleaner know they need to remove this option from CCleaner.

so read & dont do it OK :blink::blink:

Link to comment
Share on other sites

  • Moderators

After countless arguments in the past about prefetch we are not going to start them off again with the above post.

 

Mastertech (Andrew) and info by him causes arguments.

 

Also Hotdog3 what you posted is old.

 

Next time, post a link to something instead of pasting it and using a full page up.

 

Thread closed

 

Support contact

https://support.ccleaner.com/s/contact-form?language=en_US&form=general

or

support@ccleaner.com

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.