• Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

I use Vsync for all my games, but is Triple Buffering worth it? Why is it even there?

Phusius

New Member
Joined
Mar 23, 2012
Messages
1,316 (0.30/day)
Processor i5-2500k @ 4.5
Motherboard Asus Z68 Deluxe
Cooling Noctua NH-D14
Memory 16GB DDR3 1600
Video Card(s) Sapphire 7950 @ 1200/1475 @ 1175v
Display(s) Dell 23" 2ms
Case Carbide 500r
Audio Device(s) Asus Xonar DG
Just wondering if there is any reason Triple Buffering exists (and what its pros and cons are)
 
Joined
Apr 26, 2008
Messages
1,126 (0.19/day)
Location
london
System Name Staggered
Processor Intel i5 6600k (XSPC Rasa)
Motherboard Gigabyte Z170 Gaming K3
Cooling RX360 (3*Scythe GT1850) + RX240 (2*Scythe GT1850) + Laing D5 Vario (with EK X-Top V2)
Memory 2*8gb Team Group Dark @3000Mhz 16-16-16-36 1.25v
Video Card(s) Inno3D GTX 1070 HerculeZ
Storage 256gb Samsung 830 + 2*1tB Samsung F3 + 2*2tB Samsung F4EG
Display(s) Flatron W3000H 2560*1600
Case Cooler Master ATCS 840 + 1*120 GT1850 (exhaust) + 1*230 Spectre Pro + Lamptron FC2 (fan controller)
Power Supply Enermax Revolution 85+ 1250W
Software Windows 10 Pro 64bit
Double buffering is a rendering technique where the image currently being rendered is held in a buffer and you are shown an old image until the new one is complete. After completing, the buffers swap so you see the new image and the old image is removed with a newer image being drawn in its place. Basically, this stops you from seeing the image as it's being rendered piece by piece.
Triple buffering is the same thing, but with an extra buffer. This increases performance by allowing the unused buffer to start drawing after the new image is being swapped with the old image. This increases performance because the swapping of images takes a certain amount of time, thus creating lag.

I assume you're talking about CCC, so, this will only affect programs that use OpenGL.
 

Phusius

New Member
Joined
Mar 23, 2012
Messages
1,316 (0.30/day)
Processor i5-2500k @ 4.5
Motherboard Asus Z68 Deluxe
Cooling Noctua NH-D14
Memory 16GB DDR3 1600
Video Card(s) Sapphire 7950 @ 1200/1475 @ 1175v
Display(s) Dell 23" 2ms
Case Carbide 500r
Audio Device(s) Asus Xonar DG
So in CCC I should enable vsync and triple buffering then for the hell of it? even though triple buffering is CL only or w.e?

also, are the call of duty games OPEN GL? cause that would be cool if triple buffering helps them.


edit: I love London!!!! can't wait to go back someday, I just wish it was easier to get a job/visa over there.
 
Joined
Mar 2, 2009
Messages
5,061 (0.92/day)
Processor AMD Ryzen 5 7600
Motherboard Gigabyte B650 Aorus Elite AX
Cooling Thermalright Peerless Assassin 120 SE
Memory Kingston Fury Beast DDR5-5600 16GBx2
Video Card(s) Gigabyte Gaming OC AMD Radeon RX 7800 XT 16GB
Storage TEAMGROUP T-Force Z440 2TB, SPower A60 2TB, SPower A55 2TB, Seagate 4TBx2, Samsung 870 2TB
Display(s) AOC 24G2 + Xitrix WFP-2415
Case Montech Air X
Audio Device(s) Realtek onboard
Power Supply Be Quiet! Pure Power 11 FM 750W 80+ Gold
Mouse Logitech G304
Keyboard Redragon K557 KAIA RGB Mechanical Keyboard
Software Windows 10
There aren't that many OpenGL games in the first place...
 

Phusius

New Member
Joined
Mar 23, 2012
Messages
1,316 (0.30/day)
Processor i5-2500k @ 4.5
Motherboard Asus Z68 Deluxe
Cooling Noctua NH-D14
Memory 16GB DDR3 1600
Video Card(s) Sapphire 7950 @ 1200/1475 @ 1175v
Display(s) Dell 23" 2ms
Case Carbide 500r
Audio Device(s) Asus Xonar DG
There aren't that many OpenGL games in the first place...

So I would need a Nvidia graphics card to enable triple buffering for all games?
 
