lkml.org 
[lkml]   [2008]   [Mar]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [RFC,PATCH] loopback: calls netif_receive_skb() instead of netif_rx()
From
From: Ingo Molnar <mingo@elte.hu>
Date: Mon, 31 Mar 2008 12:44:03 +0200

> and it's not just about scalability, the plain algorithmic overhead is
> way too high as well:
>
> $ taskset 1 ./bw_tcp -s
> $ taskset 1 ./bw_tcp localhost
> Socket bandwidth using localhost: 2607.09 MB/sec
> $ taskset 1 ./bw_pipe
> Pipe bandwidth: 3680.44 MB/sec

Set your loopback MTU to some larger value if this result and
the locking overhead upsets you.

Also, woe be to the application that wants fast local interprocess
communication and doesn't use IPC_SHM, MAP_SHARED, pipes, or AF_UNIX
sockets. (there's not just one better facility, there are _four_!)

From this perspective, people way-overemphasize loopback performance,
and 999 times out of 1000 they prove their points using synthetic
benchmarks.

And don't give me this garbage about the application wanting to be
generic and therefore use IP sockets for everything. Either they want
to be generic, or they want the absolute best performance. Trying
to get an "or" and have both at the same time will result in
ludicrious hacks ending up in the kernel.


\
 
 \ /
  Last update: 2008-03-31 13:05    [W:0.102 / U:0.632 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site