Sethos1988

Question regarding Vsync + TB

Recommended Posts

So I'm trying to tune my sim a bit, get it as smooth as possible. I know a lot of people use a lower desktop refreshrate, like 30- or 25Hz and then use Vsync + Triple Buffering within the settings. My question is, I see most people running these settings also run 'unlimited' with their framerate limiter / target frame rate slider.

When you run the internal limiter, you also dedicate more time to the rendering of the terrain via FIBER_FRAME_TIME_FRACTION, which I believe defaults to 0.33. My question is, what happens when you only run Vsync + TB + Unlimited. Does that also dedicate more CPU time to the rendering of the terrain or would that also revert to its lowest setting akin to running no Vsync and unlimited?

Would it be better to run Vsync + TB + Target framerate of 1 frame above your intended FPS, to 'activate' the higher FIBER_FRAME_TIME_FRACTION value?

Thanks

Share this post


Link to post
Help AVSIM continue to serve you!
Please donate today!

Posted (edited)
37 minutes ago, Sethos1988 said:

So I'm trying to tune my sim a bit, get it as smooth as possible. I know a lot of people use a lower desktop refreshrate, like 30- or 25Hz and then use Vsync + Triple Buffering within the settings. My question is, I see most people running these settings also run 'unlimited' with their framerate limiter / target frame rate slider.

When you run the internal limiter, you also dedicate more time to the rendering of the terrain via FIBER_FRAME_TIME_FRACTION, which I believe defaults to 0.33. My question is, what happens when you only run Vsync + TB + Unlimited. Does that also dedicate more CPU time to the rendering of the terrain or would that also revert to its lowest setting akin to running no Vsync and unlimited?

Would it be better to run Vsync + TB + Target framerate of 1 frame above your intended FPS, to 'activate' the higher FIBER_FRAME_TIME_FRACTION value?

Thanks

The problem with the internal limiter for me is that I get a pretty big FPS hit.  In some areas that would work, but in the bigger cities running limited would drop me below my FPS target causing stutters so I have to run unlimited.  What I did in the past was takeoff at unlimited and then switch to the target FPS +1 to help with texture loading and switch back to unlimited on final.  It was a pain but it worked.  I recently bought FFTF Dynamic and have been playing around with the tool and it seems to help a bit.  I'm still trying to figure out the ideal setting though.

Edited by sfgiants13

Share this post


Link to post

Are you running in 4k with ai traffic on?? 

Share this post


Link to post
2 hours ago, sfgiants13 said:

The problem with the internal limiter for me is that I get a pretty big FPS hit.  In some areas that would work, but in the bigger cities running limited would drop me below my FPS target causing stutters so I have to run unlimited.  What I did in the past was takeoff at unlimited and then switch to the target FPS +1 to help with texture loading and switch back to unlimited on final.  It was a pain but it worked.  I recently bought FFTF Dynamic and have been playing around with the tool and it seems to help a bit.  I'm still trying to figure out the ideal setting though.

+ 1 but limiting the FPS via the inspector eliminated the stutters and my sim runs much smoother. I leave the FPS set to unlimited within the sim

Share this post


Link to post
4 hours ago, Sethos1988 said:

When you run the internal limiter, you also dedicate more time to the rendering of the terrain via FIBER_FRAME_TIME_FRACTION, which I believe defaults to 0.33. My question is, what happens when you only run Vsync + TB + Unlimited. Does that also dedicate more CPU time to the rendering of the terrain or would that also revert to its lowest setting akin to running no Vsync and unlimited?

 

3 hours ago, sfgiants13 said:

The problem with the internal limiter for me is that I get a pretty big FPS hit.

The thing is, FIBER_FRAME_TIME_FRACTION defaults to 0.33, but only when using internal FPS limiter. If you set target FPS to unlimited(internally), it defaults to 0.01. So, it is a less CPU time dedicated for texture loading(and consequently for scenery rendering). This is why many complained about blurries with unlimited FPS, especially in FSX days. Basically, with limited FPS, in P3D(and other MSFS based sims), focus is more on texture loading. With unlimited, focus is on the performance. But you may get stutters due to FPS variations.

There are some other things, like - the texture loading formula is changed internally(limited vs unlimited FPS), this is why changing some CFG settings may work or not, based on your choice of target FPS - some are ignored with unlimited FPS for example. 

But in general, internal FPS limiter should work better, i just explained why this is not the case with P3D. There may be a workaround. Becouse I don't have 30hz capable monitor, i'm using internal limiter set to 30, and FTFF set to 0.01(added to p3d cfg). Just like alternative to 30hz monitor. It's not perfect, i guess the real vsync is missing here, but it works great for me.

Also, a good explanation of original question about vsync and triple buffering:

https://www.anandtech.com/show/2794/2

  • Upvote 1

Share this post


Link to post

Yeah that's why I've been using the FFTF dynamic tool to lower the FFTF number the lower I get to the ground when I don't really need the super sharp textures.  I have my range set at .15 when I'm on the ground to .45 when I'm above 4k feet.  Although when I'm on descent I still get some blurries when I'm descending until I get lower to the ground.  But, it seems to work pretty well otherwise and I can still run unlimited and get the benefit of the higher FFTF value when I'm further from the airport and don't need max performance.

