A long presentation I gave at work on how memory works, why caches are the way they are and how we as programmers can take advantage of them.
The paper I mention at the end is https://www.akkadia.org/drepper/cpumemory.pdf
Also worth reading is Agner Fog's documentation at www.agner.org/optimize/