Performance Degradation Between Tiger and Yosemite

I hate1 to keep going on about stuff like this, but it’s really important to the overall user experience. OS X engineers might consider peeking over WebKit’s proverbial shoulders:

The way to make a program faster is to never let it get slower.

We have a zero-tolerance policy for performance regressions. If a patch lands that regresses performance according to our benchmarks, then the person responsible must either back the patch out of the tree or drop everything immediately and fix the regression.

Common excuses people give when they regress performance are, “But the new way is cleaner!” or “The new way is more correct.” We don’t care. No performance regressions are allowed, regardless of the reason. There is no justification for regressing performance. None.

A similar level of attention to and focus on performance might be applied to OS X — and, for that matter, iOS: performance should not regress. That’s a very tall order for the demands of an operating system, especially before the inclusion of new features, but on recent hardware, it should be a reasonable guideline. Users should not have to worry that using the most recent version of an OS will impede the performance of their computer, tablet, or phone.

  1. I don’t. ↥︎