TES IV Oblivion – horrible performance on modern hardware

performancethe-elder-scrolls-iv-oblivion

I have an AMD FX-6200 (3.8GHz, six cores) with a Radeon HD 6870 (1GB VRAM) and 8GB RAM. Playing Oblivion on maxed details I get around 10 FPS when standing in the middle of Niben Bay and looking across the water. In the Elsweyr/Anequina desert I get even less, so it's not just a weird problem with reflection or something.

I know that Oblivion is pretty heavy on the CPU and not really optimized for multiple cores. However, it doesn't even seem that Oblivion taxes any core to its fullest. I monitored the total system load on the hardware over a few minutes of playing and these were the results:

CPU: 80%, 75%, and 40%; the load on the other 3 cores was negligible. Those are the peak values, so at least 20% headroom there.

RAM: 4GB usage, with another 4GB headroom. I have enabled LAA for Oblivion, and when I play for longer it goes up to 5GB. So this doesn't seem to be the bottleneck either.

GPU usage: 10% peak; clearly this isn't the problem.

GPU memory: 800MB used, with 200MB headroom.

So what's the bottleneck? It can't be the HDD since then I would get stuttering while loading areas, but once they are loaded into the RAM it should run fine, right?

I should probably mention that I have a ton of mods installed (no ENB though) but while I am aware that this slows the game down, considering that this is a comparatively new machine 10 FPS still seems far too little. Especially since I can run maxed Skyrim just fine and I can't find a bottleneck anywhere.

So what's wrong and how can I fix it?

Best Answer

This problem happens inevitably when running lots of newer, more performance intensive mods. Oblivion's engine was simply not designed for the level of modification and extensions that are frequently used today. Certain aspects such as how it manages it's memory are hard coded and do not take full advantage of modern hardware. There are several technical limitations to it that prevent it from fully benefiting from modern hardware.

That being said, in the last couple years I've seen some insane community effort to extend Oblivion's engine capabilities: Oblivion Stutter Remover (OSR) replaces the vanilla memory manager with one that scales appropriate on larger hardware and allows for greater script performance (more actors on screen, extra global scripts (i.e additional ambient sounds, window light mods, etc). ENBSeries for Oblivion offers a lot of neat graphics effects (I personally prefer Oblivion Graphics Extender V3 as it offers more enhancements), but interestingly in the latest version it offers the ability to create a second, 64-bit exectuable to act as an additional "memory bank", hooking into and extending the size of Oblivion's heap. This is really helpful for some graphics mods such as highly detailed distant buildings, ultra high-res textures, etc.

You can also tweak Oblivion's config file (Oblivion.ini, in your MyGames folder) to increase some of it's vanilla engine perameters (reserving more memory ahead of time, loading more into RAM at once, etc).

Ultimately though, you have to reduce your mod count. Boil it down to whatever small amount of mods improve the game the most for you.