It's easier to 10x code performance than 2x it(richiejp.com)
richiejp.com
It's easier to 10x code performance than 2x it
https://richiejp.com/how-to-10x-most-software
2 comments
It's definitely under rated that data locality may matter more than time or space complexity.
Most software though is doing really dumb stuff on I/O, or just doing work that doesn't need to be done.
Most software though is doing really dumb stuff on I/O, or just doing work that doesn't need to be done.
So many performance hits come from poor memory access patterns. Often "simpler" or "slower" algorithms have "better" performance for an application, because they allow for better memory access patterns and less cache invalidation.
Sometimes these sorts of things are localized and easy to fix. Sometimes the problems get "baked in" to an application's data structures and are hard to fix later.
High on the list of things to think about at the design stage is "how will X affect my cache usage?"