Article View: comp.arch
Article #2148PC vs. mainframe I/O (Re: SCSI on steroids)
From: Cliff C Heyer
Date: Fri, 08 Sep 1989 01:14
Date: Fri, 08 Sep 1989 01:14
261 lines
11290 bytes
11290 bytes
Feel free to ax the following. I'm not pretending
to be an IBM expert! I've tried to summarize what
I've learned over the years....using non-IBM
terminology. Also don't think I'm biased for only
mentioning DEC. I'm too lazy to research other
hardware just for this article!
Lawrence Butcher initially stated:
>The biggest, fastest business computers seem to
>run 1960's operating systems without protection,
>and allow user programs to do I/O without OS
>assistance.
First of all, lets understand what we are
comparing: "server/IPCF" vs. "timesharing"
architecture. "1960's operating systems" were
optimized for a specific need. A UNIX-type OS is
optimized for a different need.
Yes, "1960's operating systems" do "manage" their
own DMA I/O in a sense. Users "share" one copy of
the screen control program in "core" and declare
chunks of memory ("queue", global section w/AST in
VMS terms.) for communication with a "server" A
server process "sleeps" until a request comes in
it's queue("interrupt") for data (eg. airline
ticket key). The server collects up to 100 keys
from terminals, organizes them by disk drive and
disk address, and retrieves them in sequence (just
like the ladder algorithms in hard disk
controllers). Large segments of the database are
kept in memory on post-3033 hardware.
Remember 1960s computers had a *blazing* 1/2 MIPS
and about 500KB core. The timesharing architecture
where you set up a separate process for each user
("ticket clerk") simply wouldn't cut it. The
overhead was too high then, and it still is today.
Here's why:
1. Setting up a "user process" for each user
creates a vast amount of OS overhead compared with
using a simple control program which services TTY
queues in round-robin fashion. The "login" to the
OS which prompts & checks your password is off
loaded to communications processors OR is not used
due to direct leased-line connections. With
timesharing too many unnecessary resources are
needlessly duplicated for each user. Core & MIPS
used up too fast.
2. Timesharing OS "file channels" for each user
creates a vast amount of overhead compared with
communicating through memory with interrupts
(IPCF) with a server. With timesharing too many
resources are needlessly duplicated for each user.
3. Simultaneous update lock overhead vast compared
to server lock management. With timesharing too
many resources are needlessly duplicated for each
user.
4. Security. Maintaining user directories, file
protections, etc. overhead is vast compared to a
server architecture. With timesharing too many
unnecessary resources are needlessly duplicated
for each user. Also with the control program
approach there are no "directories" or "commands"
that can be abused by hackers to break the system.
5. No data independence. If you modify the
database you have to tinker with the applications.
With a server, the communication is through memory
so anything can be changed so long as you maintain
the communications protocol.
It's really funny, but now 20 years later "the
rest of us" can now take part in this type of
technology (now IBM's patents have expired?). The
emergence of PC LANs has created a need for
"server" nodes that operate with much the same
principle. Products such as SYBASE are an example.
I hope DEC will take the plunge into this type of
architecture with it's new VAX 9000 line (if they
ever hope to compete with IBM). This "airline
system" architecture, however, will never become
as popular as timesharing systems because it's
basically a vertical market product.
The conclusion of this section is that specialized
OS contributes to massive I/O rates. (IBM keeps
with this trend via ESA)
Lawrence Butcher writes:
>My new question. Is fast I/O all that micros need
>to bury mainframes? Or is user level I/O needed?
>If needed, how can simple hardware be built which
>allows direct user level DMA I/O?
Yes & Yes, except watch out for apples vs. oranges
comparison. What you're referring to as "user
level I/O" is NOT the same as what most people
might think. "User level I/O" in terms of the
"1960s operating systems" referres to a vertical
market control program that replaces a typical
UNIX-type timesharing system. That VAST user level
I/O was & is achieved by sacrificing ALL the
capability that a UNIX user has come to love.
VAX ACMS systems can't compete with IBM because
they attempt to layer the "control program" on top
of VMS. VMS sucks up all the CPU cycles with
overhead not needed for the job being done.
"Mainframe I/O" where you have 100+ channels
cooking at 3MB/sec does not mesh with a
timesharing-type OS. That's why IBM LAYERS all
it's timesharing environments(CMS, TSO) ON TOP of
MVS or VM (and they run slow as death). You can't
always have your cake and eat it too. The OS has
to be created for the application. DEC only gives
us ONE type of OS. DEC's software is the reverse
of IBMs - ACMS (control program) sits on top of
VMS(timesharing system), but with IBM
TSO(timesharing system) sits on top of MVS(control
program). What DEC needs is a specialized OS for
use to run the ACMS environment once it's been
created on VMS.
ALSO keep on mind the the alleged "100+ MIPS"
processors are actually multiprocessors. The IBM
3090-600 has 6 15 MIPS processors. The *fastest*
single user processing is 15 MIPS - NOT 100 MIPS!
IBM's max uniprocessor MIPS is about the same as
others in the industry.
Channel CPUs to offload main CPU interrupts help
big time, as does multi-ported memory. But DEC has
added intelligent processors long ago also. In
1974 when the KL10 came out they started using a
PDP-11 front end to offload terminal interrupts
from the main processor. I think IBM is stronger
with the channel CPU & multi-ported memory,
though. VAX CPUs are still managing DMA and
character I/O transfers. I think IBM has some
*broad* patents in the multi-ported memory area
that will expire soon. Enter the VAX 9000. Also,
IBM does not use DEC's "single bus" subsystem
connection scheme but rather connects subsystems
via "channel architecture" and multi-ported
memory. This gives >100MB/sec throughput.
You might wonder how IBM keeps it's memory
subsystem fast enough to keep up with it's 15 MIPS
processors. They do it the brute force way. Use
expensive 3ns ECL cache and 512MB of 50ns SRAM
main memory to run at a cool 10ns cycle time or
100MHz. (Compare to the *fastest* 80386 PC at
33MHz.) No wonder they cost $10 million (quoted
from Sam Fuller/Amdahl)
The conclusion of this section is that massive I/O
BW (again) comes from a specialized OS, but ALSO
*expensive*fast* memory subsystems AND channel
architecture w/multi-ported memory.
Now, on the subject of PCs and disk I/O...
Yes, the only thing that distinguishes an 8-MIPS
PC board from an 8-MIPS VAX 6000 board is the I/O
bandwidth. This comes primarily from the memory
cycle time.
The PC industry is suffering from the "low margin
& compatibility blues" In other words, because the
PC is now a commodity the profit margins are too
slim to allow for *high speed* SRAM and ECL
memory, and too slim to finance R & D - which is
what is required to engineer new bus technology.
New bus technology is risky to introduce and make
a profit because *everyone* has standardized on
the AT bus and *most* are happy enough not to yell
loud.
If you were to buy a PC with minicomputer or
mainframe I/O - it would cost you as much as a
minicomputer or mainframe. Because the
*engineering* costs & material costs will be the
same as the big guys. You'd have to have a *fast*
memory subsystem which would cost *bug bucks*.
You don't get something for nothing. These PC
makers have to compete with 50 other companies
that have cut-throat margins. They can't fuss
around trying to make a high bandwidth bus(w/
associated fast memory) and expect to get to
market on time to keep up with the others. If you
snooze you loose. You have to keep the product
flowing to keep the cash flowing.
What *will* change this though is the emergence of
new low cost chips such as the NCR53C700 SCSI
chip, and the fall in price of SRAM or faster DRAM
(actually *vastly* faster DRAM) When the PC makers
can use low cost chips for high bandwidth rather
than engineer their own bus design, they will do
it. They will be able to put ESDI/SCSI interfaces
ON the motherboard and BYPASS the AT bus.
The thing about "mainframes" is that these guys
ALWAYS thought BIG. Did you know the first hard
disk in the late 50s contained 5MB? NOT 50KB like
early floppies. These guys new how much data they
had to store and weren't going to fuss around with
a 50KB hard drive. Sure, the 5MB drive was as big
as a refrigerator, but so what? You're charging
$100K for it.
The same is true for I/O bandwidth. They knew how
much data they had to process and what the time
limits were (eg. get 100,000 pay checks of 64
bytes each out by Friday). If you ran the system
24 hours, that came out to say 10MB/sec I/O. This
increased to 16MB/sec in the early 70s, and to
70MB/sec in the early 80s. Did they ever fuss
around with a 500KB/sec AT bus? Yea right.
Mainframe disk I/O exceeded the AT bus around
1959. These guys KNOW how to do it fast. But these
companies are also publicly owned and must make
money for their stockholders. If they start
blowing out 80386 PCs with 2MB/sec sustained disk
I/O on multiple simultaneous drives, who will buy
their mainframes? (eg. how many American Airlines
Sabre systems are there?) Also, they can't do that
and stay competitive with the clones at the
moment..
So they market "incremental improvements" which
are say 10% faster than the last desktop model,
but still use "off the shelf" chips and boards. So
you are continually forced to buy new hardware to
keep up with the best. It *does* cost more to
engineer a fast bus than to use off-the-shelf
components and slap together another clone.
And since the market is NOT demanding a fast PC
bus, why go to all the trouble? Maybe you'll loose
money. If you do put a fast bus together, you'll
point it towards the workstation market where the
profit margins will support the engineering costs.
But as I said above, when fast cheap I/O chips can
be used by board makers to bypass the AT bus,
that's when the sparks will fly and the mainframe
folks will be running for the hills. Ask yourself
why DEC is planning to lay off 25,000 people over
the next few years? The writing is on the wall.
Soon CISC computers will be "all invented."
Please POST your comments...
Technical Details
Message-ID:
<21962@cup.portal.com>Path:
arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!lll-winken!uunet!portal!cup.portal.com!cliffhangerShow Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!lll-winken!uunet!portal!cup.portal.com!cliffhanger From: cliffhanger@cup.portal.com (Cliff C Heyer) Newsgroups: comp.arch Subject: PC vs. mainframe I/O (Re: SCSI on steroids) Message-ID: <21962@cup.portal.com> Date: 8 Sep 89 01:14:09 GMT Organization: The Portal System (TM) Lines: 261