@GDCPresoReviews@mastodon.gamedev.place
2026-04-27 03:17 UTC
This is neat because you can model any cache behavior - not just the cache of the machine you're running on - so they modeled the Jaguar's cache.
And they captured the instruction pointer and the stack to attribute the accesses back to source code.
In the end, they ended up with a UI like this, which colored lines of code according to how many cache misses they caused. They also had a tree view, too.
3/4
Replies (1)
-
@GDCPresoReviews@mastodon.gamedev.place 2026-04-27 03:20
This is interesting to me, because if I was given this problem, the way I would have done it would be to query the hardware counters at every function's start and end, by using the linker to wrap every function (presented here: https://gdcvault.com/play/1015727/Runtime-CPU-Performance-Spike-Detection). So I was interested to hear that Insomniac took a completely different approach. Review: 7/10 They said it took them 2 weeks of work, which seems like a good cost/benefit ratio. They also gave a couple examples of using it to improve real perf.