Profiling your windows operating system

Solution 1:

Try the free Microsoft SysInternals tool suite: lots of tools for profiling. Take a look at: http://technet.microsoft.com/en-us/sysinternals/default.aspx

Update:

You should also consider what Internet Security/Anti-virus you have installed and is running on your system. These will have a, hopefully small, but significant impact on your system performance. You can adjust the settings on this, one of the main ones that will have significant activity is background scanning. I've used AVG, McAfee and Norton, and Norton appears to provide the most transparent view as to what it is doing as it has its own task manager and resource usage graph over time. I don't work for any of them but I would recommend Norton over McAfee as McAfee mysteriously periodically severely slowed down my machine for a minute or so on occasions.

Update 2:

You said:

"you can run 16 billion instructions a second, what are you doing that keeps you from responding to my mouse click."

Just a further comment. Computing activity can be described as falling into 2 kinds: Compute-bound and IO-bound. Compute-bound is where the activity is mostly or all of calculations, IO bound is where the activity is mostly or all of accessing input output devices, such as hard disks, other peripherals such as a network. Useful activities are seldom one or the other, as you can't really do just IO without using compute to make it useful and if you don't have any IO then you have nothing to compute. In your case it would seem that the activities involve an IO component - accessing the hard disk, which is the slowest component.

Update 3: Re:McAfee occasional CPU hog issue, at appears that Norton has its own version of this, to my won discovery recently, though I'm not seeing such a thing as much as I had with McAfee. The Norton CPU hog is discussed here: http://community.norton.com/t5/Norton-Internet-Security-Norton/ccsvchst-exe-cpu-usage-Issue/m-p/2888 "ccsvchst.exe cpu usage Issue". So thought I would mention to provide a balanced opinion. I would however still recommend Norton as from my experience my version shows detailed resource usage statistics which would go toward explaning your original question if you install the same.

Solution 2:

Try the tool Process Monitor if you want to see what all a process is doing when it starts up. And for the record, most of the "waiting" these days is waiting on the harddrive - CPU and memory improvements are quickly outpacing the rate at which harddrives are getting faster. If you open Task Manager, and then watch it while you launch a program, you can see how much of the CPU is actually being used - unless the CPu hits 100% and pegs there, then the CPU is sitting idle while the harddisk is trying to feed it information.

Solution 3:

To answer the question's title "Profiling your windows operating system" I suggest trying with Microsoft's Windows Performance Toolkit V5.0 - that includes WPR (Windows Performance Recorder) and WPA (Windows Performance Analyzer).

It is included in the Windows ADK.
It works with Windows 7 and later.


Additional starting points:

  • Resource Monitor (resmon.exe) - included in Windows Vista (and later).
  • Microsoft's Sysinternals has various tools.