Saturation of a single strand on T1 will appear as 3.2% of CPU utilization by a single-threaded process using prstat. You can also use prstat -mL to see the threads that spend 100% of their time running in user/system mode.
You may also run into the same saturation situation when multiple threads are "synchronized" - i.e. only one of them can run at a time based on your application logic. In this case you would have to compute the composite CPU utilization on the suspect threads. This is fairly simple if the single-threaded process is relatively long lived. If we are talking about a short-lived single-threaded process then it would be harder to detect (use dtrace). In general a single-threaded app will not be able to use the entire 1000MHz of the single processor - since it has to share it with 3 other strands. Even if the other strands are doing nothing the single strand will not be able to take advantage of the full 1000MHz available on the processor. From what I have seen a single strand will be able to utilize about 400-600MHz - depending on its memory fetch patterns/etc. -----Original Message----- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Elad Lahav Sent: Friday, October 03, 2008 11:22 AM To: Steve Sistare Cc: [email protected] Subject: Re: [perf-discuss] Idle time numbers for a T1 strand Thanks, Steve, but the blog does not answer my question. With vmstat reporting 50% idle time, and the core greatly under-utilised (about 25%), how do you determine that a *single thread* has reached its limit? I would expect 0% idle time on vmstat in that case. The main issue is that the number of instructions-per-second that a thread can execute depends on its own CPI, but also on the execution pattern of the other threads in the core. So a thread that can do 700 instructions/sec, if running alone on the core, will do much less when sharing the core with other threads. Thus, you're left with mpstat to tell you whether the thread is saturated. Only I'm not sure whether mpstat is doing the right thing. --Elad Steve Sistare wrote: > See Ravi Talashikar's blog for an explanation of CPU vs core > utilization on CMT architectures such as the T1000: > http://blogs.sun.com/travi/entry/ultrasparc_t1_utilization_explained > > - Steve _______________________________________________ perf-discuss mailing list [email protected] _______________________________________________ perf-discuss mailing list [email protected]
