News for hackers. Stuff that matters.
Re:Hennessy and Patterson win Turing Award by tlb on Wednesday March 21, 2018 @02:39PM (#16641095)
Younger programmers may not appreciate how big a revolution the quantitative approach to computer design was. It now seems like an obvious idea: since all machines are Turing-complete, instruction sets and architecture should be optimized for performance across some representative workloads. Since the instruction set is one of the variables, the tasks must be specified in a high-level language and the compiler becomes part of the system being optimized.

Before that, instruction sets were driven more by aesthetics and marketing than performance. That sold chips in a world where people wrote assembly code -- instructions were added like language features. Thus instructions like REPNZ SCAS (ie, strlen) which was sweet if you were writing string handling code in assembler.

H&P must have been in the queue for the Turing award since the mid-90s. There seems to be a long backlog.

Re:Hennessy and Patterson win Turing Award by userbinator on Wednesday March 21, 2018 @11:36PM (#16645487)
Before that, instruction sets were driven more by aesthetics and marketing than performance. That sold chips in a world where people wrote assembly code -- instructions were added like language features. Thus instructions like REPNZ SCAS (ie, strlen) which was sweet if you were writing string handling code in assembler.

REP MOVS is still the fastest and most efficient way to do mempcy() on most Intel hardware, and likewise REP STOS for memset(), because they work on entire cachelines at once.

It's worth noting that, if it weren't for a brief period of time during the late 70s/early 80s when memory was faster than the processor, RISC as we know it may have never been developed; the CISCs at the time were spending the majority of the time decoding and executing instructions, leaving memory idle, and that's what the RISC concept could make use of --- by trading off fetch bandwidth for faster instruction decoding and execution, they could gain more performance. However, the situation was very different after that, with continually increasing memory latencies and now multiple cores all needing to be fed with an instruction stream putting RISC's increased fetch bandwidth at a disadvantage. Now, with a cache miss taking tens to hundreds of cycles or more, it seems a few extra clock cycles decoding more complex instructions to avoid that is the better option, and dedicated hardware for things like AES and SHA256 obviously can't be beat by a "pure RISC". It was almost "game over" for "RISC=performance" in the early 90s when Intel figured out how to decode CISC instructions quickly and in parallel with the P5/P6, and rapidly overtook the MIPS, SPARCS, and ALPHAs that needed more cache, higher clock speeds, and power consumption to achieve comparable performance.

Certainly, it makes one wonder whether, had that brief moment in time not existed and memory was always significantly slower than the processor, would CPU designs have taken a completely different direction?

Re:Hennessy and Patterson win Turing Award by jabl on Thursday March 22, 2018 @05:04AM (#16646976)
> REP MOVS is still the fastest and most efficient way to do mempcy() on most Intel hardware, and likewise REP STOS for memset()

Would that be the original REP MOVS/STOS, or the "fast strings" (P6)? Or the "this time we really mean it fast strings" (Ivy Bridge)? Or the "honestly, just trust us this time fast strings" (Ice Lake)?

> Now, with a cache miss taking tens to hundreds of cycles or more, it seems a few extra clock cycles decoding more complex instructions to avoid that is the better option

You can have both, actually. E.g. RISC-V with the compressed instruction extension achieves higher code density than x86-64.

> and dedicated hardware for things like AES and SHA256 obviously can't be beat by a "pure RISC"

Well, if you're really looking for minimal instruction sets, RISC is way bloated; IIRC single-instruction computers can be Turing complete. Obviously they are not very useful in practice. I think a better approximation of the RISC philosophy is "death to microcode", that is, the instruction set should match the hardware that the chip has. So if your chip has dedicated HW for some crypto or hashing algorithm, I wouldn't consider it "un-RISCy" to expose that in the ISA.

Re:Hennessy and Patterson win Turing Award by tlb on Thursday March 22, 2018 @11:44AM (#16649586)
Behold the OSX library version of memcpy, 177 instructions long: https://gist.github.com/tlbtlbtlb/6f6fdc5154210dc72950d8ef02.... It unrolls to 128 byte chunks. Presumably it's enough faster than REP MOVS to justify the memory footprint.

I believe most libc implementations are similar, such as glibc: https://sourceware.org/git/?p=glibc.git;a=blob_plain;f=strin...

Re:Hennessy and Patterson win Turing Award by cafard on Thursday March 22, 2018 @09:52AM (#16648608)
In fairness, RISC was made feasible in part because suddenly there was more memory available. In some interview, Gordon Bell spoke of David Cutler saying, Gee, why didn't we go RISC in the first place, and Bell replying, Remember how scarce memory was?

Having said that, Hennessy and Patterson definitely deserve the award.

Re:Hennessy and Patterson win Turing Award by agumonkey on Thursday March 22, 2018 @11:02AM (#16649213)
cafard means bug in French. just in case
Re:Hennessy and Patterson win Turing Award by kps on Wednesday March 21, 2018 @08:22PM (#16644035)
The VAX instruction set, and the difficulty of building a pipelined implementation, was one of the topics in the first edition of Computer Architecture. (The second edition was already a substantially different book.)
Re:Hennessy and Patterson win Turing Award by ChickeNES on Thursday March 22, 2018 @12:22AM (#16645716)
Hmm, now I need to track down a copy of the first edition, that sounds really interesting.
Re:Hennessy and Patterson win Turing Award by zurn on Thursday March 22, 2018 @10:42AM (#16649053)
This is indeed a powerful idea.

The software equivalent is to forget about the distinct human-invented concepts of programs, input data, memory representation of data, and languages - it can all be optimized together with global visibility to all aspects. Like partial evaluation optimizations, without the partial part.

Our compiler technology still has ways to go with this one.

Re:Hennessy and Patterson win Turing Award by wolfgke on Thursday March 22, 2018 @06:27AM (#16647370)
> since all machines are Turing-complete

No real computer is Turing-complete, since it has only a finite amount of memory.

Re:Hennessy and Patterson win Turing Award by Maven911 on Wednesday March 21, 2018 @10:59AM (#16638558)
Who else studied with their book called "Computer Architecture" and what are your thoughts on it ?

I enjoyed that it was a simpler read then a lot of the circuits-type of books that are part of a EE/CE curriculum, but I always felt there was this lack of "hard science"/physics in the book.

And perhaps it was just not a topic they felt fit with the vision of what this book is suppose to be, and it likely came to be a better decision to abstract that part away for readability.

Re:Hennessy and Patterson win Turing Award by lvoudour on Wednesday March 21, 2018 @11:44AM (#16639085)
I read both Computer Architecture and Computer Organization and Design in college and I really enjoyed them.

I would recommend COaD to any beginner who wants to learn some basic concepts of computer design (and if working with FPGAs why not build one).

CA deals with more advanced concepts but doesn't overwhelm you with math and circuit theory (as you noted) so it's a natural progression (from COaD). I think something more advanced and "hard science" should be part of a post-graduate curriculum

Re:Hennessy and Patterson win Turing Award by cbHXBY1D on Wednesday March 21, 2018 @12:34PM (#16639737)
I strongly prefer Computer Organization and Design over their Computer Architecture book. I had to read both while at Berkeley. I've considered picking up the new RISC-V edition of the former but I can't justify spending that kind of money when RISC-V is so similar to MIPS. Could be a fun bit of history if RISC-V ever takes over :-)
Re:Hennessy and Patterson win Turing Award by cakebrewery on Wednesday March 21, 2018 @12:45PM (#16639876)
I read these two as well. Computer Organization and Design and Computer Architecture on my 2nd and 3rd-level computer architecture courses respectively. Glad to hear Hennessy and Patterson getting the Touring award, always had a good hunch about Computer Architecture despite not knowing as much back then.
Re:Hennessy and Patterson win Turing Award by abainbridge on Wednesday March 21, 2018 @11:06AM (#16638625)
I thought it was a great book because it proposed sensible benchmarking strategies and applied them thoroughly. That seems like a good way to determine things like how much better 8-way set associative caching is than 2-way.

It's a long time since I read it, but from my memory that's the kind of thing the book is about. I'm not sure how you'd determine those kinds of things in a more "hard science"/physics fashion.

Re:Hennessy and Patterson win Turing Award by kev009 on Wednesday March 21, 2018 @04:05PM (#16641836)
I think that's because in a full EE/CE program you would have some earlier course that covered that based on a book like Sedra/Smith "Microelectronics" (but disclosure, I was CS so most my EE is self acquired)
Re:Hennessy and Patterson win Turing Award by jkingsbery on Wednesday March 21, 2018 @11:53PM (#16645567)
When I was in grad school, we used the 4th Edition in the Senior/Masters level computer architecture class. I still have it on my book shelf. I've re-read large chunks of it a number of times in the past 10 years (often inspired by making sure my bases are covered during job interviews).

Given that most of my career has been pretty far removed from the compiler/assembly instructions, much of the content wasn't directly relevant to what I've been doing, but I still find myself using many of the tools that are outlined in the first chapter ("Quantitative Principles of Computer Design") when dealing with performance problems or analysis in high-level-language-world, which happens pretty often.

Re:Hennessy and Patterson win Turing Award by bsder on Wednesday March 21, 2018 @03:18PM (#16641389)
The only issue is that I am hoarding a bunch of copies of the original Computer Architecture editions as the comparisons between the architectures of the day are quite valuable.
Re:Hennessy and Patterson win Turing Award by gfredtech on Thursday March 22, 2018 @05:22AM (#16647078)
I'm currently using it for my Computer Architecture class(MIPS edition). It's rather unfortunate that I'm just grokking the book for the grades, it's a very good book and explains a lot of concepts quite well. I may not grasp it the first time I read a section, but after going over it, I almost always understand.
Re:Hennessy and Patterson win Turing Award by rjbwork on Wednesday March 21, 2018 @08:46PM (#16644285)
We used Computer Organization and Design in college. Great book, did well in the class, felt I had a grasp of the material.

But man, 6 months out and I retained nearly nothing. It's just so esoteric and not very relevant to my every day schoolwork(then) and career(now) that it's slowly seeped out of my brain.

Re:Hennessy and Patterson win Turing Award by ChuckMcM on Wednesday March 21, 2018 @08:06PM (#16643842)
It is one of the classics as far as I'm concerned. Anyone doing systems work should read it.
Re:Hennessy and Patterson win Turing Award by chrisaycock on Wednesday March 21, 2018 @04:51PM (#16642276)
Two years ago, David Patterson interviewed John Hennessy for Communications of the ACM. They discuss the changing job landscape, MOOCs, and the future of education.

https://doi.org/10.1145/2880222

Re:Hennessy and Patterson win Turing Award by seanf on Thursday March 22, 2018 @12:07PM (#16649818)
Thanks for the link. Full interview at https://vimeo.com/146145543
Re:Hennessy and Patterson win Turing Award by zeroxfe on Wednesday March 21, 2018 @11:49AM (#16639136)
Really happy about this! Their book "Computer Architecture" (along with Tanenbaum's book) played a huge role in my development as an engineer.
Re:Hennessy and Patterson win Turing Award by utopcell on Wednesday March 21, 2018 @09:21PM (#16644571)
Interestingly, four Turing Award winners are now affiliated with Google: Vint Cerf, Ken Thompson, John Hennessy and Dave Patterson.
Re:Hennessy and Patterson win Turing Award by seanmcdirmid on Wednesday March 21, 2018 @11:56PM (#16645578)
MSR has a few also (Lamport, Lampson, Thacker, Gray), though ATM a couple are deceased. Supposedly there is a fifth one, but I can't figure it out (must have gotten the award before entering MSR).
Re:Hennessy and Patterson win Turing Award by sidereal on Thursday March 22, 2018 @12:29AM (#16645746)
MSR also has Tony Hoare.
Re:Hennessy and Patterson win Turing Award by adultSwim on Friday March 23, 2018 @01:58PM (#16660826)
Hats off to Patterson
Re:Hennessy and Patterson win Turing Award by commandlinefan on Wednesday March 21, 2018 @03:24PM (#16641435)
In a just world, they'd also be as well-known as Bill Gates and Steve Jobs.
Re:Hennessy and Patterson win Turing Award by RcouF1uZ4gsC on Wednesday March 21, 2018 @05:13PM (#16642475)
John Hennessy was the president of Stanford is now the Executive Chairman of Alphabet. He has been and is being well rewarded for his work.
Re:Hennessy and Patterson win Turing Award by jeffreyrogers on Wednesday March 21, 2018 @04:26PM (#16642030)
I think most famous people find being famous a burden, so I'm not sure they're missing out by being well known only among people who can actually understand their accomplishments.
Re:Hennessy and Patterson win Turing Award by bordercases on Wednesday March 21, 2018 @09:30PM (#16644641)
Different business segments.