Jump to content

Possible Band-Aid for FPS issues


myucka

Recommended Posts

Hi All!

 

Long time reader, first time poster.

 

I found a mod from Fallout 3 that, when paired with SkyBoost made a huge impact on my framerate everywhere.

 

My system isn't the best, but it is not bad. When I play Skyrim on High settings (what the setup sets for me), I am lucky to get 25 fps. I also get lots of slowdowns in caves, near waterfalls, etc.

 

In any event, I found Fallout Stutter Remover, which, when paired with Skyboost brings my game up to roughly 38-41 fps on average. I have started adding mods without a major fps hit. I get periodic lags, but nothing like before. I have even gotten it above 60 fps in places. That was unheard of until now.

 

I have dialed back on a few settings and am not on Ultra, but I am in a spot between High and Ultra based on some of my ini settings and the setup sliders.

 

The mods I have right now are:

 

Skyrim HD

Female muscle mod

Quality World map

Better Gold

Categorized Favorites

Enhanced Night

Realistic Lighting without Post-Processing

Realistic Water Textures

SkyUI

Xenius Character Enhancement.

 

I plan on adding more, but so far, I am really impressed.

 

I don't know if this will be helpful for anyone else, and it is a try at your own risk, but it may be worth it to get some playability back.

 

Good Luck!!

Link to comment
Share on other sites

Honestly, I'm not too sure. All I know is that by itself, SkyBoost did not help me, but when paired with the stutter remover, I basically doubled my fps. The game was pretty much unplayable and constantly dropped my frame rate below 15 and maxed out at 23. Now, I'm not dropping below 35 fps 95% of the time.
Link to comment
Share on other sites

Honestly, I'm not too sure. All I know is that by itself, SkyBoost did not help me, but when paired with the stutter remover, I basically doubled my fps. The game was pretty much unplayable and constantly dropped my frame rate below 15 and maxed out at 23. Now, I'm not dropping below 35 fps 95% of the time.

 

So you have FOSE installed? Does this conflict with SKSE?

Link to comment
Share on other sites

I thought The stutter removers were all FPS limiters?

 

Or, does this do something else?

 

====================================

7. How This Works:

====================================

 

This is an FOSE plugin dll. It basically hacks Fallout.

 

7.1: FPS Management:

The FPS management code monitors framerates and adjusts the flow of gametime. It mitigates stuttering by making Fallout game logic not skip ahead when it does stutter. Effectively, frames that take a long time end up being in slow motion. This is done by making Fallout act as if iFPSClamp were set to MinimumFPS, but only for frames that are slower than MinimumFPS. This may also improve stability. It can also impose a maximum framerate - some people perceive Fallout as smoother when its framerate is prevented from exceeding half the refresh rate, plus this helps free up resources for Fallouts secondary threads.

 

The FPS management code can also puts the main thread of Fallout to sleep for brief periods of time, which has been oberved to improve stutter for some people (though that functionality may have been made redundant by other things this plugin does).

 

7.2: Critical Sections:

Critical sections are microsoft-provided thread synchronization primitives that Fallout uses internally to make sure that threads don't accidentally corrupt each other. FSR by default makes most critical sections attempt to play fair even at the cost of throughput, making sure that no thread hogs a resource that other threads need. However, one specific critical section is overriden to use a slightly less fair method, and another specific critical section is suppressed so that it has no effect at all. And that's all very configurable from the ini file. Also the spincounts get overriden.

 

7.3: Heap Replacement:

This feature is not working properly on Fallout 3 yet.

 

7.4: Hashtables:

Fallout includes a bunch of hashtables for looking up all sorts of things. They use a generally horrid hashtable implementation, but the real problem is they never resize their hashtables. When a hashtable gets overful, performance drops. If a hashtable is underful then a tiny bit of memory may be wasted. Unfortunately, much of the hashtable code is inlined all over the place, and FOSE makes various assumptions about the hashtables as well, and its not at all clear to me what the relevant threading model is supposed to be, so changing them safely is quite difficult.

 

