polling for sio?
Louis A. Mamakos
louie at TransSys.COM
Fri Apr 9 11:02:03 PDT 2004
> On Thu, Apr 08, 2004 at 12:34:43PM -0600, M. Warner Losh wrote:
> > In message: <20040408024455.GC20138 at dhcp01.pn.xcllnt.net>
> > Marcel Moolenaar <marcel at xcllnt.net> writes:
> > : On Wed, Apr 07, 2004 at 03:36:02PM -0700, othermark wrote:
> > : > I have a multi-port PCI card under puc and sio that has 4 19200
> > : > connections to it now, and when data is streaming across all of
> > : > them at once, I get several silo overflows. Would it be better
> > : > to run this under puc + uart?
> > :
> > : Not really. The problem is that puc(4) iterates over all ports in
> > : the same way whether you use uart(4) or sio(4). So, puc(4) is
> > : the problem more that sio(4) or uart(4). However, uart(4) has the
> > : beginnings of an interface that puc(4) could use to figure out
> > : which UART needs attention without actually calling the interrupt
> > : routine for each of them.
> >
> > Yes, but at 19200 baud, his problems likely aren't related to the
> > iteration. They are likely related to the fact that he said his
> > interrupt is shared and therefore not fast. We have horrible
> > interrupt latency in current when you want to get to the FIFOs of
> > UARTs quickly :-(.
>
> Those cards are just what they are - cheap.
> They have very small FIFOs and they don't use DMA.
> IRQ sharing makes them even worse than traditional ISA stuff.
> My advise for cost efficient and fast serials is getting USB ones.
> Even noname USB serials do much better then puc(4) based.
> E.g. the FT232BM (uftdi(4)) has 128 bytes send and 384 bytes receive
> buffer plus your USB controller does DMA.
> At best you would add a cheap OHCI card if your onboard USB is UHCI
> based as OHCI is less CPU intensive.
I used to use 9600 bps serial links on LSI-11/23 systems 20 years ago
to run SLIP over. This was with dumb DL-11 serial adapters on way
slower CPUs and busses than we have today. The difference was a
much lower interrupt latency. You'd think that running serial links
10 times faster on CPUs that are a few hundred times faster wouldn't
be too hard.
louie
More information about the freebsd-hackers
mailing list