Info Oblivion FPS Test

Page 2 - Seeking answers? Join the AnandTech community: where nearly half-a-million members share solutions and discuss the latest tech.

BoredErica

Member
Apr 26, 2022
41
64
51
The Fallout 4 Draw Call thread is successful so I was wondering if anyone was interested in an Oblivion FPS test. The reason why I want an Oblivion test is because the engine in Oblivion is very different from FO4. Not sure if anyone is interested but I figure it was worth a shot at least. Here is the procedure:

1. Ensure latest version of Oblivion is not running any mods, including OBSE or DXVK. (DLCs are encouraged.)
2. Replace Oblivion.ini with ini found in this link, and move the save file included to save directory. Keep the read-only flag on the ini. https://mega.nz/file/C1pynYKL#PcJqg3xUrNdaJWKwfpwl59HHiNGmjwKp29D4ldRagNw
3. Get FPS value 3-4 seconds after loading in. Try not to wait too long after that or take FPS before 3 seconds.
4. With just 1 mod (which has no dependencies), ImpeReal City - Unique Districts, FPS can be pushed down to 38FPS already on my CPU. DL is only 150kb. Get it here. (First or second DL, doesn't matter.)

Pictures are appreciated. :) If you've manually tune all subtimings on ram, let me know (binary, either you did or you didn't).

If Oblivion Launcher starts and says it is changing graphical settings, it should attempt to do so and fail silently since the ini is read-only. If you dunno where Oblivion ini goes because you don't use a mod manager, by default it belongs in My Documents/My Games/Oblivion.
1673212874398.png
 

Attachments

  • 1653674696662.png
    1653674696662.png
    1 MB · Views: 700
  • 1653674875976.png
    1653674875976.png
    1.1 MB · Views: 697
  • Untitled.jpg
    Untitled.jpg
    379.6 KB · Views: 29
  • Untitled.jpg
    Untitled.jpg
    394.6 KB · Views: 90
Last edited:

Det0x

Golden Member
Sep 11, 2014
1,028
2,953
136
Hi,
Thanks for the interest. Most of the results so far are from Discord channels in modding channels around Bethesda games (mostly from Nexus Mod Author channel). So if you play a lot of Bethesda games modded you might recognize some of the names.

eg:
halgari is now an employee of Nexus Mods,
Hazakthemad has Skyrim mods,
I made a few FNV/SSE mods,
Audley is in Fallout New Vegas community,
Wall_Sogb is in FNV as well, same for VishVadeva,
etc
When i try to load the save it is telling me that i'm missing some kinda object.
When i click "ok" the game loads but i get no FPS numbers displayed.. (?)

Need to change the resolution to
iSize W=800
iSize H=600
Since my monitor dont support your 960*540

Also needed to change these values to make the gamelauncher stop changing my settings:
uVideoDeviceIdentifierPart1=3619102270
uVideoDeviceIdentifierPart2=298803524
uVideoDeviceIdentifierPart3=429347651
uVideoDeviceIdentifierPart4=903004686

*edit*
Seem to have figured it out, and i will just use after burner to display fps
 
Last edited:

BoredErica

Member
Apr 26, 2022
41
64
51
When i try to load the save it is telling me that i'm missing some kinda object.
When i click "ok" the game loads but i get no FPS numbers displayed.. (?)

Need to change the resolution to
iSize W=800
iSize H=600
Since my monitor dont support your 960*540

Also needed to change these values to make the gamelauncher stop changing my settings:
uVideoDeviceIdentifierPart1=3619102270
uVideoDeviceIdentifierPart2=298803524
uVideoDeviceIdentifierPart3=429347651
uVideoDeviceIdentifierPart4=903004686

*edit*
Seem to have figured it out, and i will just use after burner to display fps
The test is supposed to run in windowed mode. I thought such problems only occured in full screen?
 

Det0x

Golden Member
Sep 11, 2014
1,028
2,953
136
The test is supposed to run in windowed mode. I thought such problems only occured in full screen?
7950x with highly tuned memory settings @ 6400MT/s
(showing aida64 memorybench to give you an idea)

Newest game version from steam

unmodded = 90fps
1668629792969.png

modded = 65fps
1668629883287.png

