RulesOfOptimization

David's Rules of Optimization

#0. All optimization rules have exceptions

Except this one.

Corollary

Everything you know is wrong, in some situation.

Corollary

Everything I know is wrong, in some situation.

#1. Don't optimize

No, really. Go buy a faster CPU. Because if you're reading this for the first time, you probably haven't profiled your code and don't even know what needs to be fixed.

#2. Optimize your development time

Only spend time on code where you are fairly certain you can get a 10% overall speedup. This niche of the open source project space has lots of low hanging fruit. Go fix those instead.

A big result of this rule is that I have chosen to focus only on inner loops in liboil. Sure, it would be fun to do higher level stuff, but in the larger context, it's a distraction from liboil's main purpose: to make open source code faster.