So PS2 runs like ***, and not just in the big fights. I've identified a memory issue and I'm not sure if it is specific to the VM setup, to windows, or to something PS2 does. I'm running a VM windows 7 home premium guest on 3 cores of a i7 6700K 4ghz with an old GF660 card on vfio passthrough on a linux host. Yes, this is a rather peculiar setup, and it took quite a bit of experimentation to get it to even borderline playable. Here's a thing I noticed though: Performance starts out ~100fps at the warpgate, and goes down the gutter as soon as memory usage reaches 50% total according to the windows task monitor (shift-ctrl-escape) what does this look like? Well, I can give the VM 6 gb of ram or 8gb or even 12 gb. In either case, before starting PS2 it'll use like 1.5gb of ram (for windows itself) and as I run PS2 the memory will fill up until it reaches half the total. That means, it'll run up to 3gb total usage if I set the memory to 6gb total, and then the game starts stuttering and not really increasing its memory footprint anymore. If I set it to 8, 10, 12gb ram usage (I have 16gb physical memory) it'll take a minute or two to fill up to 50% usage and start stuttering. What is the stuttering like? It feels like 10fps but it displays as 40 fps. so, being a programmer myself, I can immediately tell what is happening: PS2 is streaming in data constantly, causing the memory footprint to increase. Until at 50% total ram usage (for some reason) the garbage collection kicks in and tries to free up "unused" memory to go below 50% again. And this GC process is so slow it makes single frames take like 100ms. It only happens every few frames, making the game feel like its 10fps while displaying 40fps. And adding more RAM to the VM doesn't work, all that does is delay the point at which the 50% ram usage mark is reached somewhat and the stuttering begins. What kinda might work as a workaround might be to just add additional pre-rendered frames, triple buffering, such things, which cause additional input lag. They don't fix the underlying problem. So how do I fix the underlying problem of the garbage collector messing up everything? You simply can't have a GC delaying frames like that, that's crappy programming. If anything you have the GC in a separate, non-blocking thread! And how do I convince PS2/Win7 to actually use 100% of my ram, instead of only working to the half of it? This might be some windows setting that I'm unaware of.