Share this post


Link to post
On 5/30/2018 at 9:50 PM, lodestar said:

 

The thing is, FIBER_FRAME_TIME_FRACTION defaults to 0.33, but only when using internal FPS limiter. If you set target FPS to unlimited(internally), it defaults to 0.01. So, it is a less CPU time dedicated for texture loading(and consequently for scenery rendering). This is why many complained about blurries with unlimited FPS, especially in FSX days. Basically, with limited FPS, in P3D(and other MSFS based sims), focus is more on texture loading. With unlimited, focus is on the performance. But you may get stutters due to FPS variations.

Thanks for the reply lodestar, that was basically what I was looking for. I've grown very fond of the internal limiter due to the higher FFTF, as it really smooths out the terrain rendering I feel, doesn't end up getting "bogged down" when the CPU is busy, in a populated area, thus creating temporary blurries. I was just wondering, since a lot of people seem to be preferring the Vsync / TB / Unlimited combo, if that also activated the higher FFTF, but that is not the case. Then I will stick to my internal limiter.

Share this post


Link to post
On ‎5‎/‎30‎/‎2018 at 9:50 PM, lodestar said:

The thing is, FIBER_FRAME_TIME_FRACTION defaults to 0.33, but only when using internal FPS limiter. If you set target FPS to unlimited(internally), it defaults to 0.01. So, it is a less CPU time dedicated for texture loading(and consequently for scenery rendering). This is why many complained about blurries with unlimited FPS, especially in FSX days.

That is the widespread common opinion on this topic, but was it really ever approved by a LM Prepar3d developer for P3D?

