Hacker News new | ask | show | jobs
by Olreich 2269 days ago
I’d argue that there’s at least two problems: software is needlessly complex, and no one understands what the computer is doing.

You might say that second one is the same, but our model for what a processor is and what it’s doing and how fast it’s working hasn’t changed in at least 10 years. Graphics cards have gotten faster, but still have a similar operating model. If anything access to low level systems has gotten easier to understand and harness.

Because all of this stuff is still the same, you can usually take a look at any piece of software and make it faster by aligning the code to what the computer is good at. That could be done by increasing data locality and widening the processing pipe with SIMD. Caching and cheating the calculations are also often good since they essentially skip work that will go unnoticed. This will often increase the code complexity, but improve the software speed.