On Tue, Jan 28, 2014 at 04:14:12PM +0800, Qin Chuanyu wrote:
> according perf test result,I found that there are 5%-8% cpu cost on
> softirq by use netif_rx_ni called in tun_get_user.
> 
> so I changed the function which cause skb transmitted more quickly.
> from
>       tun_get_user    ->
>                netif_rx_ni(skb);
> to
>       tun_get_user    ->
>               rcu_read_lock_bh();
>               netif_receive_skb(skb);
>               rcu_read_unlock_bh();
> 
> The test result is as below:
>       CPU: Intel(R) Xeon(R) CPU E5620  @ 2.40GHz
>       NIC: intel 82599
>       Host OS/Guest OS:suse11sp3
>       Qemu-1.6
>       netperf udp 512(VM tx)
>       test model: VM->host->host
> 
>       modified before : 2.00Gbps 461146pps
>       modified after  : 2.16Gbps 498782pps
> 
> 8% performance gained from this change,
> Is there any problem for this patch ?

I think it's okay - IIUC this way we are processing xmit directly
instead of going through softirq.
Was meaning to try this - I'm glad you are looking into this.

Could you please check latency results?


-- 
MST
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to