3 ms·
Fiora refactored the MMU code emitted by Dolphin to a far jump, which had significant performance improvements over inlining the code [0]. She had an article ab
by Jasper_ 7y ago
Fiora refactored the MMU code emitted by Dolphin to a far jump, which had significant performance improvements over inlining the code [0]. She had an article about it in PoC || GTFO [1].
[0] https://dolphin-emu.org/blog/2014/09/30/dolphin-progress-report-september-2014/#40-3194-fioras-fantastic-faster-mmu-by-fiora https://dolphin-emu.org/blog/2014/09/30/dolphin-progress-rep...
[1] https://github.com/angea/pocorgtfo/blob/master/contents/issue06.pdf#page=6 https://github.com/angea/pocorgtfo/blob/master/contents/issu...
- pcwalton 7y agoInteresting, that's a good case. Though it's a bit of an extreme one, because it's jitcode for a CPU emulator. I'm not sure how relevant that is to Rust, though it's certainly worth keeping in mind.
- Jasper_ 7y agoIn my experience, i$ is much bigger than everyone thinks, and they over-emphasize optimizing for it whenever someone brings up code size. It can soak up a lot. That said, for JITs, where code is not accessed very often and in weird patterns, it can matter quite a lot.
- jcelerier 7y agohm, I've run a lot of profiling of various software through the years and never once instruction cache misses have been a problem, in large template-rich boostful C++ codebases