Subject: Re: de0 on 164LX gives poor throughput
To: Paul H. Anderson <pha@pdq.com>
From: Hal Murray <murray@pa.dec.com>
List: port-alpha
Date: 04/09/1999 14:49:13
> TCP streams via FTP seem FUBAR.  In pretty much any combination that we've
> tried, an alpha talking to an alpha gives about 50-100KBytes/second
> throughput - about 1/100 of what it should.  Same HW ifconfig'd to 10baseT
> gives 1MB/sec, i.e. full 10baseT throughput.

> The same x86 when talking to an alpha on the same 100baseT switch 
> gives 6.5 MB/second.

I think the "switch" in there is the critical piece of info. 

I'm pretty sure there is a bug in the Tulip driver such that 100 
megabits at full duplex doesn't work.  100/half works fine for me 
(on Miatas). 

I've seen the same problems on Miata.  We've also seen it on Intel 
boxes running FreeBSD which uses the same driver. 

I haven't looked at the driver.  One of our guys spent several days 
trying to track this down (on FreeBSD/Intel).  He couldn't find anything 
wrong. 

I suggest you try half duplex. 

------

> All of the machines report:
> de0: abnormal interrupt: transmit underflow (raising TX threshold to 96|256)
> de0: abnormal interrupt: transmit underflow (raising TX threshold to 128|512)
> de0: abnormal interrupt: transmit underflow (raising TX threshold to 160|1024)

I think those are "normal".

The transmit side of the Tulip will start sending bits out the wire 
before it has DMAed the whole packet into the FIFO.  That's OK as 
long as the DMA machine goes fast enough. 

There is a knob on how full the FIFO has to get before it starts 
transmitting.  If the driver gets an underrun error (DMA not fast 
enough), it kicks the knob up to the next step. 

[I might be missing something important here. I haven't read the 
chip specs carefully or looked at the driver.  I have run a lot of 
tests.]