News for hackers. Stuff that matters.
Re:Writing the Fastest Code, by Hand, for Fun (2005) by rudiger on Friday May 11, 2012 @11:57AM (#3959856)
Mr. Goto's name seems aptly suited to his work, writing the instructions given to microprocessor chips.

http://en.wikipedia.org/wiki/Aptronym

Re:Writing the Fastest Code, by Hand, for Fun (2005) by agosnell on Friday May 11, 2012 @12:28PM (#3960005)
Yes, it seems unlikely one would consider Mr. Goto harmful.
Re:Writing the Fastest Code, by Hand, for Fun (2005) by emehrkay on Friday May 11, 2012 @12:37PM (#3960042)
I've never used a goto statement before, but I felt that I needed a few weeks ago. I was able to refactor to a do/while loop
Re:Writing the Fastest Code, by Hand, for Fun (2005) by evincarofautumn on Friday May 11, 2012 @12:27PM (#3959993)
If only the pronunciations were the same.
Re:Writing the Fastest Code, by Hand, for Fun (2005) by chrisaycock on Friday May 11, 2012 @03:55PM (#3961032)
GotoBLAS2 was quite an achievement and featured performance metrics competitive with Intel's MKL [1]. When Prof Goto stopped working on it, the code was forked as OpenBLAS [2], which is used by the Julia programming language [3].

[1] http://eigen.tuxfamily.org/index.php?title=Benchmark

[2] https://github.com/xianyi/OpenBLAS

[3] http://julialang.org/

Re:Writing the Fastest Code, by Hand, for Fun (2005) by brohee on Friday May 11, 2012 @12:27PM (#3959994)
Funny, at the time of the article GotoBLAS was about to be opensourced, it since not only happened but went unmaintained.

http://www.tacc.utexas.edu/tacc-projects/gotoblas2

Re:Writing the Fastest Code, by Hand, for Fun (2005) by fdej on Friday May 11, 2012 @01:05PM (#3960177)
There is an actively maintained fork of GotoBLAS2, OpenBLAS: https://github.com/xianyi/OpenBLAS
Re:Writing the Fastest Code, by Hand, for Fun (2005) by gcp on Friday May 11, 2012 @12:50PM (#3960110)
Which is a bit sad because it's really the fastest freely available BLAS style library. Quite competitive with Intel MKL and much faster than ATLAS.
Re:Writing the Fastest Code, by Hand, for Fun (2005) by acqq on Friday May 11, 2012 @12:22PM (#3959970)
The software that the article mentions:

http://www.tacc.utexas.edu/tacc-projects/gotoblas2

Re:Writing the Fastest Code, by Hand, for Fun (2005) by chubot on Friday May 11, 2012 @12:28PM (#3959999)
The page says its portable across a few processors. I'm curious if there is much that is portable or if each one has to be optimized separately. I'm also curious how long code like this lasts. If the chip vendor changes their underlying architecture does the code have to be rewritten (for speed, ot correctness)?
Re:Writing the Fastest Code, by Hand, for Fun (2005) by gcp on Friday May 11, 2012 @12:52PM (#3960121)
The TLB optimizations that he started from are fairly generic. But the kernels themselves are hand-optimized assembly, so they obviously don't port. No need to rewrite for correctness, only for speed.
Re:Writing the Fastest Code, by Hand, for Fun (2005) by mmphosis on Friday May 11, 2012 @06:14PM (#3961725)
He said his next big challenge was to expose chip designers to his ideas to help speed their processors.

"Computer architects are stubborn," he observed. "They have their own ideas." His ideas on computing efficiency, he said, speak for themselves.

Re:Writing the Fastest Code, by Hand, for Fun (2005) by rms25 on Friday May 11, 2012 @01:17PM (#3960240)
Old article but amazing stuff. I'm assuming everything of his is written in assembly
Re:Writing the Fastest Code, by Hand, for Fun (2005) by danso on Friday May 11, 2012 @11:57AM (#3959857)
Er, so what this "John Henry" was capable of besting computers at, if I'm reading between the confusing lines correctly, was the most optimized subroutines? When I saw the phrase "John Henry" or the OP's headline, I immediately thought of someone writing more lines of code than...well, I guess I don't even know what kind of contest that would be.
Re:Writing the Fastest Code, by Hand, for Fun (2005) by jameskilton on Friday May 11, 2012 @12:10PM (#3959912)
He basically is able to see how data flows through code and can rewrite routines to ensure that as much is saved in the CPU's local caches (L1 / L2 / L3) as possible to optimize the calculations. In short, he's one of the best at writing code to minimize CPU cache misses and thus one of the best at writing blazingly fast code.