Still, I have some hashtable hooks, and they're gradually getting better. FSR can increase the size of hashtables once they get overful. The act of resizing them is fraught with problems however - it can cause crashes or glitches, and the methods I use to prevent it from doing so can cause small performance stutters or other crashes or glitches. Still, at this point I think it might be working kinda decently. In the future I may replace or suplement this with overriding the initial sizes of certain hashtables.

Link to comment
Share on other sites

@M0rningLightM0untain:

 

First, thanks for the copy and paste and to answer your question; having SKSE installed does not seem to have an ill effect. I was running the game for about an hour last night in different spots where I remember getting lag and with my newest save file. I noticed periodic "bumps" of dropped fps, but that only seemed to happen outside and that was after I installed a high resolution texture mod. So far, there are no problems with SkyUI or anything that is run with SKSE.

 

Again, this is with my machine, so mileage may vary.

Link to comment
Share on other sites

I thought The stutter removers were all FPS limiters?

 

Or, does this do something else?

 

====================================

7. How This Works:

====================================

 

This is an FOSE plugin dll. It basically hacks Fallout.

 

7.1: FPS Management:

The FPS management code monitors framerates and adjusts the flow of gametime. It mitigates stuttering by making Fallout game logic not skip ahead when it does stutter. Effectively, frames that take a long time end up being in slow motion. This is done by making Fallout act as if iFPSClamp were set to MinimumFPS, but only for frames that are slower than MinimumFPS. This may also improve stability. It can also impose a maximum framerate - some people perceive Fallout as smoother when its framerate is prevented from exceeding half the refresh rate, plus this helps free up resources for Fallouts secondary threads.

 

The FPS management code can also puts the main thread of Fallout to sleep for brief periods of time, which has been oberved to improve stutter for some people (though that functionality may have been made redundant by other things this plugin does).

 

7.2: Critical Sections:

Critical sections are microsoft-provided thread synchronization primitives that Fallout uses internally to make sure that threads don't accidentally corrupt each other. FSR by default makes most critical sections attempt to play fair even at the cost of throughput, making sure that no thread hogs a resource that other threads need. However, one specific critical section is overriden to use a slightly less fair method, and another specific critical section is suppressed so that it has no effect at all. And that's all very configurable from the ini file. Also the spincounts get overriden.

 

7.3: Heap Replacement:

This feature is not working properly on Fallout 3 yet.

 

7.4: Hashtables:

Fallout includes a bunch of hashtables for looking up all sorts of things. They use a generally horrid hashtable implementation, but the real problem is they never resize their hashtables. When a hashtable gets overful, performance drops. If a hashtable is underful then a tiny bit of memory may be wasted. Unfortunately, much of the hashtable code is inlined all over the place, and FOSE makes various assumptions about the hashtables as well, and its not at all clear to me what the relevant threading model is supposed to be, so changing them safely is quite difficult.

 

Still, I have some hashtable hooks, and they're gradually getting better. FSR can increase the size of hashtables once they get overful. The act of resizing them is fraught with problems however - it can cause crashes or glitches, and the methods I use to prevent it from doing so can cause small performance stutters or other crashes or glitches. Still, at this point I think it might be working kinda decently. In the future I may replace or suplement this with overriding the initial sizes of certain hashtables.

 

 

Haha, I don't even know what half of this means lol...

 

I have no programming experience what-so-ever....

 

So, I guess can I generalize from this is that it's a FPS limiter, but it does it by helping the game use it's resources better.

Link to comment
Share on other sites

No, an fps limiter just limits your fps. This can do that, but it also has many more options, and pure fps limiting is very minor compared to the other functions. It stops game events from happening ahead of when they're supposed to after the game stutters, stopping more stutter afterwards and therefore reducing stutter in general. It also improves resource optimization in general.
Link to comment
Share on other sites

Triple buffereing didn't really do too much for me, but thanks for the suggestion. I've added a few more mods and my framerate is still very good. Certain caves have my frame rate actually increase! Every once in awhile I have a second of frame drop, but that is few and far between.

 

Basically, I'm really glad I found the stutter remover. Since every other thing I tried did not work.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...