Overclock.net banner
1 - 7 of 7 Posts

Jake3

· Registered
Joined
·
121 Posts
Discussion starter · #1 ·
Introduction:

Greetings guys! I thought I know a few things about Triple Buffering and Vsync until a few hours ago. What happened a few hours ago is I decided to research a bit more on the subject and the result is that now I feel... let's say "just a bit" confused. I'll start with the questions.

Question 1:
When I enable Triple Buffering from the Nvidia Control Panel, is it enabled for every single modern PC game or is it not? If not - what's the reason?

Question 2:
Until a few hours ago I was sure Triple Buffering cannot exist without Vsync. After I found and read quite many contradictory statements about it I'm not so sure anymore. Even if Triple Buffering is turned on when Vsync is off, is it possible to make any difference? Isn't Triple Buffering something like an advanced setting (or an extension) to Vsync itself, making a difference ONLY if Vsync is enabled?

P.S.
I'll ask more questions once you answer these. I'd like to add one more very important thing - please don't answer any of the questions in this thread unless you're 110% sure you know what you're talking about and it's the correct answer because I can't take any more confusion. Like... really.
 
These are your driver controls. They dictate the settings of your driver, which are independent of in-game settings. Some settings override them.

If you want to know more about them, hover your mouse over them. Look at Triple Buffering:

"Turning on this setting improves performance when Vertical sync is also turned on". So, this tells me that when Vertical Sync isn't being used, then Triple Buffering isn't going to make any difference. Why else would it say "when Vertical sync is also turned on"? If it didn't depend on Vertical sync, then it would say "It improves performance, especially when Vertical sync is on" or something like that.

If the game supports your setting, then it's being 'used'. If not, then it's not.
 
Quote:
Originally Posted by Jake3 View Post

Question 1:
When I enable Triple Buffering from the Nvidia Control Panel, is it enabled for every single modern PC game or is it not? If not - what's the reason?
If you enable Triple Buffering under NVCP Global settings, then yes it should be enabled for every game (unless somehow Triple Buffering is not supported by the game for some reason).
Quote:
Originally Posted by Jake3 View Post

Question 2:
Until a few hours ago I was sure Triple Buffering cannot exist without Vsync. After I found and read quite many contradictory statements about it I'm not so sure anymore. Even if Triple Buffering is turned on when Vsync is off, is it possible to make any difference? Isn't Triple Buffering something like an advanced setting (or an extension) to Vsync itself, making a difference ONLY if Vsync is enabled?
Triple Buffering can be enabled independently without Vsync, but it is largely pointless when Vsync is off (and it will eat up more VRAM in the process). That is because each individually rendered frame is sent to the monitor to be displayed as soon as the frame is finished rendering regardless of whether the monitor is ready to display the new frame or not.

Triple Buffering only becomes useful when Vsync is enabled. This is because Vsync forces the GPU to synchronize with the monitors refresh rate (often 60 hz). This can lead to the GPU idling when the frame buffer is filled while the monitor is refreshing. Triple buffer increases the frame buffer from two frames to three, so it helps prevent any potential FPS loss caused by Vsync when avg FPS is <60- the extra frame buffer helps ensure that there will always be a complete rendered frame to send to the monitor when the monitor is ready to refresh and prevents unnecessary GPU idling.

http://www.tweakguides.com/Graphics_9.html
http://www.tweakguides.com/Graphics_10.html

I prefer to use NVIDIA's adaptive V-sync which only turns on V-sync when it is need, namely when the frame rate exceeds 60 FPS, and turns it off when frame rate falls below 60.
http://www.geforce.com/hardware/technology/adaptive-vsync/technology

This is so far the best compromise between avoiding tearing (when V-sync is off and avg FPS is >60 FPS) and input lag (when V-sync is enabled and avg FPS is <60) short of G-sync.
 
Discussion starter · #6 ·
Okay people. And is it true that only OpenGL games take into account the Triple Buffering setting from the Nvidia Control Panel (and DirectX ones simply ignore it)? Also, why has Triple Buffering been created/invented in the first place, what is its primary purpose? I'm asking this question because I've heard that it decreases input lag and makes the experience closer to Vsync off, while I've heard the opposite, too, that it increases lag* even more than simply turning Vsync on without Triple Buffering. And if Triple Buffering has any other purposes (which don't concern input lag in any way), mention them, too. Long story short - pros and cons of Triple Buffering (and does it depend on the game).

* when I say lag, I mean real lag (literally) and not stuttering or any other visual artifact that people tend to also call lag - the delay betwen clicking/moving the mouse and the corresponding action appearing on screen
 
Quote:
Originally Posted by Jake3 View Post

Okay people. And is it true that only OpenGL games take into account the Triple Buffering setting from the Nvidia Control Panel (and DirectX ones simply ignore it)? Also, why has Triple Buffering been created/invented in the first place, what is its primary purpose? I'm asking this question because I've heard that it decreases input lag and makes the experience closer to Vsync off, while I've heard the opposite, too, that it increases lag* even more than simply turning Vsync on without Triple Buffering. And if Triple Buffering has any other purposes (which don't concern input lag in any way), mention them, too. Long story short - pros and cons of Triple Buffering (and does it depend on the game).

* when I say lag, I mean real lag (literally) and not stuttering or any other visual artifact that people tend to also call lag - the delay betwen clicking/moving the mouse and the corresponding action appearing on screen
I think you can force Triple Buffering via drivers for OpenGL games, but not DirectX for some reason. Thus, for DirectX games it is best to enable Triple Buffering via in-game settings. Better yet, if you have an NVIDIA graphics card, use Adaptive Vsync instead (problem solved).

*Remember, the GPU can't push out fully rendered frames (ahead of the monitor) before the monitor is ready to refresh when Vsync is enabled.*

Actually, Vsync is the primary source of input lag when average FPS stays <60. More accurately, it is the perception of 'input lag' because your mouse and keyboard are still sending signals to the computer at the same speed regardless of whether Vsync is on or off. Basically, if the GPU can't feed the monitor a fully rendered frame on time when the monitor demands it (namely when average FPS stays below 60 FPS), the monitor will simply re-display the previous frame. This will effectively drop you FPS down to 30 or so for a brief few milliseconds when Triple Buffering is off. In the meantime, the user perceives 'input lag'. No bueno.

Triple Buffering is meant to make sure the GPU is being fully utilized by preventing unnecessary idling when the normal (2) frame buffer becomes filled (while waiting for the monitor to refresh when Vsync is enabled). If average FPS is <60, triple buffering will help offset the Vsync lag penalty since there is an additional frame buffer to avoid pesky transient 30 FPS drops. The math works out to 2/3 of 60 FPS = 45 FPS (with Triple Buffing) instead of 1/2 of 60 FPS = 30 FPS (without Triple Buffering). So instead of 30 FPS, you get 45 FPS with Triple Buffering.

Nonetheless, Triple Buffering can't fully compensate for the additional performance penalty created by Vsync.

Adaptive Vsync is the best software compromise between avoiding tearing (FPS >60) while also avoiding the perception of lag (FPS <60).
Or you can buy a 120 hz monitor. Or get a G-sync monitor once they are released to market.

Some more reading:
http://hardforum.com/showthread.php?t=928593
 
1 - 7 of 7 Posts