Date: Thu, 4 Jul 1996 06:47:36 +1000 From: Bruce Evans <bde@zeta.org.au> To: msmith@atrad.adelaide.edu.au, stesin@elvisti.kiev.ua Cc: hardware@freebsd.org Subject: Re: muliport boards - building a PPP dialup server Message-ID: <199607032047.GAA15967@godzilla.zeta.org.au>
next in thread | raw e-mail | index | archive | help
># > 1. tty-level driver overhead, that's what I'm watching ># > now with 16 FIFOed ports in 486dx4/100 -- interrupt ># > load is tiny, and most of CPU is eaten by system. ># > "Smart" card with it's own CPU (I treat it like ># > an I/O co-processor) should minimize this factor. (?) ># ># No. None of the 'smart' cards currently around perform any tty processing. > Won't tty-level overhead decrease when the data flow through a port > will be going in bigger chunks? Only if 'smart' actually means 'fast' :-). 16550 output already has a chunk size of 16 bytes. Since 8-bit ISA I/O is so slow, this size is large enough to get most of the benefits of chunking. 16550 input is about twice as slow (on >= 486's) as 16550 output because the status register has to be read for every byte of input. The input chunk size is large enough for the UART interface to become the bottleneck. ># > 2. ISA bus itself, no matter what will I put into it. ># > ... Yes, probably I'm ># > wrong and ISA can deal i.e. with 32x115200; but how ># > reliable will this configuration be? ># ># This is a significant issue. 32x115200 is ~350K/sec. presuming 100% ># efficiency. IIRC, Bruce quoted more like 50%, so the ISA bus would be You forgot output. 32x115200bps is ~700K/sec. 16 ports is already 350K/sec. This will take about 80% of the CPU for ISA I/O alone (assuming 16550s and 2 I/O's per byte). Bruce
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199607032047.GAA15967>