Ryujinx Performance Update: Managing High Refresh Displays on PC and Mac
High-refresh monitors and variable display panels routinely derail Nintendo Switch emulation. When users run Ryujinx on a 144Hz desktop display or an Apple ProMotion 120Hz screen, games frequently run at double speed or suffer erratic frame pacing. Recent hardware testing highlighted this tension directly: a GameGPU report evaluating Avatar Quest for Balance demonstrated that running titles at uncapped frame rates in 4K introduces game-breaking physics glitches alongside unstable render pipelines.
The Nintendo Switch hardware targets either 30 or 60 frames per second. Game logic and physics engines are almost always hardcoded to those specific timing loops. Uncapping performance does not simply deliver smoother animation; it fast-forwards game clocks, causes player characters to fly across maps, and desynchronizes internal audio feeds. Halting these issues requires locking down frame rates through precise driver-level caps, third-party hooks, or internal display toggles.
📌 Key Takeaways:
- The Core Problem: Disabling VSync or using unmatched high-refresh panels causes a game physics speed glitch because Switch game engines tie clock updates directly to frame delivery.
- The Preferred Fix: RivaTuner Statistics Server (RTSS) provides the most consistent frame pacing and lowest input latency on Windows, while driver-level caps serve as a reliable fallback.
- Platform Variances: macOS requires display refresh rate adjustments inside System Settings to rein in Apple ProMotion 120Hz displays, as driver overrides do not exist on Apple Silicon.
Why High Refresh Displays Break Nintendo Switch Emulation
Console game software behaves very differently from native PC titles. Switch developers program game loops against a static target: 30 or 60 ticks per second. When Ryujinx runs without a boundary, the emulator executes internal simulation loops as fast as the host GPU and CPU can push them. A PC pushing 120 FPS causes a 60 FPS title to render at 200% original speed.
This coupling creates critical failures. Cutscenes fall out of sync with dialogue tracks. Collision meshes drop player models through floor geometry. Even in titles with dynamic tick rates, uncapped framerate fixes without engine patches lead to erratic frame times. A fluctuating render rate between 70 FPS and 110 FPS generates jarring visual judder that ruins overall Switch emulation performance, even on high-end hardware.

Dialing In the In-Engine VSync Toggle
Ryujinx includes an internal synchronization toggle designed to anchor timing to the target platform specification. By default, toggling this control regulates performance directly against the title's authored limits.
The internal control rests at the bottom-left corner of the main Ryujinx window, labeled VSync. Pressing the F1 key toggles this setting on or off in real time during gameplay. When active, it forces the emulator's presentation thread to align with host display intervals.
Yet the internal toggle struggles on screens running above 60Hz. If a monitor runs at 144Hz or 240Hz without Variable Refresh Rate (VRR) or G-Sync engaging properly, the VSync switch can lock output to the display's native refresh rate rather than the game's internal 60 FPS target cap. Relying solely on the built-in switch is rarely enough for gaming setups running high-refresh hardware.
External Driver Solutions: NVIDIA Control Panel and AMD Radeon Chill
Driver-level caps provide a mandatory secondary barrier. Because the driver operates above the emulator, it catches frame presentation before it reaches the monitor, preventing accelerated physics ticks.
For NVIDIA users:
- Open the NVIDIA Control Panel and navigate to Manage 3D Settings.
- Select the Program Settings tab and target
Ryujinx.exe. If it does not appear in the dropdown list, click Add and select the Ryujinx executable from its installation folder. - Scroll down to Max Frame Rate. Set the value to 60 FPS (or 30 FPS for locked 30-frame titles).
- Set Vertical Sync within the same panel to On or Fast depending on whether G-Sync is active.
- Apply changes and restart the emulator.
For AMD Radeon users, the driver offers AMD Radeon Chill:
- Launch AMD Software: Adrenalin Edition and head to Gaming > Games.
- Select Ryujinx from the library.
- Toggle Radeon Chill to Enabled.
- Set both Chill Min and Chill Max to identical values of 60 FPS. Setting both sliders to the same number forces a strict cap rather than dynamic throttling.
- Ensure Wait for Vertical Refresh is configured to Always on to eliminate tearing.

