July 23, 2003 at 6:56 am
Hi!
Today run into this problem: a large 6xPIII 700 system got 95% CPU Time for extended period. Current Activity -> Process Info shows the total CPU usage since the user logged in, right?
How can I determine, who eats most CPU the last 10 minutes?
Thanks.
July 23, 2003 at 7:03 am
Do you have any performance log for last 10 minutes? Or have any performance monitor application (for example, BMC) running against this server?
July 23, 2003 at 7:14 am
"Do you have any performance log for last 10 minutes?"
- Like counter logs, in Performance snap in? I wonder how can this help...
This time I just seen it in System monitor, Processor Time counter...
"Or have any performance monitor application (for example, BMC) running against this server?"
- So BMC Apps allow this?
July 23, 2003 at 7:38 am
quote:
Like counter logs, in Performance snap in? I wonder how can this help...This time I just seen it in System monitor, Processor Time counter...
If you have setup the performance counter logs properly, you will be able to see which processes eat CPU time. It might not the SQL Server.
If you are sure the SQL Server takes most of CPU time and you want to know which transaction/statement comsumes CPU, Profiler is the one you are looking for. If you did not run Profiler in last 10 minutes, You wouldn't be able to trace back.
There are many performance tools available, BMC is one of them that can help to monitor your system.
July 23, 2003 at 9:29 am
I did run Profiler for 2 hours, when high CPU usage was seen.
I am not sure if this gives the complete picture, since I used only these events for my trace: RPC:Completed and SQL:BatchCompleted.
The reason for my doubt are the following calculations:
the total CPU usage for al events in this trace (SELECT sum(CPU) as sum_cpu
FROM trace_23_07_03_11-13) equals 13 243 775 (in milliseconds, right?)
I have 6xPIII Xeon system that was loaded by 90% (on the average) for two hours.
This would give 6 processors * 2 hours * 60 minutes * 60 seconds * 1000 milliseconds * 90% = 38 880 000 (no parallel execution,- too many users)
So 13 243 775 out of 38 880 000 is about 30% of the whole picture.
Right?
July 23, 2003 at 9:34 am
Another reason not to trust it, is that this trace shows that most CPU was eaten by replications, but I did not change any replications before this and replications cannot eat so much (12 081 940 out of 13 243 775).
Viewing 6 posts - 1 through 5 (of 5 total)
You must be logged in to reply to this topic. Login to reply