Could maybe optimize more by disabling one CCD..
Got exactly the same fps with only 8 cores..
 
Last edited:

BoredErica

Member
Apr 26, 2022
41
64
51
7950x with highly tuned memory settings @ 6400MT/s
(showing aida64 memorybench to give you an idea)

Newest game version from steam

unmodded = 90fps

modded = 65fps

Could maybe optimize more by disabling one CCD..
1668630932980.png
Incredibly strong result here. Adjusting for freq, yours is still a good 10% above halgari's result. What ended up happening with the resolution stuff? AFAIK for windowed, you shouldn't have issues with display resolution not being supported. If you changed the ini, you have to set it back to read-only or launch directly through exe rather than going through launcher. Was this done?
 

Det0x

Golden Member
Sep 11, 2014
1,028
2,953
136
View attachment 71333
Incredibly strong result here. Adjusting for freq, yours is still a good 10% above halgari's result. What ended up happening with the resolution stuff? AFAIK for windowed, you shouldn't have issues with display resolution not being supported. If you changed the ini, you have to set it back to read-only or launch directly through exe rather than going through launcher. Was this done?
I just ended up using 800*600 as i don't have a widescreen..
Recorded a short video so you can make sure the settings are correct :D
(yes ini was read only)
And memory speed is actually 6400MT/s.. Take a look here for more information.
GPU is a 3090
 
Last edited:
  • Like
Reactions: lightmanek

BoredErica

Member
Apr 26, 2022
41
64
51
I just ended up using 800*600 as i don't have a widescreen..
Recorded a short video so you can make sure the settings are correct :D
(yes ini was read only)
And memory speed is actually 6400MT/s.. Take a look here for more information.
GPU is a 3090
6400 on Zen 4? I believe you've pushed it to the limit of what zen4 can do. The game launcher will try to change your settings but as I said in the OP, due to the ini being read-only, the launcher will fail to do so (and not notify you). So if you kept trying to relaunch the game, the launcher will keep trying to reset the settings because it never managed to. Changing UID also works (but is more involved). I believe you would have to make a copy of the ini, set it to not read only, load launcher, close it, copy the UIDs, make the copy not read only, paste the UIDs.

Well, congrats on the very high score. I'm surprised the 7950x is performing so highly in Oblivion. Would you mind listing GPU just so I don't have an ugly grey square on my chart? :p
 
  • Like
Reactions: Det0x

Det0x

Golden Member
Sep 11, 2014
1,028
2,953
136
6400 on Zen 4? I believe you've pushed it to the limit of what zen4 can do. The game launcher will try to change your settings but as I said in the OP, due to the ini being read-only, the launcher will fail to do so (and not notify you). So if you kept trying to relaunch the game, the launcher will keep trying to reset the settings because it never managed to. Changing UID also works (but is more involved). I believe you would have to make a copy of the ini, set it to not read only, load launcher, close it, copy the UIDs, make the copy not read only, paste the UIDs.

Well, congrats on the very high score. I'm surprised the 7950x is performing so highly in Oblivion. Would you mind listing GPU just so I don't have an ugly grey square on my chart? :p
Sure, its a 3090 :)
Let me know if there is something else you want me to test before i uninstall Oblivion..
Did you also have a benchmark thread for fallout4 ?
 

BoredErica

Member
Apr 26, 2022
41
64
51
Sure, its a 3090 :)
Let me know if there is something else you want me to test before i uninstall Oblivion..
Did you also have a benchmark thread for fallout4 ?
There is a FO4 thread, but it's managed by someone else.

They've been waiting for Zen 4 benchies (they have multiple RPL already), so I'm sure they'd appreciate it.

I double checked the ini just in case, because the process to update UID requires a bit of care to avoid launcher overriding settings. But based on what I saw on your video, it checks out. That's it for now, thanks for the submission and going beyond in offering video. All this time I've been basing ideas about zen4 perf on reviews and halgari's submission. This kindda turns what I know on its head. If I assume a 7600x clocks 5.4ghz, that still puts vanilla fps at 83.5fps. Ram is probably not doing much because as I've shown previously (and with the 5800x3d submission), faster ram doesn't do much for Oblivion unlike FO4. And the amount of L3 should be the same per CCD. That puts 7600x at 8.3% faster than my heavily OCed 13600kf.

