Re: [Bug #11308] tbench regression on each kernel release from 2.6.22 -> 2.6.28

Eric Dumazet
2008-11-21T08:51:32Z

Ingo Molnar a écrit :
> * Christoph Lameter <cl-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org> wrote:
>
>> hmmm... Well we are almost there.
>>
>> 2.6.22:
>>
>> Throughput 2526.15 MB/sec 8 procs
>>
>> 2.6.28-rc5:
>>
>> Throughput 2486.2 MB/sec 8 procs
>>
>> 8p Dell 1950 and the number of processors specified on the tbench
>> command line.
>
> And with net-next we might even be able to get past that magic limit?
> net-next is linus-latest plus the latest and greatest networking bits:
>
> $ cat .git/config
>
> [remote "net-next"]
> url = git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6.git
> fetch = +refs/heads/*:refs/remotes/net-next/*
>
> ... so might be worth a test. Just to satisfy our curiosity and to
> possibly close the entry :-)
>

Well, bits in net-next are new stuff for 2.6.29, not really regression fixes,
but yes, they should give nice tbench speedups.

Now, I wish sockets and pipes not going through dcache, not tbench affair
of course but real workloads...

running 8 processes on a 8 way machine doing a

for (;;)
close(socket(AF_INET, SOCK_STREAM, 0));

is slow as hell, we hit so many contended cache lines ...

ticket spin locks are slower in this case (dcache_lock for example
is taken twice when we allocate a socket(), once in d_alloc(), another one
in d_instantiate())