Jump to content

Welcome to MSFN Forum
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account



Photo

How to speed up boot process under Windows Vista or Windows 7

- - - - -

  • Please log in to reply
663 replies to this topic

#1
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

ATTENTION: The guide only works if you use HDD (NOT a SSD!).

To get started you need the Windows Performance Tools Kit. Read here how to install it:

http://www.msfn.org/...howtopic=146919

If you are a Windows 7 User:
Make sure that EnablePrefetcher and EnableSuperfetch registry settings are set to 3 and that the Superfetch service (sysmain) is running and set to start automatically.

Also install those Windows 7 hotfixes:
http://www.msfn.org/...howtopic=152622

If you are a Windows Vista User:
Make sure that EnablePrefetcher and EnableSuperfetch registry settings are set to 3 and the ReadyBoost service and that the Superfetch service (sysmain) are both running and set to start automatically.

Now open a command prompt with admin rights ( http://windows.micro...or-access-token ) and run the following command:

xbootmgr -trace boot -prepSystem -verboseReadyBoot

Now your PC will be restarted 6 times. After the second reboot the MS defragmentation program is running and is placing the files into an optimized layout, so that Windows will boot up faster (for the description read what ReadyBoot is). The last Reboots are training of readyBoot. After the training is finished, you'll notice a huge improvement in startup.

Note! DON'T USE OTHER DEFRAGMENTATION PROGRAMS AFTER THE OPTIMIZATION, USE ONLY THE INCLUDED MS TOOL, BECAUSE EVERY TOOL PLACES THE FILES AT A DIFFERENT OFFSET ON YOUR HDD, BECAUSE ALL TOOL THINK THEY KNOW IT BETTER!

Background:

With Windows XP, MS implemented a prefetcher which loads data into the RAM, when the CPU was busy, starting services, drivers, so that they are already loaded when they are needed in later stages of the boot process.

With Vista, MS improved this prefetcher and named it ReadyBoot:

Windows Vista uses the same boot-time prefetching as Windows XP did if the system has less than 512MB of memory, but if the system has 700MB or more of RAM, it uses an in-RAM cache to optimize the boot process. The size of the cache depends on the total RAM available, but is large enough to create a reasonable cache and yet allow the system the memory it needs to boot smoothly.
After every boot, the ReadyBoost service (the same service that implements the ReadyBoost feature just described) uses idle CPU time to calculate a boot-time caching plan for the next boot. It analyzes file trace information from the five previous boots and identifies which files were accessed and where they are located on disk. It stores the processed traces in %SystemRoot%\Prefetch\Readyboot as .fx files and saves the caching plan under HKLM\System\CurrentControlSet\Services\Ecache\Parameters in REG_BINARY values named for internal disk volumes they refer to.
The cache is implemented by the same device driver that implements ReadyBoost caching (Ecache.sys), but the cache's population is guided by the ReadyBoost service as the system boots. While the boot cache is compressed like the ReadyBoost cache, another difference between ReadyBoost and ReadyBoot cache management is that while in ReadyBoot mode, other than the ReadyBoost service's updates, the cache doesn't change to reflect data that's read or written during the boot. The ReadyBoost service deletes the cache 90 seconds after the start of the boot, or if other memory demands warrant it, and records the cache's statistics in HKLM\System\CurrentControlSet\Services\Ecache\Parameters\ReadyBootStats, as shown in Figure 2. Microsoft performance tests show that ReadyBoot provides performance improvements of about 20 percent over the legacy Windows XP prefetcher.

Posted Image


Source:
http://technet.micro...el.aspx?pr=blog


If you remember XP days, their was a tool called BootVis. The optimization is similar to this here, but the difference is, that is only starts the integrated MS defragmentation program for a better HDD layout, because XP doesn't have ReadyBoot.

To see the improvement in time, run those 2 commands:

xperf -i bootPrep_BASE+CSWITCH_1.etl -o 01_summary_start.xml -a boot
xperf -i boot_BASE+CSWITCH_1.etl -o 02_summary_end.xml -a boot

To determine the boot time, open the XML files and look at the value bootDoneViaPostBoot. This value (-10000 = 10seconds) shows you the time, which Windows needs to boot completely.

In the file 02_summary_end.xml it should be much lower.


I hope this small tutorial helps you to make your Windows start faster.

Edited by MagicAndre1981, 25 July 2011 - 10:07 AM.

Posted Image


How to remove advertisement from MSFN

#2
Felipe

Felipe

    Newbie

  • Member
  • 44 posts
  • Joined 17-March 04

After the training is finished, you'll notice a huge improvement in startup.


How much of an improvement are we looking at ?

#3
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

for me it improves the startup from 60s to 35s. And this is a lot.
Posted Image

#4
Felipe

Felipe

    Newbie

  • Member
  • 44 posts
  • Joined 17-March 04
It is. Worth a shot, thanks ! :thumbup

#5
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

ok, please post your results.
Posted Image

#6
Felipe

Felipe

    Newbie

  • Member
  • 44 posts
  • Joined 17-March 04
For those who'd like to try it as well, I've put them here : http://www.filedropp...formancetoolkit for easy access.

#7
Felipe

Felipe

    Newbie

  • Member
  • 44 posts
  • Joined 17-March 04
Startup went from 42s to 30s. Until now, that seems to be the fastest it can go.

It did crash however when it ran an additional step after the 6. Something about the user, I haven't taken the time to look at it, wierd, because I'm an admin on my pc.

I'll give it another run when I have more spare time.

#8
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

42s to 30 is also ok. You could make a trace and look for drivers or services which cause a slow start.
Posted Image

#9
cloferba

cloferba

    Member

  • Member
  • PipPip
  • 119 posts
  • Joined 25-April 08
any way to do only one or 2 reboots?

not 6 :s

i want to slipstream this function to my unattended windows 7

#10
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

no, more reboots are better. After the optimal placement of the files on your HDD, the prefetcher must learn to load them in optimal order. This takes several reboots.
Posted Image

#11
tbusters

tbusters
  • Member
  • 7 posts
  • Joined 26-December 09
I gave i a try but found a strange error:

xbootmgr is an unknown format /file or assignment

and how do i know if my ready boost is running ( windows 7 ) enableprefetch was (3) so is running i gues

#12
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

which CPU architecture does your Windows have? Did you install the correct msi?
Posted Image

#13
tbusters

tbusters
  • Member
  • 7 posts
  • Joined 26-December 09
x64

I got the msi from x64 not the 32 and not the special for the processor i dont have

#14
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

Could you please post a screenshot of the error message?
Posted Image

#15
tbusters

tbusters
  • Member
  • 7 posts
  • Joined 26-December 09
ok now i get a different error (strange)

The message is btw in dutch
und ich glaube das sie das nicht lesen konnen :P (bad german)

it now says >"-boot"is unrecognised <

try some other commands

ps is there a way to post pics on this forum without uploading them to a strange server?

#16
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

upload the pictures in the attachment and insert them into the post.

remove the "-" before boot.
Posted Image

#17
tbusters

tbusters
  • Member
  • 7 posts
  • Joined 26-December 09
ok this is really stupid

in total i have gotten 2 different error messages

the third time was the lucky time it just worked and i havent changed the code or anything els

so people it does work and i appreciate the help i got from U

thank you very much.

still one question stand: why is this not normaly integrated in windows and why hasnt anyone made a easy tool for it so every body can use it?

#18
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

normally Windows should learn it on every Reboot. But with this method you can speed up the "learning" of ReadyBoot.

Which error message do you get? You are the first person, who is unable to run it.

Edited by MagicAndre1981, 29 December 2009 - 04:02 AM.

Posted Image

#19
PC_LOAD_LETTER

PC_LOAD_LETTER

    Well, I stole something else

  • Super Moderator
  • 1,829 posts
  • Joined 13-October 07
  • OS:Windows 7 x64
  • Country: Country Flag
i just got around to running this on a machine.

i tried my laptop since its the machine i reboot the most.
Windows 7 Ent Dell d830 c2d@2G 2Gb ram

i tried 3 test boots before installing the sdk (timed as a cold start from power button to C+A+D to login)

1 min 45 seconds
3 min 10 seconds
1 min 55 seconds

after the 6 reboots (and 6 logins and answering 6 UAC prompts between boots) i get:

1 min 21 seconds
1 min 20 seconds
1 min 25 seconds
1 min 21 seconds
1 min 22 seconds

not a major increase but if nothing else its more consistent (wish i woulda taken a few more "before" times)

#20
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

30s improvement is ok. If you can upload the latest etl (compressed as 7z or RAR) I can take a look at it and tell you what may causes delays and what can be improved.
Posted Image

#21
BahrainChris

BahrainChris
  • Member
  • 4 posts
  • Joined 13-August 10
  • OS:Windows 7 x64
  • Country: Country Flag
Hi,

This post is great and I already have got a small improvement in boot times from following the instructions.

Now I would like to see if I can squeeze a further improvement by analysing the results of a boot trace. Unfortunately, the results don't mean anything to me so I'm hoping somebody will have a look at them and give me some advice.

The results of the test are here: http://rapidshare.co...ERS_POWER_1.zip

Thanks for any assistance.


Chris

#22
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

Hi Chris,

your Windows boots in 30s to the desktop and is fully booted in 61 seconds.

What I see is that the PostBoot Takes 30s. This means the tools which run at login (startup) are slowing down your System.

I can see that you have Norton AntiVirus (NAV, ccsvchst.exe (1764), 0x00000043, Running) installed. This service hangs and causes a huge IO activity. I hate the yellow pest. You should use other freeware tools like Avira AntiVir (http://www.free-av.com/en/index.html) or Microsoft Security Essentials.

Next, run AutoRuns (http://technet.micro...s/bb963902.aspx) and disable all not needed tools (Live Messenger, iTunes, iPod). only start them when you need them.

After doing this run the optimization again.

André
Posted Image

#23
BahrainChris

BahrainChris
  • Member
  • 4 posts
  • Joined 13-August 10
  • OS:Windows 7 x64
  • Country: Country Flag
Hi Andre,

Okay, Norton Anti Virus is gone and replaced with Microsoft Security Essentials.

I have the AutoRuns tools but aren't sure what to disbale. There are various tabs across the top - I want to make sure I don't disable anything important. I guess the most likely looking tab is the one labelled "Logon".

Am I looking at the correct items?

Thanks,


Chris

#24
MagicAndre1981

MagicAndre1981

    after Windows 7 GA still Vista lover :)

  • Patrons
  • 6,088 posts
  • Joined 28-August 05
  • OS:Vista Ultimate x86
  • Country: Country Flag

Donator

yes, look under Logon and disable the automatic startup of the Live Messenger.
Posted Image

#25
BahrainChris

BahrainChris
  • Member
  • 4 posts
  • Joined 13-August 10
  • OS:Windows 7 x64
  • Country: Country Flag
Okay - my new results are here: http://rapidshare.co...ERS_POWER_1.zip

Is there any improvement? It "feels" faster but that might be just wishful thinking!!!

Thanks for your help.

Chris




2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users