Joined
Apr 26, 2008
Messages
1,126 (0.19/day)
Location
london
System Name Staggered
Processor Intel i5 6600k (XSPC Rasa)
Motherboard Gigabyte Z170 Gaming K3
Cooling RX360 (3*Scythe GT1850) + RX240 (2*Scythe GT1850) + Laing D5 Vario (with EK X-Top V2)
Memory 2*8gb Team Group Dark @3000Mhz 16-16-16-36 1.25v
Video Card(s) Inno3D GTX 1070 HerculeZ
Storage 256gb Samsung 830 + 2*1tB Samsung F3 + 2*2tB Samsung F4EG
Display(s) Flatron W3000H 2560*1600
Case Cooler Master ATCS 840 + 1*120 GT1850 (exhaust) + 1*230 Spectre Pro + Lamptron FC2 (fan controller)
Power Supply Enermax Revolution 85+ 1250W
Software Windows 10 Pro 64bit
OpenGL is a graphics library. It's something like DirectX. Just like DirectX, only games that are built to use it can use it.
 
Joined
Mar 6, 2007
Messages
720 (0.12/day)
Processor i9 9900k @ 4.8 Ghz
Motherboard Asrock Z370 Taichi
Cooling Xspc raystorm direct die, 2x 480 swiftech rads + 2x 120 block ice rads D5, Monsoon Dualbay Res
Memory 32gb G.Skill DDR4 3200mhz CL14
Video Card(s) Gigabyte Aorus 3080 Ti Waterforce WB shunt mod
Storage Samsung Evo 860 500gb, Samsung Evo 860 1Tb x2, WD White 12tb x2
Display(s) Acer xb270hu 144hz 2560x1440
Case Enthoo Primo
Audio Device(s) Schiit Modi Multibit/Magni3 - M1060 (fuzzor+LQi cable+Eikon suede)/ATH-W1000X (Purrin's mod+suede)
Power Supply EVGA SuperNova 1300w
Mouse Razer Orochi
Keyboard Tesoro
Software TeamOS W10 Pro/W7 Pro
Use a program called D3DOverrider to force triple buffering in DirectX games, since CCC and Nvida CP only force it in OpenGL apps.
 
Joined
Jul 23, 2011
Messages
1,586 (0.34/day)
Location
Kaunas, Lithuania
System Name my box
Processor AMD Ryzen 9 5950X
Motherboard ASRock Taichi x470 Ultimate
Cooling NZXT Kraken x72
Memory 2×16GiB @ 3200MHz, some Corsair RGB led meme crap
Video Card(s) AMD [ASUS ROG STRIX] Radeon RX Vega64 [OC Edition]
Storage Samsung 970 Pro && 2× Seagate IronWolf Pro 4TB in Raid 1
Display(s) Asus VG278H + Asus VH226H
Case Fractal Design Define R6 Black TG
Audio Device(s) Using optical S/PDIF output lol
Power Supply Corsair AX1200i
Mouse Razer Naga Epic
Keyboard Keychron Q1
Software Funtoo Linux
Benchmark Scores 217634.24 BogoMIPS
since CCC and Nvida CP only force it in OpenGL apps.

Wait. What!?

~Back on topic~

Some games have an in-game setting to set triple buffering. It's best to enable it from there, when possible.
Also, note that triple buffering increases the input lag a little. When playing games that don't require extreme responsiveness (e.g.: MMOs, RPGs, among others), it's completely unnoticeable, thus having it on is usually a Good Thing™ there. On the other hand, when playing games that do require extreme responsiveness (competitive shooters, mostly), it is best to avoid it, as the input lag becomes noticeable and really annoying at times.
 
Joined
Aug 7, 2007
Messages
2,723 (0.45/day)
Processor i5-7600k
Motherboard ASRock Z170 Pro4
Cooling CM Hyper 212 EVO w/ AC MX-4
Memory 2x8GB DDR4 2400 Corsair LPX Vengeance 15-15-15-36
Video Card(s) MSI Twin Frozr 1070ti
Storage 240GB Corsair Force GT
Display(s) 23' Dell AW2310
Case Corsair 550D
Power Supply Seasonic SS-760XP2 Platinum
Software Windows 10 Pro 64-bit
So a game like Counter-Strike 1.6 will be affected in a negative way with extra input lag by turning on triple buffering? If this is true, then its no wonder why I never made the pros :banghead: :laugh:
 

Kreij

Senior Monkey Moderator
Joined
Feb 6, 2007
Messages
13,817 (2.21/day)
Location
Cheeseland (Wisconsin, USA)
Screen data always comes from a buffer. GCs render to a buffer, never directly to the screen.
That would be a disaster fron an efficiency standpoint.

The front buffer is what is sent to the screen when a refresh event occurs (the speed of this is dependant upon the refresh rate of your monitor).

The back buffers (2nd and 3rd) are independent of the refresh timing so the GC can fill them as fast as it possibly can. The buffers are then moved to the front for display when needed.
There is no theorectical limit as to how many back buffers a game (or whatever) can use, but more than 3 buffers is rarely used. This eliminates or reduces flicker, tearing and other artifacts.

Quad buffering in 3D is sometimes used (double buffering for each eyes image), but I've never seen a game that is not 3D use more than 3.

To say that an FPS game benefits from a single buffer is nonsense. Any modern GC can fill two buffers much faster than even the fastest monitors can display them, and the buffer transfers within the GC memory are in the sub millisecond range. If the game employs good algorithms for buffer fills, the GC could easily refresh the back buffer before it's needed if it had to do so.

As was stated, though, tripple buffering may not be of much benefit in some cases.
 
Joined
Aug 5, 2008
Messages
556 (0.10/day)
Location
Hampshire, UK
System Name If you name your systems, get a boy/girlfriend...
Processor i7 4770k
Motherboard Asus Maximus VI Formula
Cooling Custom waterloop around Black Ice GTX 360
Memory 16GB DDR3
Video Card(s) GTX 1080 FE
Storage Samsung 850 Pro 1TB
Case HAF 932
Audio Device(s) Onboard
Power Supply Corsair HX750
Software Windows 10 x64
The basic issue with Vsync is that you FPS is tied to your display's refresh frequency. Most displays these days have 60Hz, hence your FPS will be 60 FPS.
The trouble starts when your GPU cannot sustain rendering 60fps. In this case FPS will be cut in half, and drop all the way to 30fps (60/2=30) (which is pretty bad).

Triple buffering allows to use hardware more efficiently. If your GPU could render, say: 50 fps, you'll see benefit of it (it won't drop immediately to 30fps).

