I write mostly C and realize there is a lot I don't know about how the underlying hardware deals with the code - cache comes up a lot.<p>What are some references that can help me get a better grasp on topics like this, with respect to modern hardware?
Hennessy and Patterson, <i>Computer Organization and Design</i> and definitely NOT <i>Computer Architecture</i>. CA is a great book and I'm partial to the 4th edition but CA is not for you. COAD is for you.<p>There is an ARM edition of COAD but there isn't an edition for x86. If you could wait for the next edition of the ARM book, it would be good since the 1st was evidently rushed. Read chapters 1, 5 and 6 but spend a lot of time on chapter 5, <i>Large and Fast: Exploiting Memory Hierarchy</i>.
You could do a lot worse than reading all of the references on <a href="https://danluu.com/new-cpu-features/" rel="nofollow">https://danluu.com/new-cpu-features/</a>.