Path: utzoo!utgpu!watmath!att!ima!esegue!johnl From: johnl@esegue.segue.boston.ma.us (John R. Levine) Newsgroups: comp.unix.i386 Subject: Re: ESIX woes. (serial performance) Keywords: HDB TCP/IP Message-ID: <1989Nov16.172702.7229@esegue.segue.boston.ma.us> Date: 16 Nov 89 17:27:02 GMT References: <612@aablue.UUCP> <6965@ficc.uu.net> <1989Nov15.133059.3330@virtech.uucp> <862@pmafire.UUCP> Reply-To: johnl@esegue.segue.boston.ma.us (John R. Levine) Organization: Segue Software, Cambridge MA Lines: 29 In article <862@pmafire.UUCP> dave@pmafire.UUCP (Dave Remien) writes: >[many people report lousy serial performance on various 386 unices] >I'm running Bell Tech 3.2 (NOT 3.2u, I'm waiting for that) with Lachman >TCP/IP, NFS, X and both a regular serial port and a Bell Tech ACE card; >I have yet to see any slowdown yet that can't be attributed to a 16MHz >'386 and only 4 megs of RAM. I've got an ENET586 card, for what it's >worth. It depends mostly on the controller chip in your serial card. The problem is that the 386 doesn't really support priority interrupts. (There is a global suppress interrupt bit, the priority business on the 8259 only applies when several interrupt requests arrive at once.) Too many device drivers disable interrupts while doing non-trivial processing, so that if you're trying to run at 19.2K and interrupts are off for 500us or more, you lose. If you can replace your serial chip with a 16550, there are several serial drivers that turn on the silo in the 16550, greatly relaxing the interrupt response required. The 386/ix X5 update driver does this, as does the free JJM driver that's been passed around. The right solution would be to be more disciplined about driver interrupt handling, and to put in a kernel mechanism to let drivers schedule work "later", meaning not at interrupt level but before returning to the mainline user or kernel process. I expect that's what Venix does, but don't hold your breath waiting for the regular Unix vendors to do it -- it'd be a lot of work. -- John R. Levine, Segue Software, POB 349, Cambridge MA 02238, +1 617 864 9650 johnl@esegue.segue.boston.ma.us, {ima|lotus|spdcc}!esegue!johnl "Now, we are all jelly doughnuts."