Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 15 Nov 2002 13:06:01 -0500 (EST)
From:      Andrew Gallatin <gallatin@cs.duke.edu>
To:        Petri Helenius <pete@he.iki.fi>
Cc:        freebsd-net@freebsd.org
Subject:   Re: em0 under CURRENT
Message-ID:  <15829.14217.577949.84752@grasshopper.cs.duke.edu>
In-Reply-To: <3DD29165.8010904@he.iki.fi>
References:  <3DD29165.8010904@he.iki.fi>

next in thread | previous in thread | raw e-mail | index | archive | help

Petri Helenius writes:
 > options upped the performance to ~300Mbps:ish while 4.7-STABLE gives twice
 > that using the same application. The machine is 2.4GHz Dual P4.
 > 

Yes, -current is much, much slower for networking than -STABLE.  This
is because at this point, network drivers have paid all the cost for
medium-grained locking (interrupts as kernel threads, mutexes all over
the place, etc), but network drivers cannot take advantage of any of
this yet.

I think the last bottleneck to get network drivers out from under
Giant is the VM system.  Currently, when a network driver allocates an
mbuf or mbuf cluster, it must hold Giant.  This is because the mbuf
allocator may need to call into the VM system to allocate more memory.
If this could be solved (via either bringing the VM system out from
under Giant, or by having some sort of thread to handle mbuf
allocations asynchronously in a different context), I think -current
would be almost as fast as -stable for networking.

FWIW, I see 1875Mb/sec on 4.5-STABLE and 1200Mb/sec on -current 
with my Myrinet GM driver on Dual 1GHz PIIIs.  This is with
zero-copy sends enabled on -current.   Since P4's have gobs of memory
bandwidth, I doubt zero-copy sends would help you very much.

Drew

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15829.14217.577949.84752>