News for hackers. Stuff that matters.
Re:Compiler Performance and LLVM by rujuladanh on Thursday April 04, 2019 @03:59AM (#19570154)
A quick remark: general purpose compilers (including all the common ones) aren't really built for "extreme" performance. They always pick big tradeoffs and don't try everything they could.

In other words, it is not "hard" to build compilers with better performance. What is hard is getting performance without build times exploding.

Re:Compiler Performance and LLVM by htfy96 on Thursday April 04, 2019 @04:30AM (#19570255)
Just curious: which compilers according to your statement are designed for extreme performance? I know at the very right of the compilation time/performance axis lies SAT-based "super optimizers", but what lies between super optimizers and general-purpose compilers like icc?
Re:Compiler Performance and LLVM by sanxiyn on Thursday April 04, 2019 @04:52AM (#19570334)
For example, Unison is an alternative code generator for LLVM, which uses constraint programming to do combined register allocation and instruction selection. It is very slow, but it does generate optimal (not just improved!) code, within its performance model.

http://unison-code.github.io/

Re:Compiler Performance and LLVM by htfy96 on Thursday April 04, 2019 @09:56AM (#19572304)
Thanks for the information. It seems that it is a super optimizer[0].

[0]: https://en.wikipedia.org/wiki/Superoptimization

Re:Compiler Performance and LLVM by sanxiyn on Thursday April 04, 2019 @12:07PM (#19573950)
Unison is not a superoptimizer. Superoptimizer is evem slower.