From: Daniel Borkmann <dborkman@redhat.com>
To: Eric Dumazet <eric.dumazet@gmail.com>
Cc: davem@davemloft.net, netdev@vger.kernel.org,
Jesper Dangaard Brouer <brouer@redhat.com>
Subject: Re: [PATCH net-next] net: dummy: make use of multi-queues
Date: Thu, 27 Mar 2014 10:48:36 +0100 [thread overview]
Message-ID: <5333F3F4.3040708@redhat.com> (raw)
In-Reply-To: <1395888662.12610.278.camel@edumazet-glaptop2.roam.corp.google.com>
On 03/27/2014 03:51 AM, Eric Dumazet wrote:
> On Thu, 2014-03-27 at 01:37 +0100, Daniel Borkmann wrote:
>> Quite often it can be useful to just use the dummy device as a blackhole
>> sink for skbs, e.g. for packet sockets or pktgen tests. Therefore, make
>> use of multiqueues, so that we can simulate for that. trafgen mmap/TX_RING
>> example against dummy device with config foo: { fill(0xff, 64) } results
>> in the following performance improvements on an ordinary Core i7/2.80GHz
>> as we don't need to take a single queue/lock anymore:
>>
>> Before:
>>
>> Performance counter stats for 'trafgen -i foo -o du0 -n100000000' (10 runs):
>>
>> 160,975,944,159 instructions:k # 0.55 insns per cycle ( +- 0.09% )
>> 293,319,390,278 cycles:k # 0.000 GHz ( +- 0.35% )
>> 192,501,104 branch-misses:k ( +- 1.63% )
>> 831 context-switches:k ( +- 9.18% )
>> 7 cpu-migrations:k ( +- 7.40% )
>> 69,382 cache-misses:k # 0.010 % of all cache refs ( +- 2.18% )
>> 671,552,021 cache-references:k ( +- 1.29% )
>>
>> 22.856401569 seconds time elapsed ( +- 0.33% )
>>
>> After:
>>
>> Performance counter stats for 'trafgen -i foo -o du0 -n100000000' (10 runs):
>>
>> 138,669,108,882 instructions:k # 0.92 insns per cycle ( +- 0.02% )
>> 151,222,621,155 cycles:k # 0.000 GHz ( +- 0.11% )
>> 57,667,395 branch-misses:k ( +- 6.15% )
>> 400 context-switches:k ( +- 2.73% )
>> 6 cpu-migrations:k ( +- 7.51% )
>> 67,414 cache-misses:k # 0.075 % of all cache refs ( +- 1.64% )
>> 90,479,875 cache-references:k ( +- 0.75% )
>>
>> 12.080331543 seconds time elapsed ( +- 0.13% )
>
>
>
> Its a LLTX device, so it looks there is no bottleneck in this driver,
> but in the caller ;)
Ohh, I see the issue, thanks for pointing this out Eric.
I'll fix this up differently. ;-)
> If you need many channels, you can setup as many dummy devices you want.
next prev parent reply other threads:[~2014-03-27 9:48 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-03-27 0:37 [PATCH net-next] net: dummy: make use of multi-queues Daniel Borkmann
2014-03-27 2:51 ` Eric Dumazet
2014-03-27 9:48 ` Daniel Borkmann [this message]
2014-03-27 2:52 ` Eric Dumazet
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5333F3F4.3040708@redhat.com \
--to=dborkman@redhat.com \
--cc=brouer@redhat.com \
--cc=davem@davemloft.net \
--cc=eric.dumazet@gmail.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.