On Feb 16, 2025, at 10:39 PM, Chuck Guzis via cctalk
<cctalk(a)classiccmp.org> wrote:
On 2/16/25 15:52, Paul Koning via cctalk wrote:
On Feb 16, 2025, at 5:30 PM, paul.kimpel--- via
cctalk <cctalk(a)classiccmp.org> wrote:
The question concerned good ALGOL code generation, not the feasibility of ALGOL code
generation.
I know that, but just as RISC machines can run very fast no matter what applications you
feed them, compilers created with skill can produce excellent code no matter the target
machine.
CDC 6000-series turned in better performance benchmarks on COBOL that
did the high-end IBM S/370 iron. There are huge advantages to fast
instruction set execution operating on large word sizes. Just ask Don
Nelson (he who played the bass drum in the Los Trancos Woods marching band).
Two things that worked to CDC's advantage in addition to the simple
instruction set was that the 6000 was a three-address architecture with
no condition code register (conditional branches were made on the
content of a register).
Also multiple functional units, seriously interleaved memory, and a bucket full of other
tricks. The way loads and stores are requested by the programmer naturally makes them
background operations, and the "stunt box" handles that background process.
Not directly tied to application performance but very nice for the OS is an amazingly
efficient way to switch between processes, the "exchange jump". VAX almost got
this, but the 6000 does it better, taking advantage of the read/restore cycle to do a
read/update and run the context switch at memory speed. Ignoring initiation time it takes
less than 3 microseconds (in 1964!!).
paul