From owner-freebsd-hackers@FreeBSD.ORG Fri Apr 9 11:02:03 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 0AD1E16A4CE for ; Fri, 9 Apr 2004 11:02:03 -0700 (PDT) Received: from whizzo.transsys.com (whizzo.TransSys.COM [144.202.42.10]) by mx1.FreeBSD.org (Postfix) with ESMTP id A743D43D54 for ; Fri, 9 Apr 2004 11:02:02 -0700 (PDT) (envelope-from louie@whizzo.transsys.com) Received: from whizzo.transsys.com (#6@localhost [127.0.0.1]) by whizzo.transsys.com (8.12.11/8.12.11) with ESMTP id i39I1uUQ039151; Fri, 9 Apr 2004 14:01:56 -0400 (EDT) (envelope-from louie@whizzo.transsys.com) Message-Id: <200404091801.i39I1uUQ039151@whizzo.transsys.com> X-Mailer: exmh version 2.6.3 04/04/2003 with nmh-1.0.4 To: ticso@cicely.de Organization: Serendipity Scheduling & Management X-Image-URL: http://www.transsys.com/louie/images/louie-mail.jpg From: "Louis A. Mamakos" References: <20040407170422.GF567@funkthat.com> <20040408024455.GC20138@dhcp01.pn.xcllnt.net> <20040408.123443.101835222.imp@bsdimp.com> <20040409113021.GK5279@cicely12.cicely.de> In-reply-to: Your message of "Fri, 09 Apr 2004 13:30:22 +0200." <20040409113021.GK5279@cicely12.cicely.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 09 Apr 2004 14:01:56 -0400 Sender: louie@TransSys.COM cc: freebsd-hackers@freebsd.org cc: atkin901@yahoo.com cc: marcel@xcllnt.net Subject: Re: polling for sio? X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 09 Apr 2004 18:02:03 -0000 > On Thu, Apr 08, 2004 at 12:34:43PM -0600, M. Warner Losh wrote: > > In message: <20040408024455.GC20138@dhcp01.pn.xcllnt.net> > > Marcel Moolenaar 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