|
|
|
|
|
by rectang
4227 days ago
|
|
I'd speculate that if you're unlucky about link order, two hot cache lines may get mapped to the same slot in an N-way associative cache -- whereas if you're lucky, they end up going to different slots and don't continuously evict each other. With regards to alignment... do linkers typically pack objects so tightly that the start of each object isn't aligned on a cache line boundary? AFAIK they're typically 32, 64, or 128 bytes. |
|
Probably, because caches line sizes are an implementation detail, not part of the architectural specification.