Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!ll-xn!nike!lamaster From: lamaster@nike.uucp (Hugh LaMaster) Newsgroups: net.arch Subject: Re: VERY LARGE main memories Message-ID: <609@nike.UUCP> Date: Wed, 17-Sep-86 13:10:18 EDT Article-I.D.: nike.609 Posted: Wed Sep 17 13:10:18 1986 Date-Received: Fri, 19-Sep-86 21:44:45 EDT References: <1130@bu-cs.bu-cs.BU.EDU> <7144@lanl.ARPA> <7148@lanl.ARPA> Sender: usenet@nike.UUCP Reply-To: lamaster@pioneer.UUCP (Hugh LaMaster) Organization: NASA Ames Research Center, Moffett Field, Calif. Lines: 57 Cray users often like to boast that very large main memories such as the Cray 2 obviate the need for virtual memory. J. Giles stated recently that Cyber 205 users "turn off" virtual memory. I work at a site which has a Cray X-MP, a Cyber 205, and a Cray-2 (Ames Research Center). I would like to state for the record that there are considerable advantages to having a machine have memory mapping virtual memory architecture, even though there is no apparent single job performance advantage. Picture a very large (almost all of real memory) batch job running on a Cray. Suppose that there is some interactive debugging going on (The Cyber 205 VSOS operating system and the Cray CTSS operating system are both interactive and have very nice interactive debuggers.) The large batch job will have to be written out to disk in entirety on the Cray before the small interactive job can be rolled in. That might take tens of seconds on a Cray 2. What if only a few pages had to be paged out as on the Cyber 205? The batch job would proceed with only a few pages missing, and the total swap time in any case would be only a few tenths of a second. There are many hypothetical examples which can be imagined which are confirmed, in my experience, in real life: All other things being equal, virtual memory systems have better throughput than non virtual memory systems of equivalent memory size and CPU speed. Virtual memory systems are better suited to mixed large batch and interactive loads, and are capable of better response time at an equivalent overhead than non virtual memory systems. Anyone who has had to deal with setting policies for user memory allocations on a Seymour Cray machine (from CDC 6600 days to the Cray 2) will know what kind of trade offs are necessary and why often these machines have been run batch only with users limited to half of the overall available memory. Now, a reasonable question to ask on a fast machine is, how much CPU real estate is going to be consumed by dynamic address translation hardware, because added logic is going to slow a very fast machine down. Cray has kept his machines very simple architecturally, and has a much smaller number of gates than other comparable machines (e.g. Cray 1's and 2's run between 600000 to 700000 gates per CPU, while the Cyber 205 has about 1.3 million, roughly twice as many), which may help explain why Cray has always had the fastest clock in the supercomputer business (another factor is that Cray is obviously a packaging genius). Conclusion: An computer architect always has to trade off design features to build a real machine, and in some cases virtual memory may have to be traded off, but in the real world of operating a machine, virtual memory is a significant advantage, other things being equal. Hugh LaMaster, m/s 233-9, UUCP: {seismo,hplabs}!nike!pioneer!lamaster NASA Ames Research Center ARPA: lamaster@ames-pioneer.arpa Moffett Field, CA 94035 ARPA: lamaster%pioneer@ames.arpa Phone: (415)694-6117 ARPA: lamaster@ames.arc.nasa.gov "The reasonable man adapts himself to the world, the unreasonable man adapts the world to himself, therefore, all progress depends on the unreasonable man." -- George Bernard Shaw ("Any opinions expressed herein are solely the responsibility of the author and do not represent the opinions of NASA or the U.S. Government")