Recently in . Optimization Category

Listen to your machine

It is possible to run Oblivion with 150+ mods and no crash to really speak of (except when I don't let my game breathe and try to push it too fast).

I know for a fact Oblivion is very sensitive to system bottlenecks. Meaning that you have to think about anything that may get in the way of Oblivion running - antivirus software, background job, fragmentation of hard-drive, resolution too high for your configuration, etc.

For example, I used to have a crash every couple of hours or so, until I looked at memory usage while I was playing and found out Oblivion crashed when it reached 2 Gb of memory (on XP). So I went back to optimization mods, including streamline 3.1, to try and shave as much as possible from my memory load. The result - 15 to 25 fps on an old Pentium 4 3 GHz with 3 Gb of RAM and 512 M of VRAM.... and maybe one crash every play session (not counting crash on exit).

Now, after I moved to my new Mac Pro (with 8 cores), I found Oblivion doesn't crash anymore. I used to crash on exit a lot (well... duh ! you might say). The main difference is that the new machine can handle the load of files loaded into memory a lot faster than the old one. So I tried to ramp up my settings to see if I could make it crash again and sure enough, by increasing the display resolution of the game, I went back to one crash every play session or more.

Try playing Oblivion in Window mode, at a lower resolution, with as many optimization mods as possible to reduce the load of the game on your system. Learn to 'listen' to your system and get a feel of when it is trying to catch up with you. If you are running all the time, slow down when you hear your machine is loading new areas. I installed a Fatigue mod just to get a better rhythm and force me to walk once in a while.

Let your machine breathe.

Oblivion on a Mac Pro

The game feels like a very different beast now that I had a chance to upgrade my main desktop to an 8-cores Mac Pro.

After installing bootcamp and migrating my files (including my customizations of Morrowind and Oblivion), I could take the game for a drive on this new machine. Multiple cores really make a difference compared to Hyperthreading, even though only two out of the 8 cores are used at any given time. Spreading the load of .bsa files across two SATA drives help a lot as well.

For now, I am going to leave most of my optimizations in place (except for re-enabling the flickering of candle light). With these optimizations and the new hardware, I am finally reaching framerates between 30 and 70 fps in some outdoors areas while remaining above 20 fps in some crowded city areas.

Still, even with the increased power, the game tends to crash a lot more if I try to play with a resolution above 1280x900 pixels. And since I had to trade my ATI card by an Nvidia, I have been confronted to the ugly Nvidia black screen bug.

The fun of troubleshooting just never ends...

Load balancing for Oblivion

A great optimization tip picked up on the development thread of Jaga Telesin's ORB - it is possible to spread your .bsa files across multiple hard drives.

Simply create a (short name) folder on other hard-drives you may have in your machine and move heavily used .bsa files to these folders.

For example, I created a : E:\TES and G:\TES folder on two of my additional drives (Oblivion itself is installed on H:\Games\Oblivion).

Once the files are copied in these folders, you still have to edit your Oblivion.ini file to add the new path to the corresponding .bsa files (edit the line with : sArchiveList=).

Here is a detailed explanation from Jaga about this tip.

ORB stands for Oblivion Resource Balancing. After the amazing Streamline 3.1, Jaga's new project aims at creating a set of .bsa files and distribute them across multiple hard-drives for optimal performance.

This is one project to watch closely...

Note:

When using multiple hard drives, people should make sure that their Power Management settings are set to Never put hard drives to sleep.

It should be obvious with hindsight, but I found out that my system was set to put HDs to sleep after 20 minutes, which translated with occasional lags when Oblivion tried to access .bsa files on a drive that needed to be 'awakened'.

Also, under Vista, I saved valuable resources by disabling the Indexing service on all unnecessary drives, especially the drives hosting my .bsa files.

Streamline in a nutshell

How to configure Streamline 3.1 for better performance ?

Difficult question to answer since it depends on so many parameters : your CPU, memory, video card, hard drive, services running on your machine, other mods you selected. Any of these can require different adjustments to your Streamline configuration. There is no "one size fits all" set of parameters.

The only solution is really to read the instructions and try different settings for the oblivion.ini and sl.ini files.

Here are a few settings to look for in SL.ini to get you started (the values are the ones I am using):

set SLh.SLmode to 3 ; Memory Purge Mode (1-6) (Default: 3)

--- to change the frequency of memory purge in your system. Increase or decrease depending on your memory or if you get stuttering.

set SLfpsmon.High to 20 ; Highest minimum FPS (top of range)
set SLfpsmon.Low to 15 ; Lowest minimum FPS (bottom of range)

--- to set your desired framerate target. Streamline will try to adjust visual details to keep the framerate within these limits.

set SLv.maxVLOD to 80; Highest overall level of detail (%)
set SLv.minVLOD to 10 ; Lowest overall level of detail (%)

--- to set the limits of level of details. These values ensure that level of details will not drop to 0 (10 % minimum) but will not go to the maximum either (80% maximum). You can try 100% or other values depending on your configuration.

set SLv.MinDistanceFog to 17000; Min distance before fog starts (0%)
set SLv.MaxDistanceFog to 71000; Max distance before fog ends (100%)

--- change these values using the .htm document you will find in the documentation folder. You will have to edit your Oblivion.ini file manually to set two uGridDistant and uGridDistantTrees parameters. Mine are set to 12 and 12. If you look at the .htm file in the documentation folder, you will find values for min and max distance fog corresponding to uGrid values. Use these values here.

This is a basic overview of what you will have to do to tweak your Streamline. There's a lot more SL can do to adjust to your configuration but this should get you started.

System specs and performance

Here is the hardware I have to deal with:

  • CPU: Pentium 4 with HT, 3.2 GHz, 3 Gb of RAM
  • Video card: ATI HD 2600 AGP, 512 M of VRAM
  • Resolution: 1280x768 in windowed mode
  • Graphics options: HDR, Tree Canopy shadows, fixed trees LOD
  • Oblivion installed on dedicated SATA 10,000 RPM drive

I want to play with these 'heavy' mods:

  • Almost Everything Visible When Distant (standard version)
  • Qarl Texture Pack 3 redimized
  • Unique Landscapes, better Cities mods
  • OOO + MMM
  • Illumination Within Revived
  • City Life + Cats + Dogs
From experience, a comfortable framerate expectation is around 20 to 25 frames per seconds.

To help absorb the load, I installed the following optimization mods :

  • QuietFeetMax
  • Low tri-poly grass (from RPGBlackDragon, levels s-2).
  • Natural weather only (no optional Natural Environment mod, only the weather)
  • Enhanced Water (low resolution)
  • Texture, meshes and sound .bsa file distributed on three hard drives for load balancing.
I'm also using a performance utility without which I would simply not be able to experience the game in the way I would like to:

Streamline 3.1 beta (20/15 fps target, uGrid settings for Streamsight : 12/12)

The results:

  • Anvil docks: 9 to 15 fps
  • Anvil city: 10 to 25 fps
  • Road from Anvil to Kvatch: 10 to 25 fps
Close to the target framerate, a little bit on the low side.

Optimizations

Granted.. I don't have the latest rig available.

But my P4 3GHz with HT, 3 Gb of RAM and Radeon X1600 is able to run other graphically intense games smoothly - including Call of Duty 4 or Crysis.

I keep reading of people running several mods and getting framerates in the 40 to 60.

The most I can get at the moment is an average of 13 ! indoor and outdoor.
Edit: I am running the game under Vista - with minimum services running in background - 1360x1050 resolution, shadows from tree canopy only and HDR (no AA)

So... what am I missing ?

I read Oblivion optimization guides (and updated my Oblivion.ini file accordingly).
I installed Oblivion on a SATA hard drive with 10000 RPM and keep it defragmented frequently.
I use Streamline with fairly aggressive settings.

On the other hand, I am using Almost Everything Viewable When Distant (with small textures) as well as QT3 textures. Oblivion would not be the same without these two mods.

Based on answers to this question in a post at the Bethesda forum, I managed to add much needed 'frames per seconds' to my Oblivion experience :

- Turning off the Vsync option improved performance significantly. It is recommended to use that option only if you get tearing effects on your screen - since I don't have that problem, I can safely get rid of that option.

- I increased the size of iPreLoadSizeLimi in the Oblivion.ini setting to reflect the use of both MMM and OOO (according to explanations from Jaga Talesin in the Oblivion Performance discussion thread)

- Using Qarl Texture pack reduced (regular version) and Almost Everything Visible When Distant (light version) reduced a lot the impact of the game on my video and system memory

- I eliminated the impact of unnecessary sound files by installing QuietFeetMax. I can easily play without having to hear the footsteps of creatures in the game.

The result - an increase of average fps from 5-10 to 10-15. A difference large enough to make the game finally playable with the mix of mods I would like to have.

Hard Drive access is definitely a bottleneck for Oblivion and the cause of a lot of Crash To Desktop..

Oblivion will run smoother if you follow these tips with regards to Hard Drives.

- Install it on the fastest hard drive you have (if you have more than one)
Use softs like HD Tack to measure speed of your drives : http://www.simplisoftware.com/Public/index...?request=HdTach

- Defragment your Oblivion Hard Drive often (softs like Diskeeper have a feature to automatically defragment files based on usage)

- Make sure you have plenty of room left on your drive. This is particularly important if the game is installed on the system drive.

- Disable any background task that would compete with Oblivion for HD access (spyware scans, search engine indexer, etc)

- Disable background music (it worked like a charm for me)

- Use mods like Streamline to better distribute the load of new resources into the game

Two performance boost tips

- Disable the background music altogether and use only sound effects. The constant loading of new MP3 files for the background music can have a serious effect on you performance depending on your system.

Edit oblivion.ini file and set :  bMusicEnabled=0

- Remove the Natural Vegetation part of Natural Environments, especially if used in conjunction with Unique Landscapes Mods.

- Check out this Bethesda forum thread for performance enhancements mods


 

Optimizing Oblivion

Here are a few tweaking guides for Oblivion that helped me squeeze some performance from this game:

Optimizing Oblivion v3.0: Into Modblivion (atomic pc)

Oblivion Tweak Guide

Note: 'over tweaking' the oblivion.ini file can result in degraded performance. Especially if you switched to the 1.2 version of the game (either with the official patch or through Shivering Isle).

If you did upgrade, it is recommended to rename your 'oblivion.ini' file,  let Oblivion create a new default copy and then, use a file compare utility (such as beyonCompare) to bring in some of your old tweaks back into the new file.

Version 1.2 of the game is relying on several changes to the configuration file that you may be missing or altered with an older tweaked file. 

For a few lists of graphical improvements :

Better Oblivion: Graphical improvements