CPU underload
Eugene Grosbein
eugen at grosbein.net
Sat Oct 31 08:48:56 UTC 2015
Hi!
I'm trying to get familiar with PMC and uncover reason of MIPS32
CPU being underloaded - about 50% - while performing traffic forwarding.
It seems, kernel code abuses DELAY function as "pmcstat -S instructions -T" shows:
%SAMP IMAGE FUNCTION CALLERS
6.3 kernel spinlock_exit
5.3 kernel ip_fastforward
4.4 kernel memcpy
4.2 kernel _libmd_SHA256_Transf
3.3 kernel _bus_dmamap_load_buf
3.3 kernel DELAY
3.3 kernel arge_start_locked
3.1 kernel bzero
3.0 kernel arge_intr
2.8 kernel _bus_dmamap_sync
2.8 kernel ether_nh_input
2.6 kernel ether_output
2.5 kernel if_inc_counter
2.3 kernel critical_enter
2.2 kernel bus_dmamap_sync_buf
2.0 kernel critical_exit
1.8 kernel _rw_runlock_cookie
1.7 kernel __rw_rlock
1.6 kernel rn_match
1.5 kernel mipsNN_pdcache_inv_r
1.5 kernel _rm_rlock
1.4 kernel _bus_dmamap_load_mbu
1.4 kernel m_adj
1.3 kernel arge_newbuf
1.3 kernel mipsNN_pdcache_wb_ra
1.3 kernel bcmp
1.2 kernel _bus_dmamap_unload
1.2 kernel uma_zfree_arg
1.2 libpmc.so. pmclog_read
1.2 kernel if_transmit
1.1 kernel arpresolve
1.1 kernel arge_start
1.0 kernel netisr_dispatch_src
1.0 kernel ether_demux
0.9 kernel _rm_runlock
0.9 kernel uma_zalloc_arg
0.9 kernel generic_bs_barrier
CONVERSION STATISTICS:input
#samples/total 75152
#samples/unknown-function 2180
And why so heavy usage of _libmd_SHA256_Transf ?
More information about the freebsd-mips
mailing list