← Back to context

Comment by Gibbon1

15 hours ago

Processors I mostly write firmware for have little cache at all.

I think cache friendly code also tends to be reason about friendly and debugger friendly. None of that is remotely premature optimization.

> I think cache friendly code also tends to be reason about friendly and debugger friendly.

Not sure what examples you have in mind, but the very first things I think of when I hear cache friendly code are cache-blocking and cache-oblivious algorithms, which are quite the opposite of that. See also B-trees vs. binary search trees, etc.

  • I usually start with simpler things like paying attention to locality of reference and adjusting data so that it takes up less space in memory.

Even CPUs like the ARM cores have caches, usually 16K, occasionally 32K, and even larger L2 caches (512K).