Re: shark and kernel/driver profiling
Re: shark and kernel/driver profiling
- Subject: Re: shark and kernel/driver profiling
- From: Michael Smith <email@hidden>
- Date: Fri, 23 Feb 2007 13:05:38 -0800
On Feb 23, 2007, at 12:10 PM, Andrew Gallatin wrote:
I was doing some profiling of my 10GbE driver on a MacPro (dual x2
2.66GHz, 10.4.8), and according to iostat, the load on the system is
53% when receiving traffic. Using 'shark -i' from the command line, I
created a time profile. According to this profile, the system is
spending:
<....>
- 1.3% m_freem_list (mach_kernel)
- 1.3% lck_mtx_lock (mach_kernel)
- 1.6% soreceive (mach_kernel)
- 1.6% sbtoxsockbuf (mach_kernel)
- 2.2% 0x2c75e000 [unreadable] (com.myricom.driver.myri10ge)
- 5.0% 0x2c75f000 [unreadable] (com.myricom.driver.myri10ge)
- 6.7% m_getpacket (mach_kernel)
- 18.4% copyout_kern (mach_kernel)
- 22.3% ml_set_interrupts_enabled (mach_kernel)
- 29.9% 0x24730000 [unreadable]
(com.apple.driver.AppleIntelCPUPowerManagement)
I have a few questions:
1: What is com.apple.driver.AppleIntelCPUPowerManagement doing that is
taking up 30% of the time? Is this another term for "idle"?
If I click on it in the gui, it seems to be called by
machine_idle_cstate.
Yes. It's a fancy (pluggable) version of asm("hlt") that lets the
system do (potentially) smarter things on a per-platform basis.
2: Similarly for ml_set_interrupts_enabled..
The statistical profiling interrupt is maskable. If it fires while
interrupts are masked, the interrupt is taken when interrupts are
unmasked. Yes, that's not very helpful, I know.
= Mike
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Darwin-kernel mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden