From owner-freebsd-hackers Sat Jun 15 03:52:15 1996 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.7.5/8.7.3) id DAA15933 for hackers-outgoing; Sat, 15 Jun 1996 03:52:15 -0700 (PDT) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.7.5/8.7.3) with SMTP id DAA15926 for ; Sat, 15 Jun 1996 03:52:04 -0700 (PDT) Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.12/8.6.9) id UAA08350; Sat, 15 Jun 1996 20:50:07 +1000 Date: Sat, 15 Jun 1996 20:50:07 +1000 From: Bruce Evans Message-Id: <199606151050.UAA08350@godzilla.zeta.org.au> To: helg@tav.kiev.ua, tam@cd.iidpwr.com Subject: Re: Digiboard Cc: hackers@freebsd.org Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk >Main benefit of intelligent Digi is that it does not load your main CPU >as much, as board with many 16450 chips. As a result, your box can handle >more incoming connections simultaneously at higher speeds. To receive a byte >from 16450 chip you need to service one interrupt request. Typical >computer can handle about 10K serial interrups per second = 80000 bps total - >on all ports (hackers, please, correct me if I'm wrong). What's a typical computer? :-) A 486/33 running FreeBSD can handle about 50K 16450-serial interrupts/second in raw mode = slightly more than 4 * 115200 bps total = slightly more than 2 lines at 115200 bidirectional. 2 lines at 115200 or 8 lines at 28800 (average) is a reasonable practical limit, since 4 lines at 115200 might take all the cpu. Cooked mode input has a much higher overhead (5-10 times, so 0 lines at 115200 is a reasonable practical limit :-). A 386/20 can handle about 20K 16450-serial interrupts/second. 16550 UARTs reduce interrupts by a factor of 15. They only reduce the total overhead by a factor of about 3 on a 486/33, because i/o and software overheads are quite large. The reduction is a smaller factor on slower machines and a larger factor on faster machines. On very fast machines, the overhead is dominated by i/o overhead. Bruce