On Sunday, 23 August 2015 at 11:06:20 UTC, Russel Winder wrote:
On Sat, 2015-08-22 at 09:27 +0000, rsw0x via Digitalmars-d-learn wrote:
[…]

The performance decrease has been there since 1.4 and there is no way to remove it - write barriers are the cost you pay for concurrent collection. Go was already much slower than other compiled languages, now it probably struggles to keep up with mono.

I know Walter hates it when people mention the word but: benchmarks.

As soon as someone say things like "it probably struggles to keep up with mono" further discussion of the topic is probably not worth entertaining without getting some agreed codes and running them all on the same machine.

I agree the standard Go compiler generates not well optimized code, but gccgo generally does, and generally performs at C-level speeds. Of course Java often performs far better than that, and often fails to.
You have to be careful with benchmarking and performance things
generally.

https://groups.google.com/forum/#!msg/golang-dev/pIuOcqAlvKU/C0wooVzXLZwJ
25-50% performance decrease across the board in 1.4 with the addition of write barriers, to an already slow language.

random benchmarks of Go performing 3x(+) slower than C/C++/D, some of these predate Go 1.4.
https://github.com/kostya/benchmarks
https://benchmarksgame.alioth.debian.org/u64/benchmark.php?test=all&lang=go&lang2=gcc&data=u64
https://togototo.wordpress.com/2013/07/23/benchmarking-level-generation-go-rust-haskell-and-d/
 (gcc-go performed the _worst_)
https://togototo.wordpress.com/2013/08/23/benchmarks-round-two-parallel-go-rust-d-scala-and-nimrod/
 (and again)
https://github.com/logicchains/LPATHBench/blob/master/writeup.md (once again, Go is nowhere near C/C++/D/Rust. Where is it? Hanging out with C#/Mono.)

Go is slow. These aren't cherrypicked, just random samples from a quick Googling. Where is Go performing "C-level speeds" at? D claims this, and D shows it does. Go falls into the "fast enough" category, because it is _not_ a general purpose programming language. So unless multiple randomly sampled benchmarks are all wrong, I'm going to stick with 'Go is slow.'

Reply via email to