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]

Reply via email to