3 ms·
Doesn't say anything about compilation speed. How close to 1.4 performance are we? The slow compilation on 1.5 has kept us on 1.4 so far.
by dvdplm 11y ago
Doesn't say anything about compilation speed. How close to 1.4 performance are we? The slow compilation on 1.5 has kept us on 1.4 so far.
- grey-area 11y agoI was looking for this too. Disappointed to see no mention of it as compilation time doubled in 1.5.
- unfamiliar 11y agoAny idea what causes this increase? I'm surprised as I understood fast compilation times to be one of Go's major strengths.
- peterwaller 11y agoThe increase was caused during 1.4->1.5 by translating the whole compiler toolchain from C to Go. The core devs focussed on correctness over performance on the first pass. They clawed back a lot of the performance already, and though it is slower than it used to be, it isn't at all bad compared with C++ and other languages I've used.
- masklinn 11y agoThe compiler was convert/rewritten from C to Go.
- dilap 11y agoI'm a little sad about the slower compiler speed to, though it's still lightyears better than C++. But for my project it's juuust long enough that not having status printed while compiling feels pretty annoying. If they just printed out each file as it was compiled, it would go back to feeling lightning fast. :) (Maybe there's a way to do this?)
- ustolemyname 11y agogo build -x will print the subcommands as it executes them, is that what you are looking for?
- dilap 11y agoboom! that does it, thanks. (well actually what i reallly want is in between -- just each file name as it compiled, in a pretty list that gives me something to look at while waiting for the compile. but this is 𝞊 away.)
- omginternets 11y agoOh god, so it's not just me... it really is slower...
- sudhirj 11y agoFrom the 1.5 release notes Builds in Go 1.5 will be slower by a factor of about two. The automatic translation of the compiler and linker from C to Go resulted in unidiomatic Go code that performs poorly compared to well-written Go. Analysis tools and refactoring helped to improve the code, but much remains to be done. Further profiling and optimization will continue in Go 1.6 and future releases. For more details, see these slides and associated video.
- omginternets 11y agoOk, cool. I can live with that :) Thanks!
- iends 11y ago1.5->1.6 has roughly the same speeds. There are discussions about improving compiler speed in 1.7.