I checked if not having DLCs affected fps and failed to find a difference.

1668634075731.png

Also, this message is gonna take a while to show up cuz I keep getting flagged for moderation, the site thinks I'm like a spammer or something, I dunno lol.
 

Attachments

  • 1668633811614.png
    1668633811614.png
    160.6 KB · Views: 2
Last edited:

BoredErica

Member
Apr 26, 2022
41
64
51
In the popular player house mod Leveler's Tower for SSE, I made a mod few years ago that added occlusion planes for SE version of the house. I tested performance with my old 7600k (GPU was <90% utilization, same ram as now). FPS was 171 without my mod, 200 with. Now with my 13600kf I get 530fps. So x3 the FPS.

I've long since sold the 7600k, so it's not around for benchies anymore. Thought it'd be fun to share.
 
Last edited:
  • Like
Reactions: Elfear

MajinCry

Platinum Member
Jul 28, 2015
2,495
571
136
Bit of a necro, but hey. It's been real interesting reading the posts my old tests spawned. Now, about Oblivion performance...

There's a bunch of things at play, with there being not much difference between CPU architectures. It's from 2006, and the latest SIMD instruction during it's release was SSE2. We know that Bethesda has *a lot* of unoptimized functions, which the various Stutter Remover, Tick Fix, Heap Replacer, and other such mods for these games improve on.

New Vegas does not have compiler optimizations iirc, with New Vegas Anti-Crash replacing some instructions with SIMD ones for a performance boost.

Skyrim (32 bit) also did not use SIMD instructions at release. The mod SkyBoost replaced a good chunk of the code with optimized SIMD ones: http://www.dev-c.com/skyrim/skyboost/

This sounds absurd, but it's true. Bethesda released their biggest game ever, in 2011, without SIMD instructions. We're talking ancient x87 and x86 here. An interesting test would be to compare release Skyrim performance with the final version, and then contrast that to Oblivion's.

Another thing to test is D3D9Ex, which is a version of Direct3D 9 that was released with Vista, and modders have patched New Vegas (included in New Vegas Tick Fix), as well as Oblivion (Oblivion Display Tweaks), to use it.

*And there's more that we can do*. Like replacing Oblivion's DSound.dll with an OpenAL replacer (same idea as using DXVK to replace Direct3D) so it uses a much more optimized audio processing API, rather than whatever junk compatibility thing Microsoft has in Windows.

But that's all a colossal pain in the arse. It was hard enough to get the Fallout 4 test set up. I'd dread testing all the script extender plugins and .dll replacers, then getting everyone to test them as well.
 

lopri

Elite Member
Jul 27, 2002
13,209
594
126
Det0x is taking the top spot is not at all surprising! I do not know what this bench exactly measures, though. It seems like at a minimum I need to install Oblivion, correct?
 

lopri

Elite Member
Jul 27, 2002
13,209
594
126
Gosh it's been such a long time since I last played Oblivion. I might as well install it for old time's sake.
 

KompuKare

