I am most excited for the new SSA backend in go. I have been following commits to it here: https://github.com/golang/go/tree/dev.ssa No idea how long it will take to mature, but I hope there are some decent performance improvements once it is fully functional.
Go in Go
31–40 of 156 posts
Re: Go in Go
#32I am most excited for the new SSA backend in go. I have been following commits to it here: https://github.com/golang/go/tree/dev.ssa No idea how long it will take to mature, but I hope there are some decent performance improvements once it is fully functional.
Re: Go in Go
#33"How to sell a rewrite of your compiler that made it slower"
This is a fair criticism presented in a poor way. Hopefully the performance will improve with the new dev.ssa branch eventually. I will note that go programs still seem to build orders of magnitude faster than C++ programs, even after this change.
Re: Go in Go
#34"How to sell a rewrite of your compiler that made it slower"
This is a fair criticism presented in a poor way. Hopefully the performance will improve with the new dev.ssa branch eventually. I will note that go programs still seem to build orders of magnitude faster than C++ programs, even after this change.
Re: Go in Go
#35Re: Go in Go
#36I am most excited for the new SSA backend in go. I have been following commits to it here: https://github.com/golang/go/tree/dev.ssa No idea how long it will take to mature, but I hope there are some decent performance improvements once it is fully functional.
SSA?
Re: Go in Go
#37Earlier quoted context omitted.
This is a fair criticism presented in a poor way. Hopefully the performance will improve with the new dev.ssa branch eventually. I will note that go programs still seem to build orders of magnitude faster than C++ programs, even after this change.
Can you please explain what dev.ssa branch is implementing and how is it going to change the performance of the compiler?
Because the compiler is now written in Go, compiler optimization will affect how fast programs compile.
The compiler may speed up or slow down because it is doing more advanced code analysis, but is generating better assembly. I do not know if this will cancel itself out or not.
Re: Go in Go
#38Earlier quoted context omitted.
SSA?
Internal graph representation the compiler uses for programs. llvm uses SSA form of programs as its main low level representation. The benefits of SSA is that it enables some analysis and optimization techniques.
Re: Go in Go
#39Can we trust the go compiler? edit: This is the link I meant - https://www.ece.cmu.edu/~ganger/712.fall02/papers/p761-thomp...
c_i is the i'th version of the compiler.
c1 c2 // c1 compiles c2
c2 c3 // c2 compiles c3
Source code of c1 has bug, source code of c2 and c3 is fixed. Bug in c1 causes binary of c2 to have bug. Binary bug in c2 causes binary bug in c3.Re: Go in Go
#40I really like the slide software. Does anyone know where I can find it?