How to diagnose slow booting or logon in Windows?

43

33

When I start my PC, it boots into Windows (Windows 7 32-bit) quite happily, I login and the main Windows screen appears. At that point, however, the system is extremely unresponsive for up to 5 minutes - if I click on Firefox to start it, nothing appears to happen for a long time, etc, etc. The mouse and Windows UI is responsive, but programs take forever to start, webpages seem to hang (or at least load extremely slowly) and so on.

I imagine that the issue is with one or more programs that run on startup, but I don't know quite how to identify which one it might be. The event log shows nothing of any obvious interest. I can't see any high CPU activity in task manager or Process Explorer, and I can't hear any high disk activity.

I'd rather understand what's happening and then work out how to address it, than have to go for a blind "switch things off and see what helps" approach, but maybe that's being optimistic :-)

I suspect disk bottlenecks or network, but I don't know how I could set something up to diagnose this (and in particular, given that I can't get programs to start in a timely manner, I'd prefer something that automatically starts and logs data for later analysis than something like Process Explorer, which always leaves me worrying that by the time it started the problem had gone away :-)

I guess my ideal would be 2 things:

  1. Something that gave me an overall "what are the current key bottlenecks in this system" summary (ideally, which could be set to run in the background and collect data for later analysis).

  2. Some means of starting a program (say, Firefox) and have it record what was going on in terms of waits and delays in the system.

Unfortunately, I've never really found anything like either of these.

I'm not a professional systems admin - my background is database admin - so if there are "obvious" tools to look at or try, then I'd be grateful to know of them (particularly if the information they give is easy for an amateur to analyze) :-)

Paul Moore

Posted 2011-02-25T13:49:48.547

Reputation: 573

Question was closed 2017-06-19T18:29:41.917

This is a good question, but the answer at the other question is better. – music2myear – 2017-06-16T17:39:48.363

Answers

23

The tools XPerf and XBootMgr from the WPT (available in Windows SDK or below) are great for troubleshooting any performance related problems on Windows; whether it is at boot or hick-ups during a Full HD video, these tools help you to pinpoint the problem. They are free and from Microsoft. :-)

Performance Analysis

Troubleshooting of slow systems can be done like this:

  1. Download the setup from Windows Performance Analysis Tools for your Windows version.
  2. Install the software on your system.
  3. Open a command prompt as administrator, and copy paste the next command:

    xperf -start perf!GeneralProfiles.InBuffer && timeout -1 && xperf -stop perf!GeneralProfiles.InBuffer myTrace.etl
    
  4. Press ENTER once to start the command, now you will have to wait till your the action is done.

  5. Right after your action is done you go to the console and press ENTER.
  6. After waiting some time a log file myTrace.etl will be produced.

Either analyze this yourself, or if you can't find the issue, upload it and I'll help you:

  1. Compress this to a zip file, put it online somewhere (perhaps 2shared).
  2. Share the link here, I will do an attempt to find and show you the cause of your problem.

Boot Analysis

For an user-friendly and simple approach, check @harrymc suggesting Soluto.

For detailed boot analysis, check this document, XBootMgr.exe is available in the WPT I linked earlier.

Following the instructions in the document will result in a similar log which you could analyze or upload...

Tamara Wijsman

Posted 2011-02-25T13:49:48.547

Reputation: 54 163

Soluto is dead project. Now they are searching for cell phones. – Dims – 2015-04-09T21:02:37.583

@Dims: Yes, some years ago Soluto has migrated to the web as you can see on that page; harrymc's screenshot might be a bit outdated and still picture the old application, but their boot-analysis functionality still exists as documented in that link. The front page just has no hyperlink to it. – Tamara Wijsman – 2015-04-14T10:36:08.150

It's also not a reason to not recommend it. It's up to the reader to decide. – Tamara Wijsman – 2015-04-14T15:12:04.490

Anyway to get/ find a copy of the old Soluto desktop app. What version and name was its setup file? – Alex S – 2015-10-25T06:09:54.477

It's not clear what this link was intended to point to, but it's not there now: http://msdn.microsoft.com/en-us/windows/hardware/gg463386.aspx

– LondonRob – 2017-06-15T15:18:19.143

1Your first link is dead. – Scott Chamberlain – 2014-03-16T15:24:12.167

18

UPDATE: Soluto has moved on and its software relates now to the mobile world.  Soluto’s original “Anti-Frustration Software” is no longer available from the manufacturer; one would need to look on the Internet for an old version of it, which might not still work after all.

A pity, since it was a rather unique product.

Here is an archived copy of their website.Their URL now redirects to asurion.com, which appears to offer technical services, but no products.


Soluto is an excellent boot-analysis product.

For more info see: Soluto Figures Out What’s Bogging Down Your PC (And Tells You How To Fix It).

screenshot of Soluto’s “Anti-Frustration Software”

harrymc

Posted 2011-02-25T13:49:48.547

Reputation: 306 093

The answer is obsolete. Soluto is now searching for cell phones. – Dims – 2015-04-09T21:02:10.297

1@Dims: You misunderstand the voting system. Answers are upvoted when useful, downvoted when useless. Obsolete is not wrong - just was right then but not right any more. It's not really wrong because old versions can be found somewhere on the Internet if one makes the effort. – harrymc – 2015-04-09T21:26:23.900

