9 ms·
Note: unaligned doesn't always mean cache-line splitting. Unaligned 64-bit loads & stores within a cache line incur no performance penalty on modern Intel archi
by dist1ll 3y ago
Note: unaligned doesn't always mean cache-line splitting. Unaligned 64-bit loads & stores within a cache line incur no performance penalty on modern Intel architectures IIRC.
Also, reading a cache-line in shared MESI state should not cause false sharing degradation, only writing.
- pclmulqdq 3y agoUnaligned doesn't always mean cache-line splitting, but aligned means never splitting cache lines. Also, you're correct that aside from caching effects, unaligned loads and stores generally carry no penalty on x86. This is one of the smarter (IMO) things that Intel/AMD have done to keep x86's market share.
- gpderetta 3y agoIt can still penalize another writer by forcing its exclusive line into shared. It is not as expensive as a concurrent writes but it is a significant measurable overhead to what would otherwise be a write private line.
- deleted 3y ago[deleted]