On Tue, May 12, 2009 at 9:07 AM, Qihua Wu <dtrace...@gmail.com> wrote: > From the man page, > ithr is "interrupts as threads", but what's the detailed meaning of > "interrupts as threads"? And under what condition will this interrupt > happen?
The ithr column shows the number of interrupts that are converted to real threads. If you have a copy of Solaris Internals (2nd edition), there's a good description of this in section 3.11.2. In case you don't have a copy handy, I'll try to paraphrase. Low priority interrupts are handled as kernel threads. To avoid the penalty of fully initializing a kernel thread for every interrupt, each CPU maintains a pool of interrupt threads, one per priority level. An interrupt will start off using just the stack from the pool thread for its priority level, and the thread won't otherwise be initialized. If the interrupt is handled without blocking on a synchronization object, the thread won't be fully initialized. If the handling code does block on a synchronization object, the thread will be fully initialized. So ithr is the count of all of those interrupts that blocked on some synchronization object while being handled and for which a kernel thread was fully initialized. Chad _______________________________________________ perf-discuss mailing list perf-discuss@opensolaris.org