CPU mystery

  • I’ve created a job (with 2 minutes interval) to get running processes info from sysprocesses. This is what I’ve got from my table:

     

    spid   ecid           cpu         cpu_growth (s)                 physical_io                  job_date

    249       0          11042682          0                                     97415                  2005-11-20 10:44:00

    249       0          11817662          775                               100680                   2005-11-20 10:48:00

    249       0          12417565          600                               103454                   2005-11-20 10:52:00

     

    As you can see for 4 minutes interval CPU_growth is 10-12 minutes.  How it can be possible? Thanks

  • That CPU # (if you are referring to the same CPU # in profiler) does not represent time, it represents the # of CPU cycles.



    A.J.
    DBA with an attitude

  • OK. Can I transfer these cycles into seconds? Or, probably, I don't need it as this CPU # is used only to compare with another process? I mean, using this # we can say only, who is the first or last CPU consumer (from Profiler, for example, we get real CPU in msec).  Thanks

  • I'm not aware of being able to do what you require, it would probably be very intenisive monitoring anyway. I'm not too sure what you actually want to achieve.

    [font="Comic Sans MS"]The GrumpyOldDBA[/font]
    www.grumpyolddba.co.uk
    http://sqlblogcasts.com/blogs/grumpyolddba/

  • Frankly, I try to understand what these CPU numbers means (I certainly know from BOL: “Cumulative CPU time for the process”), i.e. how to use them. For example, sometimes we have high (>90%) CPU for 10 minutes and I should find the reason for this issue. From Profiler I don’t see anything unusual (with CPU filter >30 s). From sysprocesses table I have CPU and …? What info or how I can get from these numbers- analyze growth, compare to another processes or something else? How you, guys, utilize this CPU data? Thanks

  • AJ:  You must have a different version of Profiler.  Mine reports milliseconds of CPU utilization.

    Yuri: Now, in 4 minutes, you get 775 seconds of reported utilization.  This would seem impossible, since there are only 240 seconds in 4 minutes. BUT, there are actually 240 CPU seconds multiplied by the number of CPUs that are running SQL. 

    So, if you have 4 CPUs, there is a maximum of 960 seconds of CPU time in 4 minutes.   This could also be 2 CPUs with HT turned on.

     

    hth  jg

     

     

     

  • Thanks, Jeff- we really have 4 CPUs.

Viewing 7 posts - 1 through 6 (of 6 total)

You must be logged in to reply to this topic. Login to reply