That comes at a cost of increased input lag (which is quite noticeable, and prevents any competitive shooter gaming).


When you've got a good GPU, a very good idea is to get a "3D" monitor (or projector in my case).
These displays support 120Hz. That makes Vsync work at beautifully fluid 120fps, and when you GPU can't sustain it, it drops to 60fps, which is still great.
 

Benetanegia

New Member
Joined
Sep 11, 2009
Messages
2,680 (0.50/day)
Location
Reaching your left retina.
To say that an FPS game benefits from a single buffer is nonsense. Any modern GC can fill two buffers much faster than even the fastest monitors can display them, and the buffer transfers within the GC memory are in the sub millisecond range. If the game employs good algorithms for buffer fills, the GC could easily refresh the back buffer before it's needed if it had to do so.

It's a little more tricky than that. When fps are lower than refresh rate, sometimes you'll see frames that are 2 frames old, and at 60 Hz that lag suposes 33 ms, which is quite a lot for competitive play. For older games like CSS running at 300 fps on modern cards that's not a problem but for, say Battlefield 3, it can be very noticeable.
 

qubit

Overclocked quantum bit
Joined
Dec 6, 2007
Messages
17,866 (3.00/day)
Location
Quantum Well UK
System Name Quantumville™
Processor Intel Core i7-2700K @ 4GHz
Motherboard Asus P8Z68-V PRO/GEN3
Cooling Noctua NH-D14
Memory 16GB (2 x 8GB Corsair Vengeance Black DDR3 PC3-12800 C9 1600MHz)
Video Card(s) MSI RTX 2080 SUPER Gaming X Trio
Storage Samsung 850 Pro 256GB | WD Black 4TB | WD Blue 6TB
Display(s) ASUS ROG Strix XG27UQR (4K, 144Hz, G-SYNC compatible) | Asus MG28UQ (4K, 60Hz, FreeSync compatible)
Case Cooler Master HAF 922
Audio Device(s) Creative Sound Blaster X-Fi Fatal1ty PCIe
Power Supply Corsair AX1600i
Mouse Microsoft Intellimouse Pro - Black Shadow
Keyboard Yes
Software Windows 10 Pro 64-bit
There's a really good article on what triple buffering is all about on either Ars Technica or AnandTech, I can't remember now and I'm too busy to go look.

However, it basically gives you all the benefits of regular vsync while minimising the inpu lag, which is important in fast FPS games. In short, use it.
 

Kreij

Senior Monkey Moderator
Joined
Feb 6, 2007
Messages
13,817 (2.21/day)
Location
Cheeseland (Wisconsin, USA)
It's a little more tricky than that. When fps are lower than refresh rate, sometimes you'll see frames that are 2 frames old, and at 60 Hz that lag suposes 33 ms, which is quite a lot for competitive play. For older games like CSS running at 300 fps on modern cards that's not a problem but for, say Battlefield 3, it can be very noticeable.

