ZLR uses a lot of memory, relative to the size of the games it's interpreting. Most of this seems to be cached code, and reducing the cache size has a direct performance impact.
Investigate the impact of overlapping fragments and look for a way to reduce overlap.