Precision Pacing via RivaTuner Statistics Server (RTSS)
While GPU drivers control bulk frame delivery, they introduce slight millisecond variations between individual frame deliveries. RivaTuner Statistics Server (RTSS) remains the gold standard for stabilizing erratic frame pacing.
RTSS hooks directly into presentation APIs, Vulkan and OpenGL alike, and introduces minimal input latency settings. It holds back frame presentation at the CPU level with microsecond precision.
To configure RTSS:
- Open RTSS and click the Add button at the bottom left to link
Ryujinx.exe. - Highlight the Ryujinx profile and locate Framerate limit on the right pane.
- Input 60 directly into the field.
- Set Framerate limiter mode to Front Edge. This minimizes input latency compared to back-edge buffer holds.
- Keep RTSS running minimized in the system tray during emulation sessions.
This configuration flattens frame-time spikes into a straight line. Frame times settle cleanly at 16.66 milliseconds for 60 FPS titles, eliminating micro-stutters that driver-only limiters occasionally miss.
Calibrating Apple Silicon and ProMotion 120Hz Displays
Running Ryujinx on macOS systems, such as M-series MacBook Pro and Mac Studio hardware, presents a separate set of display pipeline hurdles. Apple Silicon machines lack standalone driver control panels like those from NVIDIA or AMD, leaving macOS users reliant on operating system controls and Ryujinx's Metal backend.
MacBook Pro models equipped with Apple ProMotion 120Hz displays dynamically shift between 24Hz and 120Hz. When Ryujinx presents frames to a ProMotion display, the compositor frequently misinterprets the 60 FPS target, causing duplicated frames or fast-forwarded emulation.
To lock frame rates reliably on modern Macs:
- Open macOS System Settings and click Displays.
- Locate the Refresh Rate dropdown menu.
- Change the selection from ProMotion to a locked 60 Hertz setting during emulation sessions.
- Inside Ryujinx, navigate to Options > Settings > Graphics and verify that the backend is set to Vulkan (Metal via MoltenVK).
- Ensure the bottom-bar VSync indicator is blue (active).
Restricting the entire panel to 60Hz eliminates the communication mismatch between MoltenVK and the macOS Quartz Compositor, maintaining standard game speed across all titles.
Comparing Methods to Cap FPS in Ryujinx
| Configuration Method | Target Platform | Frame Pacing Consistency | Input Latency Added | Primary Use Case |
|---|---|---|---|---|
| RTSS (Front Edge) | Windows | Extremely High (Flat 16.6ms) | Minimal (~1 frame) | Competitive or timing-sensitive titles |
| NVIDIA Max Frame Rate | Windows | High | Low | Set-and-forget background cap |
| AMD Radeon Chill | Windows | Moderate to High | Low | Radeon systems without third-party tools |
| macOS Display Panel Lock | macOS (Apple Silicon) | High | System Native | Apple ProMotion 120Hz displays |
| Ryujinx Internal VSync | Windows / macOS / Linux | Variable (Depends on display Hz) | Zero Added Overhead | Standard 60Hz native monitors |
Frequently Asked Questions (FAQ)
Q1: Why does my game run in fast motion when I turn off VSync?
A1: Nintendo Switch games tie game logic, movement speeds, and physics clocks directly to frame presentation. When VSync is toggled off, Ryujinx renders frames without limits. If your PC pushes 120 FPS in a 60 FPS title, the entire simulation runs at double speed.
Q2: Can I unlock 120 FPS without speeding up the game?
A2: Only if a dedicated 120 FPS game mod exists for that specific title. Mods alter internal game tick calculations to detach visual rendering from physics updates. Without an engine mod, simply forcing an uncapped framerate fix will always accelerate movement.
Q3: Should I set my frame rate limiter to 59, 60, or 61 FPS?
A3: For standard G-Sync or FreeSync monitors, setting a limiter to 60 FPS inside RTSS or driver settings provides the most accurate timing. If you experience occasional tearing or buffer buildup on 60Hz non-VRR screens, setting it to 59.94 FPS aligns with the exact NTSC refresh rate used by many console engines.
Q4: Why does RTSS not hook into Ryujinx on Windows?
A4: If RTSS fails to detect Ryujinx, open RTSS, set the Application detection level to High, and ensure Ryujinx is running on the Vulkan backend. If an overlay blocker or antivirus software is active, run RTSS with administrator privileges.
Q5: Does capping frame rates lower system temperatures and power draw?
A5: Yes. Allowing an emulator to render unnecessary frames forces GPUs and CPUs to operate at maximum clock frequencies. Enforcing a strict 60 FPS cap keeps power draws low and prevents thermal throttling during extended sessions.
Maintaining Clean Frame Timing in Modern Emulation
Unlocking raw frame rates works well for native PC titles, but emulating console architectures demands strict adherence to original timing boundaries. Until modding communities build dedicated dynamic tick patches for individual games, hardware limiters remain necessary tools.
For Windows systems, combining an active in-emulator VSync toggle with RTSS capped at 60 FPS completely resolves speed glitches and delivers smooth frame pacing. For Mac users, manually adjusting ProMotion displays down to 60Hz prevents compositor conflicts. Locking down these configurations keeps emulation smooth, responsive, and true to original game mechanics across all monitor types.