in reply to Increasing CPU Usage/Decreasing Run Time

If there's a large discrepancy between your wall clock time and the sum of your user and system time, it (usually) means something else is being done. It could be that the CPU is given other programs a chance to run as well. It could be that the program is waiting for the disk. It could be it's waiting for the network.

But whatever it is, it's not something that can be determined from here, with the output of the profiler. The profiler just shows the breakdown of how it spend the allotted CPU time - it doesn't given any indication why it didn't get the CPU for 247 seconds.

If you have a real OS, like Solaris or HP-UX, you can use tools like dtrace(1) or glance, which will give you a lot of information.

  • Comment on Re: Increasing CPU Usage/Decreasing Run Time

Replies are listed 'Best First'.
Re^2: Increasing CPU Usage/Decreasing Run Time
by puploki (Hermit) on Jul 26, 2005 at 09:35 UTC
    From a purely windows perspective, there are a lot of tools that can help as well.

    The very excellent Process Explorer from Sysinternals will allow you to see what perl.exe has threaded beneath it - I often find with lots of disk intesive operations that Perl itself takes up very little CPU, but the Kernel itself is running quite high (as it's that that's handling the disk IO).

    You may also want to try bumping up the thread priority (vanilla task manager can do that), but I doubt it will make much difference.