4 ms·
The Honeywell 800 allowed eight programs to run on a single processor, switching between programs after every instruction[...]its own separate group of 32 regis
by userbinator 1y ago
The Honeywell 800 allowed eight programs to run on a single processor, switching between programs after every instruction[...]its own separate group of 32 registers (program counter, general-purpose registers, index registers, etc.)
I'm surprised that the analogy to hyperthreading wasn't made here.
- adrian_b 1y agoHyperthreading is a word used by Intel instead of the standard term SMT (Simultaneous Multithreading), in order to be able to register it as a trademark. The first CPUs with SMT have appeared only during the nineties. That Honeywell CPU is the first commercial CPU with FGMT (Fine-Grained Multithreading). SMT can exist only in a CPU able to decode and execute multiple instructions simultaneously, which is why it has appeared much later. While FGMT went out-of-fashion for CPUs, many GPUs have used and many still use FGMT, because it can provide better performance per die area than a more complex superscalar/SMT architecture.
- fuzzfactor 1y agoPerkin-Elmer turned out to offer the first "desktop" (benchtop) multi-user multi-tasking (threaded) data system, designed in the 1970's and finally released in 1979: https://www.bidspotter.com/en-gb/auction-catalogues/quaker-city-auction/catalogue-id-bscqu10131/lot-017d49fd-da19-494e-87c2-a9a6011f38bb https://www.bidspotter.com/en-gb/auction-catalogues/quaker-c... I would estimate it was fine-grained. No microprocessor in the CPU, just a PCB a foot square covered in discrete logic chips. Memory PCB the same size, connected by short ribbon cables to the CPU, this bypassed the backplane. Fully upgraded it was 16K of 32-bit memory. Each user could run more than one Basic program at a time, and also the same Basic code in memory could be run by more than one user, or even more than one time simultaneously by the same user. Simultaneous with the collection of live data from more than one chemical analyzer, which the firmware could handle most of the mainstream chemical needs without the Basic option. User-programming was for the exotic stuff that actually requires custom code. But that made it completely programmable using only the documentation supplied, it was straightforward to accomplish things which PC software that eventually came along never has been able to do without settling for additional commercial offerings which are much more user-friendly (mouse!) but not as appropriate as my own code was.
- fulafel 1y agoIt's more like a barrel processor than SMT. Actuall the Honeywell 800 is mentioned as an example in https://en.wikipedia.org/wiki/Barrel_processor https://en.wikipedia.org/wiki/Barrel_processor
- adrian_b 1y agoFGMT as implemented in that Honeywell CPU is a step above a barrel processor like that used by the later CDC 6600 in its I/O CPU, because it can transition to any of the other threads, not only in round-robin order, like in a barrel CPU. This avoids wasting clock cycles in threads that are waiting for some event.