

Profiling Go Programs - skymt
http://blog.golang.org/2011/06/profiling-go-programs.html

======
kinofcain
Taking the opportunity to show off some of the profiling tools and walk
through the process of optimizing the program is a classy way to respond,
first of all, and secondly I didn't know those tools existed. Very cool.

~~~
minimax
This post basically shreds the original paper. The classiness is the icing on
the cake. If his version is 15x faster than the original Go version, that
would make it about twice as fast as the super-optimized C++ version from the
paper -- the one that was "was heavily dependent on several Google internal
data structures and could not be open sourced". Lots of brainiacs at Google
probably now have egg on their face courtesy of Russ Cox.

~~~
evmar
It turns out that Google is a collection of people with similar aims but
differing views, not a cabal of braniacs. The original paper was written by a
Googler who likely published it on his own for fun (and clearly without review
from a Go developer); Russ Cox (also a Googler) "shreded" the paper here
without himself passing it by the Scala enthusiasts for their take on it, etc.

Russ masterfully also demonstrated the Google cultural value of politeness, so
I expect the results of this blog post will be taken in the gracious manner in
which they were written.

~~~
dchest
You're right. Here's what Ian Lance Taylor (one of the Go developers) said:

"Robert asked me to take a look at his code and I hacked on it for an hour to
make a little bit nicer. If I had realized that he was going to publish it
externally I would have put a lot more time into making it nicer."

[https://groups.google.com/d/msg/golang-
nuts/G8L4af-Q9WE/MNY-...](https://groups.google.com/d/msg/golang-
nuts/G8L4af-Q9WE/MNY-zUk1r_MJ)

------
kbd
I'm very glad to see this more-serious optimization of the Go and C++
implementations of the original benchmark, which was less than thorough, and
not equally fair to each language. It's interesting that the optimized Go and
C++ code ultimately wound up with similar performance characteristics.

------
civilian
Needs more joseki!

~~~
billforsternz
Yes, it's a shame that the language shares the same name as a two letter
English word and a great East Asian board game.

------
aaronblohowiak
6prof crashes on osx, i've aske on the mailing list and been told that it is
only stable on Linux for now. Put a big damper on my Golang activities

~~~
uriel
See this: <http://code.google.com/p/go/source/detail?r=35b716c94225>

tl;dr: It is Apple's fault, OS X is buggy and so far there are no known good
workarounds, if you know any I'm sure Russ would love to hear about it.

