30fps cap on 144hz gsync monitor

Hi, first post here. I have done a lot of reading but still can’t solve this issue.

The program is stuck at 30fps on some cores but only in fullscreen mode (exclusive or windowed). When you press f to exit fullscreen, the core runs at 120fps. I have fiddled with every setting I can think of an even tried deleting my cfg and starting from scratch.

I’m using a 144hz gsync monitor with an nvidia 2080 graphics card . Here are my current settings i.e. the ones I think are correct:

video > syncronization

vsync off

swapchain images 3 (default)

sync to exact content ON

edit: originally said that it was all cores but have since discovered some run at 60fps. Blastem and Parallel64 are examples of cores running at 30fps.

In your nvidia control panel, make sure RetroArch is set to “let the application decide” or whatever.

Don’t disable vsync in RA. AFAIK it’s needed for correct audio sync. Also make sure that swap interval is is set to 1. (Note: swap interval, not swapchain.)

I’ve had the same problem for some time as well. Sync to exact content is the culprit for me. Disabling it solves things, but you have to get out of fullscreen and then back to actually apply the fix after disabling it. It doesn’t happen to EVERY core for me though. SNES9X and bSNES both follow this behavior, but genesis plus gx and beetle psx hw both correctly output 120fps for me even with sync to exact content on.

Thanks all for responding. I have tried everything suggested and am still on 30fps unless vsync is enabled :cry:

Checked it - this was already set up correctly in the nvidia control panel.

Why is the option even there then? I’m pretty sure vsync should be off on a variable refresh rate monitor. Turning vsync back on does get me to 60fps but ideally I’d be getting the same 120fps that windowed mode gets!

This option makes no difference for me :unamused: it’s 30fps when set off or on.

https://www.libretro.com/index.php/upcoming-retroarch-1-7-4-sync-to-exact-content-frame-rate-ideal-for-g-syncfreesync-users/

As the article says, you need to have vsync active within RA.

Note that emulators aren’t like normal games. Vsync in emulators is used for more than just to prevent tearing. Also, at least with RetroArch, you gain nothing from disabling vsync to begin with when you’re using gsync. If you set your monitor to the highest Hz it can do (144Hz in your case), vsync at 60Hz will have zero effect on input lag. You only need to worry about vsync lag if the FPS goes near 144FPS, which in this case can’t happen.

RealNC is 100% correct here, there might be some wonky way to get around that but otherwise Vsync is a must if you want to go over the 30 FPS cap.

This is old, inaccurate information. You want to keep Vsync enabled so that if a game ever hits your display’s max refresh rate (in FPS) you don’t end up getting tearing. You can also enable a frame limiter, like the global one built into the latest Nvidia drivers or in game if it has one, to cap your FPS two or three less than your refresh rate. That keeps games running within Gsync/Freesync range, which reduces lag. Even with a global frame limit set you generally want to leave Vsync enabled in games just in case the limiter lets a game hit the cap.

In RetroArch’s case, Vsync seems essential to getting proper frame pacing, so you definitely want to leave it on there. With “Sync to Exact” also enabled, you’ll still get a variable frame rate that matches the original system being emulated. Assuming the core outputs the proper timing.

OK :slight_smile: I’m with you now on how/why it works like it does.

I have to admit, despite using retroarch for a while now the syncronisation options were throwing me a bit. There is a lot of conflicting information out there.

Thanks again.

Note that this is good advice for normal games. Not for RA :slight_smile: Do NOT use a frame limiter with RA (or emulation in general.) Emulators do their own frame limiting.

For normal games though, using a frame limiter can more often than not improve the experience a lot. There is a big 15 page article on Blur Busters on getting the “perfect” setup with gsync. It explains on how and why frame limiting enhances g-sync so much:

Worth the read.

Right. But since everything I run in RA is capped to around 60, my 117 global cap in the Nvidia control panel doesn’t affect it. I was worried it would cap the fast forward rate, but even that still goes way past 117 in most cores. I’m using Vulkan in RA though, so maybe the driver cap doesn’t work with that. I haven’t tested any native PC games that use Vulkan with the cap yet.