The reason I doubt is: I configured a setup for TE Netherlands with a internal framelimiter of 28FPS and rather high to max. settings. The internal framelimiter alomst totally removes the stutters over TE Netherlands (that's what I use it for), but the ground tends to blurry. However, as soon as I leave TE Netherlands using those settings, for example flying out of Aerosoft Zurich with just FTX Global and FTX Vector (LC based), the ground blurries like hell. As soon as I then switch to "unlimited", the ground instantly clears up and blurries are gone. Outside P3D, I constantly use a frame limit of 36 via nVidia Profile Inspector.

Share this post


Link to post
34 minutes ago, AnkH said:

That is the widespread common opinion on this topic, but was it really ever approved by a LM Prepar3d developer for P3D?

The reason I doubt is: I configured a setup for TE Netherlands with a internal framelimiter of 28FPS and rather high to max. settings. The internal framelimiter alomst totally removes the stutters over TE Netherlands (that's what I use it for), but the ground tends to blurry. However, as soon as I leave TE Netherlands using those settings, for example flying out of Aerosoft Zurich with just FTX Global and FTX Vector (LC based), the ground blurries like hell. As soon as I then switch to "unlimited", the ground instantly clears up and blurries are gone. Outside P3D, I constantly use a frame limit of 36 via nVidia Profile Inspector.

It deppends on other settings too. For example, on my system, i get blurries if i use affinity mask to offload one core. It worked great with FSX, but not with P3D. We can only speculate, but i belive this is becouse P3D has a much more data(and especially textures)to load per frame then FSX, and we need more computing power. Do you have any cfg settings, tweaks apllied? 

FSX loads more textures with limited vs unlimited FPS, this is probably why blurries disappear with limited FPS. In P3Dv4 this is really equilibrated(the texture loading limit / max allowed textures per frame). There should not be a difference i how much textures can be loaded(with default CFG, no tweaks). The only difference i am aware of is the FIBER_FRAME_TIME_FRACTION, which is much lower with unlimited FPS. This means less CPU time per frame for texture loading, so i don't understand how you can get less blurries with unlimited FPS. This is not my experience, and i tested it a lot. This is why i asked if you have some other tweaks applied, some of the CFG settings are ignored with unlimited FPS

Share this post


Link to post
Posted (edited)
54 minutes ago, AnkH said:

That is the widespread common opinion on this topic, but was it really ever approved by a LM Prepar3d developer for P3D?

The reason I doubt is: I configured a setup for TE Netherlands with a internal framelimiter of 28FPS and rather high to max. settings. The internal framelimiter alomst totally removes the stutters over TE Netherlands (that's what I use it for), but the ground tends to blurry. However, as soon as I leave TE Netherlands using those settings, for example flying out of Aerosoft Zurich with just FTX Global and FTX Vector (LC based), the ground blurries like hell. As soon as I then switch to "unlimited", the ground instantly clears up and blurries are gone. Outside P3D, I constantly use a frame limit of 36 via nVidia Profile Inspector.

Unlimited  —> FFTF = 0.01, max FPS at the cost of terrain loading

Limiter on  —> 0.33 , way better terrain loading at the cost of FPS

If the Limiter can maintain the set framerate this is the smoothest you can have.

 

I use FFTF Dynamic in Alt mode with 0.01 on the ground up to 0.20 at 7000 ft and up. It might help you getting did of your blurries....

Edited by GSalden

Share this post


Link to post
2 hours ago, lodestar said:

Do you have any cfg settings, tweaks apllied? 

Yes, I do. I use the FFTF tweak for now, set to 0.33 to revert the "unlimited" effect (might be obsolete if ignored...). Besides that I realized that my P3D runs best without any tweak, so I also eliminated the Affinity Mask entry. But I would have to check again to be absolutely sure. Fact is, that's what I observe. I can make a video once to illustrate it. Might be somehow related to my external limiter, no?

@GSalden Disagree. My sim is notably more smooth if I run unlimited with an external limiter of 36, although those 36FPS are not maintained in heavy situations. If I lower the FPS until the internal limiter would be at a FPS number I can keep in 99% of the scenarios, I would be down to 20FPS and although people are happy with this, for me it is not smooth enough. As a shooter player, I am anyway used to 60FPS or more, but I will never lower the settins in P3D that much.

Share this post


Link to post
6 hours ago, AnkH said:

Yes, I do. I use the FFTF tweak for now, set to 0.33 to revert the "unlimited" effect (might be obsolete if ignored...). Besides that I realized that my P3D runs best without any tweak, so I also eliminated the Affinity Mask entry. But I would have to check again to be absolutely sure. Fact is, that's what I observe. I can make a video once to illustrate it. Might be somehow related to my external limiter, no?

@GSalden Disagree. My sim is notably more smooth if I run unlimited with an external limiter of 36, although those 36FPS are not maintained in heavy situations. If I lower the FPS until the internal limiter would be at a FPS number I can keep in 99% of the scenarios, I would be down to 20FPS and although people are happy with this, for me it is not smooth enough. As a shooter player, I am anyway used to 60FPS or more, but I will never lower the settins in P3D that much.

Your Sim seems to work the other way round 🤔

But most important : If you are happy that is the only thing that counts..

Share this post


Link to post
6 hours ago, AnkH said:

Yes, I do. I use the FFTF tweak for now, set to 0.33 to revert the "unlimited" effect (might be obsolete if ignored...). Besides that I realized that my P3D runs best without any tweak, so I also eliminated the Affinity Mask entry. But I would have to check again to be absolutely sure. Fact is, that's what I observe. I can make a video once to illustrate it. Might be somehow related to my external limiter, no?

FFTF set to 0.33 is not needed with limited fps, since this is default value. With unlimited, i have no a idea if this, CFG entry, is taken in account by P3D engine(default is 0.01 with unlimited) - i can only tell you that it's not considered in P3D "max allowed amount of textures per frame formula". To elaborate on this:

With limited FPS, MAX_TEXTURE_DATA = (TEXTURE_MAX_LOAD * (TextureMaxLoad * TEXTURE_BANDWIDTH_MULTIPLIER)) / UPPER_FRAMERATE_LIMIT

with unlimited FPS, MAX_TEXTURE_DATA = TextureMaxLoad * TEXTURE_MAX_LOAD

The result, MAX_TEXTURE_DATA, is the maximum number of bytes to load per frame.

I belive this is why LM recommends tweaking "TextureMaxLoad" only for better texture loading(and not TEXTURE_BANDWIDTH_MULTIPLIER), becouse TBM is ignored with unlimited FPS, and TML works with both settings.

This is how it worked in all MSFS based simulators. But like i said, we can only speculate on this, since we don't know if LM changed some other things internally. I doubt it, after i did a lot of testing. The idea is to somehow limit your fps and don't waste CPU cycles with unlimited FPS, since this will allow better scenery loading. Until now, the best solution seems to be monitor capable to run at 30Hz, unlimited FPS in P3D with vsync + triple buffering. I didn't have a chance to test this, but my alternative is to limit FPS internally to 30 and set FFTF to 0.01. I use this for PMDG and FSL, not needed for Maddog(for example)on my system. 

I also belive my P3D runs best with default settings, but i use this becouse i get 20FPS with PMDG 747 with default settings, and 30(limited to 30 in both scenarios)with above settings applied. I can observe some blurries which are not there with default settings, but it's not so bad and i'm ok with that compromise. I can also move more sliders to the right this way

Share this post


Link to post
2 hours ago, lodestar said:

FFTF set to 0.33 is not needed with limited fps, since this is default value. With unlimited, i have no a idea if this, CFG entry, is taken in account by P3D engine(default is 0.01 with unlimited) - i can only tell you that it's not considered in P3D "max allowed amount of textures per frame formula". To elaborate on this:

FFTF set to 0.33 is not needed with limited fps, since this is default value. - Correct.

With unlimited, i have no a idea if this, CFG entry, is taken in account by P3D engine(default is 0.01 with unlimited) - The default FFTF value is 0.33 when the cfg entry is not given.

Here in the graphs from IFPro I show how 0.1 in the cfg takes longer to load the surrounding scenery than 0.9 and 0.33. Which is why the fps can remain high.

Also notice the similarity of the two graphs in the middle which show 0.33 given in the cfg and no value given equate to the same result in the unlimited no vsync setup:

FFTFP3D42U.jpg

In other words a higher FFTF takes longer to fill in the more remote scenery around the player, giving more time to render close-by objects.

 

 

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now