Jargon file v2.1.5 28 NOV 1990 -- part 5 of 6

John Burton jcburt at ipsun.larc.nasa.gov
Thu Dec 6 01:44:45 AEST 1990


In article <PCG.90Dec4160737 at odin.cs.aber.ac.uk> pcg at cs.aber.ac.uk (Piercarlo Grandi) writes:
[...]
>pst> You're comparing CPU performance to I/O performance. [ ... ] Back
>pst> when there were REAL(tm) computers like 780, a lot of time and
>pst> energy went into designing efficient I/O from the CPU bus to the
>pst> electrons going to the disk or tty. [ ... ] Sure OS's and apps have
>pst> gotten bloated, but when you put a chip like the MIPS R3000 on a
>pst> machine barely more advanced than an IBM-AT you end up with a toy
>pst> that can think fast but can't do anything.
>
>No, no, no, no, no, no, no. The IO bandwidth of a typical 386 is
>equivalent or better than that of any UNIBUS based machine, and, in
>practical terms, equivalent to that of MASSBUS based ones. You can get
>observable raw disc data rates of 600-900KB/s and observable filesystem
>bandwidths of 300-500KB/s under SVR3.2 (with suitable controllers and a
>FFS of some sort). This is way better than a PDP-11.
>
True, a typical 386 machine has good I/O bandwidth, but bandwidth isn't
everything. The majority of 386 machines have an ISA bus which is a 
very simple bus controlled by the cpu. When performing I/O, the
cpu blocks itself and  turns control of the bus to the I/O device.
When the I/O operation is complete, control returns to the cpu, which
unblocks itself. What this means is that any I/O severly impacts
the apparent system response. As a single user system, the typical 
386 machine is just fine. A typical multi-user, virtual memory system
(UNIX) requires a significantly greater amount of I/O than a single user
system.

Machines that were originally designed as a multi-user platform usually
where set up so that the I/O could be performed without the direct control
(or blocking) of the cpu. The system bus was designed so that multiple
operations could occur more or less independent of the cpu (multi-tasking
hardware design). The typical 386 machine is designed as a single tasking
machine (regardless of what the cpu can do, the bus & support hardware
was designed for single tasking). 

If you are planning on using a 386 machine as a multi-user platform, you
might want to consider an EISA or an MicroChannel based system as
opposed to an ISA based system. EISA & MicroChannel at least have some
provisions for multi-tasking operations.

Hope this helps some.

John Burton



More information about the Comp.unix.internals mailing list