I like the fact that you touched on hardware. This seems to be a topic that is avoided when talking about optimization. The fact is you can only take your code so far, hardware on the other hand can be almost infinite(through expanded hardware, and clouds). Well done.
These are some interesting tips. I've never touched the hardware (I'm not a specialist) but must say that some of those advices made me think about it. Interesting post.