Question

I see the claims that Go is supposed to be almost comparable in speed to C, but are there any benchmarks available yet?

Was it helpful?

Solution

There is a benchmark folder in the distribution. Check out $GOROOT/test/bench.

OTHER TIPS

Go is added to the Computer Language Benchmarks Game. In comparison to C++ it has still a way to go.

November 2009:

Nov 2009

October 2011:

Oct 2011

The documentation is light and filled with "maybe someday we'll X" and "watch this space for more information." The Go page lists the language reference as the best single source for information, which to me says infant language. I doubt there are any published benchmarks yet.

I wrote a Go port of GenPrime (which is available at my fork of the project here). I published the results I received (compared to the C version) on this topic at Ferrous Moon. Despite the fact that my Go port used floating-point math versus integer math, the results are impressive.

Profiling Go Programs discusses Robert Hundt's C++/Scala/Go benchmarks and also clearly explains how to performance tune Go applications. It's a single program benchmark but is worth reading to get an idea of the level of tool support for performance tuning and the results show that it is competitive with C++ on this particular problem chosen by Hundt.

Keep in mind that the GC is a simple mark-sweep implementation. What I don't understand is why isn't Go utilizing the LLVM compiler tool chain?

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top