I did some profiling on -CURRENT from a few days back, and I think I haven�t
figured the new tunables out or the code is not doing what it�s supposed to
or I�m asking more than it is supposed to do but it seems that mb_free
is being quite wasteful...
Any pointers to how the new high/low watermark tunables should be used?
Is it normal that after almost all traffic has been stopped there is still 8k+
mbufs in "cache"?
Pete
granularity: each sample hit covers 16 byte(s) for 0.00% of 708.90 seconds
% cumulative self self total
time seconds seconds calls ms/call ms/call name
18.9 134.04 134.04 778488459 0.00 0.00 mb_free [5]
10.0 204.99 70.95 290131104 0.00 0.00 ether_input [8]
9.0 268.46 63.47 __mcount [9]
6.3 313.42 44.96 198223061 0.00 0.00 m_move_pkthdr [15]
5.1 349.68 36.27 18238430 0.00 0.02 em_intr [2]
5.0 385.09 35.41 778488459 0.00 0.00 mb_alloc [17]
4.8 418.87 33.77 198510151 0.00 0.00 generic_bcopy [18]
4.5 450.64 31.77 2341 13.57 63.33 m_freem [4]
4.1 479.81 29.17 967684 0.03 0.03 call_fast_unpend [20]
3.5 504.53 24.72 17641942 0.00 0.01 em_process_receive_interru
pts [3]
1.8 517.26 12.73 m_pullup [6]
1.6 528.51 11.25 290131104 0.00 0.00 em_get_buf [10]
mbuf usage:
GEN cache: 56/256 (in use/in pool)
CPU #0 cache: 8138/12064 (in use/in pool)
Total: 8194/12320 (in use/in pool)
Mbuf cache high watermark: 4096
Mbuf cache low watermark: 128
Maximum possible: 51200
Allocated mbuf types:
8194 mbufs allocated to data
24% of mbuf map consumed
mbuf cluster usage:
GEN cache: 4/16 (in use/in pool)
CPU #0 cache: 8188/12280 (in use/in pool)
Total: 8192/12296 (in use/in pool)
Cluster cache high watermark: 4096
Cluster cache low watermark: 16
Maximum possible: 25600
48% of cluster map consumed
27672 KBytes of wired memory reserved (66% in use)
0 requests for memory denied
0 requests for memory delayed
0 calls to protocol drain routines
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message