On 2013/5/2 ryan.bressler <
ryanbr...@gmail.com> wrote:
> Go1.1 has been working great for me but i'm wondering what other people
> seeing in terms of performance of go1.1 code vs gccgo?
>
> I have some decision tree code that uses recursion and closures ... it
> performs quite well under go1.1 but using gcc 4.8.0 it is much slower (about
> 3x depending on the input data). I'm wondering if gccgo has not seen the
> changes to how anonymous functions etc work included in go1.1 yet and will
> get faster with 4.8.1?
>
> Ryan
GCCGO does not perform escape analysis like the gc compiler: on
non-numerical computations, memory allocation and GC is often the
bottleneck and the new function representation allows to put an even
larger amount of data on stack than Go 1.0, hence the difference you
see.
Gccgo can however benefit from the runtime and library improvements of
Go 1.1, for example, the new garbage collector, but creating no
garbage will still be better than collecting it fast.
Regards,
Rémy.