Linked by Thom Holwerda on Mon 11th May 2009 20:43 UTC
Windows SuperFetch is a technology in Windows Vista and onwards that is often misunderstood. I decided to delve into this technology to see what it is all about, and to dispel some of the myths surrounding this feature.
Thread beginning with comment 362974
To view parent comment, click here.
To read all comments associated with this story, please click here.
RE[2]: Test Canedidate
by lemur2 on Tue 12th May 2009 09:23 UTC in reply to "RE: Test Canedidate"
lemur2
Member since:
2007-02-17

In my article, there's a link to Tom's Hardware which indeed performed this very test on OOo 2.1 a few days after Vista was released. Where Writer 2.1 first took 9 seconds to load, it dropped to just 2-3 seconds, and that was on a machine with 512MB of RAM. Adding in more RAM made launching Writer even faster; less than a second on 2GB machines.


I wonder why they needed to wait for Vista to be released?

OOo and preload were available on Linux before Vista came on the scene, I'm sure.

Let's see.

http://www.debianadmin.com/load-applications-quicker-in-ubuntu-usin...

July 9th, 2007

Vista launch?

http://en.wikipedia.org/wiki/Vista#Development

January 2007

OK, so we have to go back a bit further.

http://sourceforge.net/forum/forum.php?forum_id=492870

Preload first appeared in 2005.

http://sourceforge.net/forum/forum.php?forum_id=597292

A few improvements in 2006.

http://sourceforge.net/forum/forum.php?forum_id=849333

Then some more tuning starting in 2008.

http://sourceforge.net/projects/preload

Last update, April 2009.

So Tom's hardware could have done their review of this idea two years earlier if they had wanted to.

Reply Parent Score: 1

RE[3]: Test Canedidate
by Thom_Holwerda on Tue 12th May 2009 09:25 in reply to "RE[2]: Test Canedidate"
Thom_Holwerda Member since:
2005-06-29

Windows XP introduced PreFetch in 2001.

But anyway, Tom's Hardware article was about Vista and the advantages of SuperFetch, and they used, among other applications, Writer as an example. It wasn't about Writer itself.

Edited 2009-05-12 09:26 UTC

Reply Parent Score: 1

RE[4]: Test Canedidate
by lemur2 on Tue 12th May 2009 10:54 in reply to "RE[3]: Test Canedidate"
lemur2 Member since:
2007-02-17

Thom:

Windows XP introduced PreFetch in 2001.

But anyway, Tom's Hardware article was about Vista and the advantages of SuperFetch, and they used, among other applications, Writer as an example. It wasn't about Writer itself.


OSGuy:
lemur2, no offense but I am failing to see the point you are trying to make? We are talking about SuperFetch and memory management and this has nothing to do with an ordinary pre-loading. Please clarify?


Pre-fetch isn't Superfetch, but it was a predecessor.

http://en.wikipedia.org/wiki/Prefetcher

Superfetch didn't make an appearance until Windows Vista.

http://en.wikipedia.org/wiki/Windows_Vista_I/O_technologies#SuperFe...

In Windows Vista, SuperFetch and ReadyBoost extend upon the prefetcher and attempt to accelerate application and boot launch times respectively by monitoring and adapting to usage patterns over periods of time and loading the majority of the files and data needed by them into memory so that they can be accessed very quickly when needed.


Preload is more like Superfetch than it is like Prefetch.

http://en.wikipedia.org/wiki/Preload_(software)

preload is a Free Linux program written by Behdad Esfahbod which runs as a daemon and records statistics about usage of programs using Markov chains; files of more frequently-used programs are, during a computer's spare time, loaded into memory. This results in faster application startup times as less data needs to be fetched from disk.


Both preload and Superfetch use previously collected frequency of usage data to determine exactly what to pre-load into RAM, whereas Prefetch doesn't AFAIK.

PS: It is interesting to note that Microsoft bothered to get a patent for ReadyBoost, but they didn't do so for SuperFetch. Damn prior art!

The tricks for success are:
(1) make sure that the time the preloader uses is indeed spare time
(2) pre-load the optimal data and no more
(3) make sure that the system knows what stuff is already in RAM, so it doesn't have to re-load it, and
(4) don't throw away potentially useful pre-loaded data too early.

Edited 2009-05-12 11:06 UTC

Reply Parent Score: 2

RE[3]: Test Canedidate
by OSGuy on Tue 12th May 2009 09:27 in reply to "RE[2]: Test Canedidate"
OSGuy Member since:
2006-01-01

lemur2, no offense but I am failing to see the point you are trying to make? We are talking about SuperFetch and memory management and this has nothing to do with an ordinary pre-loading. Please clarify?

Edited 2009-05-12 09:29 UTC

Reply Parent Score: 2