Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site watdaisy.UUCP Path: utzoo!watmath!watnot!watdaisy!gvcormack From: gvcormack@watdaisy.UUCP (Gordon V. Cormack) Newsgroups: net.arch Subject: Re: RISC/CISC - IBM mainframes Message-ID: <7302@watdaisy.UUCP> Date: Wed, 12-Jun-85 10:16:33 EDT Article-I.D.: watdaisy.7302 Posted: Wed Jun 12 10:16:33 1985 Date-Received: Thu, 13-Jun-85 00:26:40 EDT References: <1452@ecsvax.UUCP> Organization: U of Waterloo, Ontario Lines: 36 > I have just heard a presentation by IBM on large systems directions. > It was predicted that an increasing amount of operating system > functions would be embodied in microcode. This seems to be the > opposite of RISC - with a vengance. > They find that system functions are significantly sped up by this > approach, which does seem to be a good point. (I'm sure that they > also find that using microcode also gives them a competitive > advantage with regards to the PCM's.) Also it was pointed out > that this makes MIPS even less meaningful, since some of these > new microcoded instructions are comparable to an entire program, > and yet just get counted as one instruction. > --henry schaffer n c state univ This is largely a marketing ploy. It was felt that competitors, such as Amdahl, could not respond quickly because their CPUs were not microcoded. It turns out that almost all of the improvement comes because the algorithms have been cleaned up, not because of embedding them in microcode. Amdahl simulates them in software using the following technique: the first time such an instruction is encountered, a trap is taken and the instruction is simulated. The opcode is then permanently replaced by a branch entry into the simulation routine. Amdahl claims similar performance to the IBM micro-coded instructions. Another note on large IBM instructions. Once upon a time (on a 370/168 as I recall) I observed that the PL/I compiler generated object code to move a string that set up registers appropriately for the use of the MVCL (long move) instruction. But instead of the MVCL, was a software routine. I assumed that this was done for backwards compatibility with the 360 (which didn't have MVCL) and so I replaced the software routine with a single MVCL instruction. The overall running time of the program was 20% greater! -- Gordon V. Cormack CS Department, University of Waterloo gvcormack@watdaisy.uucp gvcormack%watdaisy@waterloo.csnet