I understand that, but if your GC can't handle a single buffer at 60Hz, then you either need to drop the eye candy or get a better card.
I know that some of the games are GC killers, for whatever reason, and that everyone wants to run them at max, but that ain't reality in many cases.
 

Phusius

New Member
Joined
Mar 23, 2012
Messages
1,316 (0.30/day)
Processor i5-2500k @ 4.5
Motherboard Asus Z68 Deluxe
Cooling Noctua NH-D14
Memory 16GB DDR3 1600
Video Card(s) Sapphire 7950 @ 1200/1475 @ 1175v
Display(s) Dell 23" 2ms
Case Carbide 500r
Audio Device(s) Asus Xonar DG
There's a really good article on what triple buffering is all about on either Ars Technica or AnandTech, I can't remember now and I'm too busy to go look.

However, it basically gives you all the benefits of regular vsync while minimising the inpu lag, which is important in fast FPS games. In short, use it.

Triple buffering allows to use hardware more efficiently. If your GPU could render, say: 50 fps, you'll see benefit of it (it won't drop immediately to 30fps).

That comes at a cost of increased input lag (which is quite noticeable, and prevents any competitive shooter gaming).


When you've got a good GPU, a very good idea is to get a "3D" monitor (or projector in my case).
These displays support 120Hz. That makes Vsync work at beautifully fluid 120fps, and when you GPU can't sustain it, it drops to 60fps, which is still great.



So confused, will Triple Buffering hinder me in competitive online FPS or not? :banghead: :roll:
 

qubit

Overclocked quantum bit
Joined
Dec 6, 2007
Messages
17,866 (3.00/day)
Location
Quantum Well UK
System Name Quantumville™
Processor Intel Core i7-2700K @ 4GHz
Motherboard Asus P8Z68-V PRO/GEN3
Cooling Noctua NH-D14
Memory 16GB (2 x 8GB Corsair Vengeance Black DDR3 PC3-12800 C9 1600MHz)
Video Card(s) MSI RTX 2080 SUPER Gaming X Trio
Storage Samsung 850 Pro 256GB | WD Black 4TB | WD Blue 6TB
Display(s) ASUS ROG Strix XG27UQR (4K, 144Hz, G-SYNC compatible) | Asus MG28UQ (4K, 60Hz, FreeSync compatible)
Case Cooler Master HAF 922
Audio Device(s) Creative Sound Blaster X-Fi Fatal1ty PCIe
Power Supply Corsair AX1600i
Mouse Microsoft Intellimouse Pro - Black Shadow
Keyboard Yes
Software Windows 10 Pro 64-bit
So confused, will Triple Buffering hinder me in competitive online FPS or not? :banghead: :roll:

No, not at all. It will actually help. Ultimately, just try it and see which setting you like best.
 

Phusius

New Member
Joined
Mar 23, 2012
Messages
1,316 (0.30/day)
Processor i5-2500k @ 4.5
Motherboard Asus Z68 Deluxe
Cooling Noctua NH-D14
Memory 16GB DDR3 1600
Video Card(s) Sapphire 7950 @ 1200/1475 @ 1175v
Display(s) Dell 23" 2ms
Case Carbide 500r
Audio Device(s) Asus Xonar DG
I for one have seen no input lag in high twitch FPS games with Vsync on and Triple Buffering on, and yes this was an (Open GL game, which is required for triple buffering).

Not sure why people say input lag is very noticeable, I have noticed none at all, maybe it is irrelevant now for high end GPU's?
 
Joined
Jul 23, 2011
Messages
1,586 (0.34/day)
Location
Kaunas, Lithuania
System Name my box
Processor AMD Ryzen 9 5950X
Motherboard ASRock Taichi x470 Ultimate
Cooling NZXT Kraken x72
Memory 2×16GiB @ 3200MHz, some Corsair RGB led meme crap
Video Card(s) AMD [ASUS ROG STRIX] Radeon RX Vega64 [OC Edition]
Storage Samsung 970 Pro && 2× Seagate IronWolf Pro 4TB in Raid 1
Display(s) Asus VG278H + Asus VH226H
Case Fractal Design Define R6 Black TG
Audio Device(s) Using optical S/PDIF output lol
Power Supply Corsair AX1200i
Mouse Razer Naga Epic
Keyboard Keychron Q1
Software Funtoo Linux
Benchmark Scores 217634.24 BogoMIPS
Joined
Sep 1, 2010
Messages
7,023 (1.42/day)
There aren't that many OpenGL games in the first place...

lolwut



Doom series, Unreal series, Medal of Honor series, Quake series, Serious Sam series, Wolfenstein (new and old), Max Payne, Prey, Spring, Soldier of Fortune, Rage, Red Faction, Half-Life ...

Should I go on? :rolleyes:
 
Top