Amidst all the other awful news of last week, the fact that we lost an amazing and wonderful man might have gotten pushed off the front page: Gene Amdahl passed away on November 10, at age 92. We have lost one of the greatest computer architects of all time; in fact, it was his design of the IBM System/360 in the 1960s that led to the first use of the word “architecture” to describe computer design.
The New York Times has a well-written obituary about the man (http://www.nytimes.com/2015/
When IBM bet on Gene Amdahl’s ideas, it was perhaps the biggest business gamble of all time. They were literally betting the company on a major switch from their older 36-bit designs to a scalable 32-bit design. IBM won the bet, becoming by far the dominant player in the computer industry for decades, and to this day IBM sells computers that contain Amdahl’s instruction set and design ideas. Who else can claim to have designed an instruction set that has lasted over fifty years? And it wasn’t as if he had everyone’s full support at IBM; he had to fight for it. The company politics were quite intense and, as is typical, not everyone was on board with the high-risk change Gene was spearheading. Though he had been an academic, he proved quite talented at navigating company politics and getting IBM aligned to the massive effort.
It is one thing to be so inventive that you can create a mainframe design like the System/360 and its successor, the System/370; Amdahl had to invent it twice, two completely different ways! When he left IBM to found his own company to build rival computers (Amdahl Corporation), he found himself competing with his own patents. The royalties to IBM would have prevented his business from competing successfully, so he started with a clean sheet of paper and created all-new approaches that did not step on any of his early intellectual property, and were both faster and less expensive. That made Amdahl Corporation one of the few companies building computers with IBM-compatible instruction sets that made a successful business at it.
I once asked Gene why it was that his System/360 design did not support parallel computing, as did some of the Burroughs machines from the same era. He replied that he couldn’t figure out what the instructions would be for a parallel computer. It was not, as some might think, because he was opposed to the idea of parallel computing. This may be one of the major myths about Gene Amdahl: that he was fundamentally against parallel processing. He was chagrined that his famous 1967 debate with Daniel Slotnick at an AFIPS conference led people to think this about him.
I wish I could have seen that historic debate in person. The Single-Instruction Multiple Data (SIMD) ILLIAC IV was to have 256 processors when finished, though even the 64-processor version was a breathtakingly daring parallel design when the first pass was completed in 1966. Amdahl had recently introduced his single-CPU time-shared mainframe, so the stage was set. Amdahl estimated that the operating system of a SIMD computer like the ILLIAC IV would take about 25 to 45 percent of the processor cycles, based on his experience with the operating system of the System/360. In his overhead slides, he presented the standard engineering formula for applying two speeds to a fixed-size process, and argued that the ILLIAC IV would only achieve two-fold to four-fold speedup despite having 64 processors. The impact of the argument was huge. Willis Ware referenced it in a RAND report three years later, including the algebraic formula from Gene’s presentation and calling it “Amdahl’s law,” and the name stuck.
Gene told me he never intended that his argument would be applied to distributed memory systems with separate instruction streams, in which he became a believer and supporter in his later years. He and I served on the technical advisory board of Massively Parallel Technologies, and he could not have been a more enthusiastic proponent of the modern approach to massive parallelism.
Many computer architecture books and articles also point to Amdahl’s “guideline” that a well-balanced computer should have “a megaword per megaflop” or similar variants. I tried for years to track down the original source of this guideline, and could not find it anywhere. Then I realized I could simply ask him, since we were about to have lunch together. His answer surprised me: “I never said that.” Nor did he believe it was a good guideline! I suppose one of the hazards of being an industry icon is false attribution. It was a relief, since in the petaflop to exaflop era, we are certainly drifting quite far from that ratio.
I’m at the SC15 conference in Austin as I write this, looking over what seems like endless acres of exhibit hall displays. I believe every one of the companies on the trade show floor owes some or most of their existence to the foundation Gene Amdahl built for them, decades ago. He was THE original Computer Architect, and I will miss him as both as an amazing mentor and as a friend.
(Image Source: Computer History Museum)