4 ms·
There's this [1], there are also some superoptimizers that will save the optimizations they find for later use, such as [2] [1] https://en.wikipedia.org/wiki/S
by Franciscouzo 10y ago
There's this [1], there are also some superoptimizers that will save the optimizations they find for later use, such as [2]
[1] https://en.wikipedia.org/wiki/Superoptimization https://en.wikipedia.org/wiki/Superoptimization
[2] https://github.com/google/souper https://github.com/google/souper
- chriswarbo 10y agoSuperoptimisation is very cool, although we'd want a bunch of infrastructure around it e.g. to identify bottlenecks, and make reuse easier. Souper is a cool project, and I definitely agree with the use of such techniques as a form of static/dynamic analysis to inform the user, rather than as a compilation step. Whilst the time taken by superoptimisation is a big problem, another big problem with this kind of approach is its unpredictability. Rather than using the output of such optimisers directly, it seems preferable to use those optimisers to find hints which we can annotate our code with; that way, the performance will be more predictable, and more robust to code changes.