Golden Member
Jul 28, 2009
1,015
930
136
But that's all a colossal pain in the arse. It was hard enough to get the Fallout 4 test set up. I'd dread testing all the script extender plugins and .dll replacers, then getting everyone to test them as well.
There is always Wabbajack, but creating a modlist just for that: well it would make it easier for people submitting scores but I imagine (haven't looked) that even for "simple" modlists Wabbajack must have a steep learning curve. Plus, then if some files aren't on Nexus and you have to host them on mega or similar - a lot of work.
 

MajinCry

Platinum Member
Jul 28, 2015
2,495
571
136
There is always Wabbajack, but creating a modlist just for that: well it would make it easier for people submitting scores but I imagine (haven't looked) that even for "simple" modlists Wabbajack must have a steep learning curve. Plus, then if some files aren't on Nexus and you have to host them on mega or similar - a lot of work.

And then we have to supply the ini edits as well. I'll think of something, as it would be great to see what can (or can not) be done for performance
 
  • Like
Reactions: KompuKare

MajinCry

Platinum Member
Jul 28, 2015
2,495
571
136
Here are my results

CPU - Ryzen 9 5800X3D, stock

RAM - 2x16GB DDR4 3600Mhz CL16-20-20-46 (Stock Kingston Fury Renegade @3600Mhz)

GPU - AMD Vega 56

Modded - 35-37 (3 seconds in it's at 36, after that flunctuates between 35-37 fps)
Unmodded (still has ini edits) - 47-50 (3 seconds in, it's at 49)

I haven't tuned anything in the system. I'm also running Windows 10 2021 LTSC IoT, so I have whapped out a bit of the bloat and background stuff Windows is doing.

Edit: I also decided, just to see, how the modded Oblivion test runs with OBSE and all the various fixes for it. I didn't use D3D9Ex in Oblivion Display Tweaks, as I found it cut the fps to 24 in that modded scene.

Without dxvk, and with the OBSE plugins, the framerate is the exact same. But with both, the framerate is now between 44-49 fps.

So with DXVK and all, a solid 26% increase in framerate for that modded scene.

Didn't test with ENB.

Here's an archive with the necessary files for GOG and non-GOG versions https://mega.nz/file/65VwTJZZ#04k2zf36a5hsLtVzDkJ9rTOXRpiJBenrn8IqWevKklQ

Edit2: Interestingly, with DXVK, we can see the number of draw calls being made. That scene, with the DXVK renderer, is issuing around 7900 draw calls.
 
Last edited:

BoredErica

Member
Apr 26, 2022
41
64
51
There's a bunch of things at play, with there being not much difference between CPU architectures. It's from 2006, and the latest SIMD instruction during it's release was SSE2. We know that Bethesda has *a lot* of unoptimized functions, which the various Stutter Remover, Tick Fix, Heap Replacer, and other such mods for these games improve on.

New Vegas does not have compiler optimizations iirc, with New Vegas Anti-Crash replacing some instructions with SIMD ones for a performance boost.

Another thing to test is D3D9Ex, which is a version of Direct3D 9 that was released with Vista, and modders have patched New Vegas (included in New Vegas Tick Fix), as well as Oblivion (Oblivion Display Tweaks), to use it.

*And there's more that we can do*. Like replacing Oblivion's DSound.dll with an OpenAL replacer (same idea as using DXVK to replace Direct3D) so it uses a much more optimized audio processing API, rather than whatever junk compatibility thing Microsoft has in Windows.

But that's all a colossal pain in the arse. It was hard enough to get the Fallout 4 test set up. I'd dread testing all the script extender plugins and .dll replacers, then getting everyone to test them as well.
With no scaling w/ faster ram and below average benefit from larger L3, it's harder to improve performance than w/ FO4. FNV is better optimized because FNV community has a small but very dedicated bunch of people who try to dissect every single performance counter and try to optimize every piece of code. Oblivion modding scene is a lot smaller.

TBH, I think FO4 test would be better served by testing Faneuil Hall for shadows and a large settlement. I don't understand testing an easier scene (Diamond City) for AI and extrapolating that as perf representative of a large settlement. My gains 5600x -> 13600kf was ~40% in their test, and 79% in mine. Also I don't think it's correct way to do things to assume two similarish scenes of similarish draw calls mean the same load on CPU. Not a deal-breaker, but then people have to install ENB and and move the camera around to fish for the requisite draw calls. People can to a certain extent game the system in that process, and it adds another extra thing bencheres have to do to get the test set up.

Not that my test is perfect either. There is framerate variance, and doesn't test DXVK. Originally I didn't test DXVK because in my scripted testing while DXVK increased avg fps, it caused longer stutters. I now know the cause is d3d9ex being activated by default in OneTweak. There is evidence to suggest AMD GPUs decrease CPU perf in Oblivion, and it's possible DXVK evens the playing field. And if DXVK doesn't cause longer stutters then there's not much reason to play the game without DXVK. (Now it's possible to run DXVk on Nvidia and flip w/ borderless so it can be superior to non-DXVK in that respect too.)

Issue was, I wanted to make the test quick to do but unlike Fallout 4, I can't just build a big settlement and have it be representative of a modded playthrough. So I tried to build a test that is hard to run vanilla and w/ 1 mod w/o dependencies be even harder to run. If I were to redo it, I'd ideally do just 1 test that might require 1 mod, and try to have the scene be more stable. Oblivion is just a hard game to test because the perf issues come from a modded game and stuttering is a big issue which can't be tested without a script that I can't expect everyone to run. I have to think about this some more.

Skyrim might be sorta doable by loading Riverwood w/ heavy rain using Splashes of Storms and setting rain iterations very high, but that only applies to people who use this mod. Or RASS w/ dust visuals in Solstheim.

Also, thanks for the submission.

1673212848497.png

Also, I think performance issues in FNV/SSE/FO4 are issues that can be solved in next few years (if the target is 120-144fps gaming). If SSE/FO4 keep seeing scaling w/ 3d parts, then by zen5 3d I think even hard settlements will be running 100fps and up. Oblivion will still struggle more and 3dcache won't be here to save it.

OFC, 240fps SSE/FO4 gaming will be a thing in the future but especially on FO4 it will really only be viable at 1440p because a 4090 is probably getting ~140fps in tricky parts w/ how stressful it is at 4k, and that's w/ godray quality on low. Serious TAA blur at low resolutions like 1440p. Skyrim, ~100fps in tough GPU limited scenarios w/ DLAA, but add in grass LOD and 8k shadows (nessesary for not garbage shadows if shadow distance is extended), it looks very tough to run again. And that's before I add in ENBs.

So I think not too many years from now I'm looking at CPU perf primarily for Oblivion or Skyrim startup times (faster CPU is far bigger impact than faster SSD for startup times w/ MO2).

1673214249827.png
Look at these startup times. Down to very low 20s for startup time now (start on MO2 -> main menu + mod autoloads last save -> able to move a frame in game through player input w/ loading fades set to zero). Very strong scaling w/ faster CPU. I'd like that number down to 10s like Fallout NV or Oblivion is for me. Unfortunately 3d cache does nothing for this, and 5800x3d performs poorly in this metric.

And while I'm doing show and tell, an aggregate of 30 scripted runs of running through Anvil (no DXVK), both with 3080ti, both ddr4. note the 'worst frametime ms'. Stuttering is still scaling w/ faster CPU:
1673214396824.png


FPS measured via script for the FO4 numbers, by eye only on Oblivion ones here for my ram scaling test:
1673214633165.png
 

Attachments

  • 1673212794230.png
    1673212794230.png
    180.5 KB · Views: 8
  • 1673214575371.png
    1673214575371.png
    12.6 KB · Views: 5
  • 1673214594784.png
    1673214594784.png
    12.5 KB · Views: 4
Last edited:

MajinCry

Platinum Member
Jul 28, 2015
2,495
571
136

This is good stuff.

The reason for picking Corvega for draw calls, and Diamond City as another scene to test, is mainly because it's consistent. With settlements, all sorts of things can affect performance.

Lots of small items inside one of the static buildings? They'll get culled unless you have a specific, perfect angle to see into the building.

Lots of the same building pieces? Fewer SetTexture calls in the draw calls. Lots of different building pieces? More SetTexture calls.

Add in lights, shadows, and how object size affects them... Bleh. Easier to just pick a static in game environment. And the reason ENB was used, is to measure draw calls. The camera fiddling was a faff, and is due to the camera resetting the angle for some reason IIRC.

The evidence is murky. Lots of people talk about driver overhead, but afaik, AMD and NVidia are neck and neck. There can be situations where in one renderer, NVidia pulls ahead, and in another, AMD. But that's on the renderer.

For stutters being affected by faster CPUs, that will be the CPU processing the compressed archives faster. The solution is to decompress them, which is what the TTW project for Fallout New Vegas does, as it really helps stutters and loading. It's not as noticeable with Fallout 4 & SSE due to the insanely large archives and better compression algorithm, as well as textures needing to be in a compressed archive or they won't be loaded.


SSE & Fallout 4 use LZ4 compression
Oblivion, Fallout 3 & New Vegas use ZLib
Can't find anything on Morrowind's archives

Try giving this a go to decompress Oblivion's archives, and compare startup times on your systems: https://www.nexusmods.com/oblivion/mods/49652

You'll want to do that on an NVME SSD, SATA caps out at 500MB/s reads

Edit: To see the FPS in Oblivion, open the console and type in: TDT

That loads a UI that shows the current framerate. That's what I used to measure.
 

BoredErica

Member
Apr 26, 2022
41
64
51
This is good stuff.

The reason for picking Corvega for draw calls, and Diamond City as another scene to test, is mainly because it's consistent. With settlements, all sorts of things can affect performance.

Lots of small items inside one of the static buildings? They'll get culled unless you have a specific, perfect angle to see into the building.

Lots of the same building pieces? Fewer SetTexture calls in the draw calls. Lots of different building pieces? More SetTexture calls.

Add in lights, shadows, and how object size affects them... Bleh. Easier to just pick a static in game environment. And the reason ENB was used, is to measure draw calls. The camera fiddling was a faff, and is due to the camera resetting the angle for some reason IIRC.

The evidence is murky. Lots of people talk about driver overhead, but afaik, AMD and NVidia are neck and neck. There can be situations where in one renderer, NVidia pulls ahead, and in another, AMD. But that's on the renderer.

For stutters being affected by faster CPUs, that will be the CPU processing the compressed archives faster. The solution is to decompress them, which is what the TTW project for Fallout New Vegas does, as it really helps stutters and loading. It's not as noticeable with Fallout 4 & SSE due to the insanely large archives and better compression algorithm, as well as textures needing to be in a compressed archive or they won't be loaded.


SSE & Fallout 4 use LZ4 compression
Oblivion, Fallout 3 & New Vegas use ZLib
Can't find anything on Morrowind's archives

Try giving this a go to decompress Oblivion's archives, and compare startup times on your systems: https://www.nexusmods.com/oblivion/mods/49652

You'll want to do that on an NVME SSD, SATA caps out at 500MB/s reads

Edit: To see the FPS in Oblivion, open the console and type in: TDT

That loads a UI that shows the current framerate. That's what I used to measure.
I wrote a long reply explaining every detail and Anandtech forums deleted my post, god knows why. Every post I make on this stupid forum gets flagged for moderation, and I really don't want to post here anymore because of it.

To heavily summarize:
Traversal stutter is not only due to compressed BSAs, that is an oversimplification. People get stutters in SSE which uses lz4 and FO4 which uses zlib (not lz4). FNV uses zlib but situation is way better than Oblivion despite being released much closer to Oblivion than FO4, though people still complain of it in xnvse Discord. BSA size is not an issue, just make more esps (or ESL for Skyrim). Uncompressing bsa in Oblivion/FNV has been standard procedure for many years now, and I've done it for many years, and I uncompress everything even in SSE, and even SWF files w/ JPEXS. If compression were the issue, I'd expect stutters to decrease as I mod the game because more files are being replaced with loose files, which is what most Oblivion modders do, and especially in Oblivion because of bsa conflict engine bug that only got bypassed w/ Skybsa in Aug 2019. Being a modder I've asked multiple modders from xnvse, Nexus mod authors discord, etc to confirm.

1673343868862.png
Happened to have this image around so I'll repost it.

And finally, I worry by chasing consistency we've made a test that is consistent but irrelevant. If a test has 10% variance, my 5600x ->13600kf result might show 44% benefit rather than 40%. Yet in my Faneuil Hall and large settlement test, that difference is 80%, which is 100% difference which is far larger. (The 80% figure was w/ a script so lower margin of error than human testing, ini was close to default.) If you grant my test is closer test to hardest loads in the game, then run to run variance is dwarfed by just being closer load to hardest loads.

I've lost all motivation to talk further because I've never seen a forum run this poorly and I've never done anything to make moderators think I'm a spammer, so I am dropping this topic and going back to only posting benchmark results, sorry.
 
Last edited:
  • Like
Reactions: MajinCry

MajinCry

Platinum Member
Jul 28, 2015
2,495
571
136
Aye the forum is really awful. I get the anti-spam lockouts too. I'll just touch on this:

If compression were the issue, I'd expect stutters to decrease as I mod the game because more files are being replaced with loose files, which is what most Oblivion modders do, and especially in Oblivion because of bsa conflict engine bug that only got bypassed w/ Skybsa in Aug 2019. Being a modder I've asked multiple modders from xnvse, Nexus mod authors discord, etc to confirm.

Actually loose files make it much, much worse. As each loose file is an I/O read, and only Optane drives are able to handle multiple file reads without a big increase in latency & drop in read speeds. Merging the loose files into .bsa archives is heavily advised.