CPU underload

Adrian Chadd adrian.chadd at gmail.com
Sat Oct 31 12:52:18 UTC 2015


hi,

there's a mips callchain kernel option. Sorry, I'm on my mac atm so I
can't tell you. look in sys/conf/options for callchain, callgraph,
etc. It's a build option.

Just rebuild your kernel with that and check.

I haven't tried with fastforward. What else are you doing? pf? ipfw?




-adrian


On 31 October 2015 at 04:56, Eugene Grosbein <eugen at grosbein.net> wrote:
> On 31.10.2015 15:48, Eugene Grosbein wrote:
>> 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:
>
> [skip]
>
>> And why so heavy usage of _libmd_SHA256_Transf ?
>
> Well, it seems to be kern.random.harvest is guity for SHA256 abuse.
> I've set sysctl kern.random.harvest.mask=0 and now it' gone:
>
> PMC: [INSTR_EXECUTED] Samples: 7490 (100.0%) , 0 unresolved
>
> %SAMP IMAGE      FUNCTION             CALLERS
>   4.6 kernel     ip_fastforward
>   4.5 kernel     memcpy
>   4.4 kernel     DELAY
>   3.9 kernel     arge_start_locked
>   3.8 kernel     _bus_dmamap_load_buf
>   3.2 kernel     ether_nh_input
>   3.1 kernel     if_inc_counter
>   3.0 kernel     arge_intr
>   3.0 kernel     ether_output
>   2.9 kernel     _bus_dmamap_sync
>   2.6 kernel     bzero
>   2.6 kernel     critical_enter
>   2.4 kernel     critical_exit
>   2.3 kernel     bus_dmamap_sync_buf
>   2.2 kernel     _rw_runlock_cookie
>   2.1 kernel     rn_match
>   1.9 kernel     __rw_rlock
>   1.7 kernel     netisr_dispatch_src
>   1.5 kernel     spinlock_exit
>   1.5 kernel     uma_zalloc_arg
>   1.5 kernel     generic_bs_barrier
>   1.4 kernel     _bus_dmamap_load_mbu
>   1.4 kernel     arge_newbuf
>   1.4 kernel     _rm_rlock
>   1.4 kernel     m_adj
>   1.4 libpmc.so. pmclog_read
>   1.4 kernel     mipsNN_pdcache_wb_ra
>   1.4 kernel     arpresolve
>   1.3 kernel     bcmp
>   1.3 kernel     ether_demux
>   1.3 kernel     mipsNN_pdcache_inv_r
>   1.3 kernel     _bus_dmamap_unload
>   1.2 kernel     uma_zfree_arg
>   1.2 kernel     if_transmit
>   1.2 kernel     bus_dmamap_load_mbuf
>   1.1 kernel     _rm_runlock
>   1.0 kernel     rtfree
> CONVERSION STATISTICS:oc1_fib
>  #exec/elf                                1
>  #samples/total                           102761
>  #samples/unknown-function                2939
>  #callchain/dubious-frames                23
>
> Still too many of DELAYs.
>
> _______________________________________________
> freebsd-mips at freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-mips
> To unsubscribe, send any mail to "freebsd-mips-unsubscribe at freebsd.org"


More information about the freebsd-mips mailing list