From: Robert Olsson <Robert.Olsson@data.slu.se>
To: P@draigBrady.com
Cc: mellia@prezzemolo.polito.it, e1000-devel@lists.sourceforge.net,
Jorge Manuel Finochietto <jorge.finochietto@polito.it>,
Giulio Galante <galante@polito.it>,
netdev@oss.sgi.com
Subject: Re: [E1000-devel] Transmission limit
Date: Fri, 26 Nov 2004 16:40:04 +0100 [thread overview]
Message-ID: <16807.20052.569125.686158@robur.slu.se> (raw)
In-Reply-To: <41A73826.3000109@draigBrady.com>
P@draigBrady.com writes:
> I'm forwarding this to netdev, as these are very interesting
> results (even if I don't beleive them).
> I questioned whether you actually did receive at that rate to
> which you responded:
>
> > - using Click, we can receive 100% of (small) packets at gigabit
> > speed with TWO cards (2gigabit/s ~ 2.8Mpps)
> > - using linux and standard e1000 driver, we can receive up to about
> > 80% of traffic from a single nic (~1.1Mpps)
> > - using linux and a modified (simplified) version of the driver, we
> > can receive 100% on a single nic, but not 100% using two nics (up
> > to ~1.5Mpps).
> >
> > Reception means: receiving the packet up to the rx ring at the
> > kernel level, and then IMMEDIATELY drop it (no packet processing,
> > no forwarding, nothing more...)
In more detail please... The RX ring must be refilled? And HW DMA's
the to memory-buffer? But I assume data it not touched otherwise.
Touching the packet-data givs a major impact. See eth_type_trans
in all profiles.
So what forwarding numbers is seen?
> > But the limit in TRANSMISSION seems to be 700Kpps. Regardless of
> > - the traffic generator,
> > - the driver version,
> > - the O.S. (linux/click),
> > - the hardware (broadcom card have the same limit).
>
> >
> > - in transmission we CAN ONLY trasmit about 700.000 pkt/s when the
> > minimum sized packets are considered (64bytes long ethernet minumum
> > frame size). That is about HALF the maximum number of pkt/s considering
> > a gigabit link.
> >
> > What is weird, is that if we artificially "preload" the NIC tx-fifo with
> > packets, and then instruct it to start sending them, those are actually
> > transmitted AT WIRE SPEED!!
OK. Good to know about e1000. Networking is most DMA's and CPU is used
adminstating it this is the challange.
> > These results have been obtained considering different software
> > generators (namely, UDPGEN, PACKETGEN, Application level generators)
> > under LINUX (2.4.x, 2.6.x), and under CLICK (using a modified version of
> > UDPGEN).
We get a hundred kpps more...Turn off all mitigation so interrupts are
undelayed so TX ring can be filled as quick as possible.
Even you could try to fill TX as soon as the HW says there are available
buffers. This could even be done from TX-interrupt.
> > The hardware setup considers
> > - a 2.8GHz Xeon hardware
> > - PCI-X bus (133MHz/64bit)
> > - 1G of Ram
> > - Intel PRO 1000 MT single, double, and quad cards, integrated or on a
> > PCI slot.
> > Is there any limit on the PCI-X (or PCI) that can be the bottleneck?
> > Or Limit on the number of packets per second that can be stored in the
> > NIC tx-fifo?
> > May the lenght of the tx-fifo impact on this?
Small packet performance is dependent on low latency. Higher bus speed
gives shorter latency but also on higher speed buses there use to be
bridges that adds latency.
For packet generation we use still 866 MHz PIII:s and 82543GC on serverworks
64-bit board which are faster than most other systems. So for testing routing
performance in pps we have to use several flows. This gives the advantage to
test SMP/NUMA as well.
--ro
next prev parent reply other threads:[~2004-11-26 15:40 UTC|newest]
Thread overview: 85+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1101467291.24742.70.camel@mellia.lipar.polito.it>
2004-11-26 14:05 ` [E1000-devel] Transmission limit P
2004-11-26 15:31 ` Marco Mellia
2004-11-26 19:56 ` jamal
2004-11-29 14:21 ` Marco Mellia
2004-11-30 13:46 ` jamal
2004-12-02 17:24 ` Marco Mellia
2004-11-26 20:06 ` jamal
2004-11-26 20:56 ` Lennert Buytenhek
2004-11-26 21:02 ` Lennert Buytenhek
2004-11-27 9:25 ` Harald Welte
[not found] ` <20041127111101.GC23139@xi.wantstofly.org>
2004-11-27 11:31 ` Harald Welte
2004-11-27 20:12 ` Cesar Marcondes
2004-11-29 8:53 ` Marco Mellia
2004-11-29 14:50 ` Lennert Buytenhek
2004-11-30 8:42 ` Marco Mellia
2004-12-01 12:25 ` jamal
2004-12-02 13:39 ` Marco Mellia
2004-12-03 13:07 ` jamal
2004-11-26 15:40 ` Robert Olsson [this message]
2004-11-26 15:59 ` Marco Mellia
2004-11-26 16:57 ` P
2004-11-26 20:01 ` jamal
2004-11-29 10:19 ` P
2004-11-29 13:09 ` Robert Olsson
2004-11-29 20:16 ` David S. Miller
2004-12-01 16:47 ` Robert Olsson
2004-11-30 13:31 ` jamal
2004-11-30 13:46 ` Lennert Buytenhek
2004-11-30 14:25 ` jamal
2004-12-01 0:11 ` Lennert Buytenhek
2004-12-01 1:09 ` Scott Feldman
2004-12-01 15:34 ` Robert Olsson
2004-12-01 16:49 ` Scott Feldman
2004-12-01 17:37 ` Robert Olsson
2004-12-02 17:54 ` Robert Olsson
2004-12-02 18:23 ` Robert Olsson
2004-12-02 23:25 ` Lennert Buytenhek
2004-12-03 5:23 ` Scott Feldman
2004-12-10 16:24 ` Martin Josefsson
2004-12-01 18:29 ` Lennert Buytenhek
2004-12-01 21:35 ` Lennert Buytenhek
2004-12-02 6:13 ` Scott Feldman
2004-12-03 13:24 ` jamal
2004-12-05 14:50 ` 1.03Mpps on e1000 (was: Re: [E1000-devel] Transmission limit) Lennert Buytenhek
2004-12-05 15:03 ` Martin Josefsson
2004-12-05 15:15 ` Lennert Buytenhek
2004-12-05 15:19 ` Martin Josefsson
2004-12-05 15:30 ` Martin Josefsson
2004-12-05 17:00 ` Lennert Buytenhek
2004-12-05 17:11 ` Martin Josefsson
2004-12-05 17:38 ` Martin Josefsson
2004-12-05 18:14 ` Lennert Buytenhek
2004-12-05 15:42 ` Martin Josefsson
2004-12-05 16:48 ` Martin Josefsson
2004-12-05 17:01 ` Martin Josefsson
2004-12-05 17:58 ` Lennert Buytenhek
2004-12-05 17:44 ` Lennert Buytenhek
2004-12-05 17:51 ` Lennert Buytenhek
2004-12-05 17:54 ` Martin Josefsson
2004-12-06 11:32 ` 1.03Mpps on e1000 (was: " jamal
2004-12-06 12:11 ` Lennert Buytenhek
2004-12-06 12:20 ` jamal
2004-12-06 12:23 ` Lennert Buytenhek
2004-12-06 12:30 ` Martin Josefsson
2004-12-06 13:11 ` jamal
[not found] ` <20041206132907.GA13411@xi.wantstofly.org>
[not found] ` <16820.37049.396306.295878@robur.slu.se>
2004-12-06 17:32 ` 1.03Mpps on e1000 (was: Re: [E1000-devel] " P
2004-12-08 23:36 ` Ray Lehtiniemi
[not found] ` <41B825A5.2000009@draigBrady.com>
[not found] ` <20041209161825.GA32454@mail.com>
2004-12-09 17:12 ` 1.03Mpps on e1000 P
[not found] ` <20041209164820.GB32454@mail.com>
2004-12-09 17:19 ` P
2004-12-09 23:25 ` Ray Lehtiniemi
2004-12-05 21:12 ` 1.03Mpps on e1000 (was: Re: [E1000-devel] Transmission limit) Scott Feldman
2004-12-05 21:25 ` Lennert Buytenhek
2004-12-06 1:23 ` 1.03Mpps on e1000 (was: " Scott Feldman
2004-12-02 17:31 ` [E1000-devel] Transmission limit Marco Mellia
2004-12-03 20:57 ` Lennert Buytenhek
2004-12-04 10:36 ` Lennert Buytenhek
2004-12-01 12:08 ` jamal
2004-12-01 15:24 ` Lennert Buytenhek
2004-11-26 17:58 ` Robert Olsson
2004-11-27 20:00 ` Lennert Buytenhek
2004-11-29 12:44 ` Marco Mellia
2004-11-29 15:19 ` Lennert Buytenhek
2004-11-29 17:32 ` Marco Mellia
2004-11-29 19:08 ` Lennert Buytenhek
2004-11-29 19:09 ` Lennert Buytenhek
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=16807.20052.569125.686158@robur.slu.se \
--to=robert.olsson@data.slu.se \
--cc=P@draigBrady.com \
--cc=e1000-devel@lists.sourceforge.net \
--cc=galante@polito.it \
--cc=jorge.finochietto@polito.it \
--cc=mellia@prezzemolo.polito.it \
--cc=netdev@oss.sgi.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).