Thursday, March 29, 2018

A Reduced Turing Award

A Turing machine has an extremely simple instruction set: Move left, move right, read and write. If you want to do real programming, you need something a bit more powerful. So computer architects created chips with more and more operations. As an undergrad at Cornell in the early 80's I worked on coding an email system written in IBM 370 assembly language. As I wrote in a 2011 post,
IBM Assembly language was quite bloated with instructions. There was a command called "Edit and Mark" that went through a range data making modifications based on some other data. This was a single assembly language instruction. We used to joke that there was a single instruction to do your taxes.
After Cornell I spent one year at Berkeley for graduate school where I heard about this new idea: Let's move in the other direction and have a "reduced instruction set computer". Make the chip as simple as possible to simplify the design, save power and increase performance. Fast forward to last week and ACM tapped RISC pioneers John Hennessey and David Patterson for the Turing Award, the highest honor in computer science. They won an award named after the man who created the simplest instruction set of them all.

RISC didn't take over--Intel never really embraced the concept and kept adding new features from real-number operations to AES encryption/decryption built into the processor. GPUs added vector operations and Tensor Processing Units can do machine learning instructions. Added complexity has its complications such as the famous 1994 division bug.

RISC processors do play a role in mobile devices which need to have low power, one can find ARM (Advanced Risc Machines) processors in many mobile phones and tablets. Based on quantity alone there are far many more RISC processors than CISC (C = complex).

These days the lines between the processor and the operating systems blur and we are programming chips. David Patterson continues to work on RISC, with a recent open RISC-V architecture that also supports chip programming. John Hennessey was otherwise occupied--he was president of Stanford from 2000 to 2016.

5 comments:

  1. From what I've heard, an Intel chip is actually a CISC interpreter that itself runs over a simpler machine (of course I'm simplifying a lot here), so in some weird sense Intel uses RISC.

    ReplyDelete
    Replies
    1. In a not so weird sense Intel doesn't use RISC, it uses CISC.

      Delete
  2. Lance, i find it ironic. you keep explaining acronyms but why didn't you explicitly state what RISC stands for.
    Anyhow, the other funny thing is that the guy on the left looks more like Captain Jean luc picard of star trek enterprise OR Patrick Stewart.

    ReplyDelete
    Replies
    1. It is introduced as “reduced instruction set computer”

      Delete
  3. I find the title of this post annoying. I am not a native English speaker, but I get the impression that the title (possibly inadvertently) implies that Hennessy and Patterson did not deserve the award. I apologize if I misunderstood the pun...

    ReplyDelete