This answer disorients, it should be just deleted. Downvoting tends to this. – Dims – 2015-04-09T21:33:32.157

P.S. Currently it just works as spam -- sending people, searching for boot timing to irrelevant Soluto site. – Dims – 2015-04-09T21:34:49.280

@Dims downvoting does not necessarily lead to deletion. Also, voting should be based on correctness not necessary usefulness. Soluto was a correct answer at one time. – James Mertz – 2015-04-09T23:59:53.407

@Dims: There are better solutions than downvote : (1) editing and adding a remark, as I just did, (2) Signaling via a comment, as you did, (3) Flagging in extreme cases, for the community to vote on deletion. – harrymc – 2015-04-10T05:45:27.480

@Dims: That's not true. https://www.soluto.com/boot-time

– Tamara Wijsman – 2015-04-14T02:01:21.933

@TomWijsman: Thanks. It's good to know that Soluto still exists, even if it seems that boot-time measures are no longer their main business. – harrymc – 2015-04-14T04:45:05.997

@harrymc - Anyway to get/ find a copy of the old Soluto desktop app. What version and name was its setup file? – Alex S – 2015-10-25T06:09:43.500

https://support.soluto.com/entries/95566367-Windows-10-Support - note that they don't support Windows 10 and have no plans to fix – nponeccop – 2016-01-15T03:06:08.433

The Link is fully dead – HackSlash – 2018-10-19T18:11:55.570

+1 I forgot that Soluto shows you the individual seconds spent, and it's user-friendly. – Tamara Wijsman – 2011-02-25T17:09:10.357

3

This answer is obsolete. Unfortunately, Soluto discontinued the desktop application and only provides a web-service as a commercial system-admin product. [1] [2] [3]

– Synetech – 2014-03-25T05:03:26.023

2@Synetech: Only the display part has moved to the web, the data is still generated on the PC via the installed desktop application. The new display functions about the same as before if one ignores the new bells and whistles. – harrymc – 2014-03-25T07:46:37.213

1It’s not the same at all. For one thing, it is now a mass system-management for admins program as opposed to a personal system-optimization program. Also, it is now a commercial product (“free” for three systems). Shame, because it was pretty neat when it first came out. I for one no longer use it. – Synetech – 2014-03-25T17:53:50.867

@Synetech: No argument there. Another example of a beautiful product now suffering from acute bloatware. – harrymc – 2014-03-25T19:44:38.930

1Yup; sadly, the list of wonderful programs (and services) that I loved at first but which got really bad and ruined because of terrible developer support and refusal to listen to user feedback grows just keeps getting longer. :-( – Synetech – 2014-03-26T00:31:02.787

7

I have an additional suggestion for tracking boot time. It is via Event 100 in Event viewer. Drill down this chain:

Eventvwr 
-->Applications and Service Logs
-->Microsoft
-->Windows
-->Diagnostics - performance
-->Operational
-->Event ID 100<--

Then double click on Event 100 which gives you this small window indicating the boot time.

enter image description here

Then click on the 'Details' tab which gives you all this additional information from which you should be able to determine the process which takes the most time during boot.

EventData 

  BootTsVersion 2 

  BootStartTime 2015-04-09T15:19:05.671600300Z 

  BootEndTime 2015-04-09T15:21:34.500099800Z 

  SystemBootInstance 1174 

  UserBootInstance 1155

  BootTime 24239 

  MainPathBootTime 12239 

  BootKernelInitTime 19 

  BootDriverInitTime 291

  BootDevicesInitTime 906 

  BootPrefetchInitTime 0 

  BootPrefetchBytes 0 

  BootAutoChkTime 0 

  BootSmssInitTime 8551 

  BootCriticalServicesInitTime 410 

  BootUserProfileProcessingTime 823 

  BootMachineProfileProcessingTime 70 

  BootExplorerInitTime 499 

  BootNumStartupApps 7 

  BootPostBootTime 12000 

  BootIsRebootAfterInstall false 

  BootRootCauseStepImprovementBits 0 

  BootRootCauseGradualImprovementBits 0 

  BootRootCauseStepDegradationBits 0 

  BootRootCauseGradualDegradationBits 0 

  BootIsDegradation false 

  BootIsStepDegradation false 

  BootIsGradualDegradation false 

  BootImprovementDelta 0 

  BootDegradationDelta 0 

  BootIsRootCauseIdentified false 

  OSLoaderDuration 1894 

  BootPNPInitStartTimeMS 19 

  BootPNPInitDuration 932 

  OtherKernelInitDuration 411 

  SystemPNPInitStartTimeMS 1338 

  SystemPNPInitDuration 265 

  SessionInitStartTimeMS 1609 

  Session0InitDuration 4563 

  Session1InitDuration 553 

  SessionInitOtherDuration 3434 

  WinLogonStartTimeMS 10161 

  OtherLogonInitActivityDuration 686 

  UserLogonWaitDuration 182 

whs

Posted 2011-02-25T13:49:48.547

Reputation: 1 251

1This is a promising option, but with so little documentation out there on what each row of the report refers to, it's of limited use. (e.g. What is BootRootCausesStepImprovementBits?) – LondonRob – 2017-06-13T11:59:50.237