Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 03 Apr 1995 15:45:55 -0700
From:      David Greenman <davidg@Root.COM>
To:        Luigi Rizzo <luigi@labinfo.iet.unipi.it>
Cc:        hackers@FreeBSD.org
Subject:   Re: NE2000 Plus performance 
Message-ID:  <199504032246.PAA02907@corbin.Root.COM>
In-Reply-To: Your message of "Mon, 03 Apr 95 09:18:02 %2B0200." <199504030718.JAA09037@labinfo.iet.unipi.it> 

next in thread | previous in thread | raw e-mail | index | archive | help
>>    It's not supported. I didn't even know of the NE2000+ existence until you
>> mentioned here.
>
>Ok. A couple of questions about network ards and drivers, though:
>
>1) how much faster are memory-mapped cards wrt io-mapped ones ? Is it
>   just the clock cycle per word that you save in transferring data
>   with MOVSW instead of INSW, or there is more (e.g. the driver
>   does more or less random access to the board, thus has to waste
>   time specifying the address of the desired data quite often) ?

   SMC cards have shared memory that can be read and written at 4MB/sec. The
NE2000 style cards (using programmed I/O) transfer bytes at about 1.7MB/sec.
Thus when trying to do 1100KB/sec, the SMC cards take 25% of the CPU to
read/write the packet and the NE2000 cards take more than 60% of the CPU.

>2) not long ago,, if memory serves, it was mentioned that the
>   network drivers in freebsd use only one buffer for tx data, and
>   the rest of the memory for rx packets. If this is true, how can

   It isn't true for if_ed.c (the driver for the cards we're talking about).
It's also not true for most of the other supported cards. The 'ed' driver
uses a multi buffering scheme to transmit packets if the card has 16K or more
of memory...this includes SMC 16bit cards, NE2000's, and 16bit 3c503's.

-DG



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