Re: 0% cpu usasge after fresh boot or net restart but 10% CPU if kernel flush route cache

cold cold
2010-01-28T16:26:52Z

On Thu, Jan 28, 2010 at 6:09 PM, Eric Dumazet <eric.dumazet@gmail.com> wrote:
> Le jeudi 28 janvier 2010 à 11:14 +0200, cold cold a écrit :
>
>>
>> RX Kpps : 57 TX Kpps : 53  RX Kbits : 331184 TX Kbits : 306213
>> RX Kpps : 59 TX Kpps : 54  RX Kbits : 345517 TX Kbits : 304323
>> RX Kpps : 56 TX Kpps : 52  RX Kbits : 331418 TX Kbits : 296032
>> RX Kpps : 60 TX Kpps : 54  RX Kbits : 362007 TX Kbits : 297371
>> RX Kpps : 59 TX Kpps : 52  RX Kbits : 360455 TX Kbits : 280603
>>
>>
>> ON  one cpu, gc_interval to 1, gc_elasticity 2
>>
>> Cpu0  :  0.0%us,  0.0%sy,  0.0%ni, 72.0%id,  0.0%wa,  8.3%hi, 19.7%si,  0.0%st
>> Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
>> Cpu2  :  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
>> Cpu3  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
>>
>> ------------------------------------------------------------------------------
>>    PerfTop:   17064 irqs/sec  kernel:98.0% [100000 cycles],  (all, 4 CPUs)
>> ------------------------------------------------------------------------------
>>
>>              samples    pcnt   kernel function
>>              _______   _____   _______________
>>
>>             40388.00 - 27.8% : acpi_idle_do_entry
>>             24651.00 - 17.0% : read_hpet
>>              4271.00 -  2.9% : _spin_lock
>>              3388.00 -  2.3% : pskb_expand_head
>>              3288.00 -  2.3% : igb_poll [igb]
>>              3246.00 -  2.2% : irq_entries_start
>>              2868.00 -  2.0% : dev_gro_receive
>>              2665.00 -  1.8% : igb_xmit_frame_adv       [igb]
>>              2513.00 -  1.7% : ip_route_input
>>              2144.00 -  1.5% : igb_clean_tx_irq [igb]
>>              1842.00 -  1.3% : __slab_free
>>              1544.00 -  1.1% : dev_queue_xmit
>>              1423.00 -  1.0% : igb_msix_rx      [igb]
>>              1353.00 -  0.9% : __alloc_skb
>>              1285.00 -  0.9% : eth_type_trans
>> --
>
> All this seems pretty normal profile (regarding networking functions),
> your machine should scale without problem.
>
> Of course, the two first functions (acpi_idle_do_entry() & read_hpet())
> look suspicious but I have no idea why.
>

i make with flushing without gc on 2 cpu 2 time more traffic and CPU
usage about 5 times less

top - 11:22:04 up 6:45, 5 users, load average: 0.00, 0.10, 0.25
Tasks: 84 total, 1 running, 83 sleeping, 0 stopped, 0 zombie
Cpu0 : 0.0%us, 0.3%sy, 0.0%ni, 94.0%id, 0.0%wa, 1.7%hi, 4.0%si, 0.0%st
Cpu1 : 0.3%us, 0.0%sy, 0.0%ni, 97.7%id, 0.0%wa, 0.7%hi, 1.3%si, 0.0%st
Cpu2 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Cpu3 : 0.0%us, 0.0%sy, 0.0%ni,100.0%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st

RX Kpps : 90 TX Kpps : 75 RX Kbits : 582791 TX Kbits : 413873
RX Kpps : 87 TX Kpps : 74 RX Kbits : 546327 TX Kbits : 415852
RX Kpps : 87 TX Kpps : 74 RX Kbits : 544820 TX Kbits : 418339
RX Kpps : 88 TX Kpps : 73 RX Kbits : 569143 TX Kbits : 406438