@vurtun@mastodon.gamedev.place
Post #4470010
2026-06-21 09:38 UTC
Lessons learned: SoA is not good enough. Faster is AoSoA with block size including stack filling L1 cache.
Do NOT use 4K sized arrays ( cache set size). Causes cache aliasing since bits of 4k offset have same addr bits (6-12) so forced into same cache set.
Also OS use 4KB pages. Same 12 bits for virt addr and phy addr. Speculative execution tries to rearrange load before store unless same addr (12 bits check). 4k Aliasing causes false alarms causing 10 to 50 clock cycles per instance.
Replies (0)
No replies.