Q100642: Increasing framerates in Mari by disabling VSync

SYMPTOMS

Users may notice that the FPS displayed in the Canvas is lower than they'd expect. For example, on a 60Hz monitor, the Canvas FPS in Mari will appear ‘limited’ to 60 or fewer frames-per-second.

If you are experiencing low FPS, even while working on very simple projects, then you may need to turn off VSync.



CAUSE

VSync (Or vertical sync) aims to prevent screen-tearing by synchronising the number of frames being generated with the monitor’s refresh rate.

In Mari 4.7 and earlier, enabling or disabling VSync was controlled by a preference (under Preferences > GPU > General > VSync). 

Mari’s Qt library was upgraded in Mari 4.8. The newer version of Qt does not permit changing VSync settings while Mari is running. Therefore, the VSync preference has been replaced by an environment variable that must be set prior to launching Mari:

MARI_VSYNC

While you may have disabled VSync in Mari 4.7 and earlier via the preferences, you will need to use this environment variable to turn it off starting with Mari 4.8.

When this variable has not been set, VSync is controlled by the system and driver settings (e.g. for NVidia graphics cards, the setting in the NVidia Control Panel will be used)



RESOLUTION

To resolve the issue, please try turning VSync off by setting the MARI_VSYNC environment variable to a value of 0:

MARI_VSYNC=0

If required, please refer to the following article for guidance on how to do this:
Q100015: How To Set Environment Variables

After setting the environment variable and launching Mari, the canvas framerate should no longer be limited. Just keep in mind that if the FPS in the Canvas is faster than the monitor’s refresh rate, this could result in screen tearing.

Below is a table of MARI_VSYNC’s expected values and their effects:

MARI_VSYNC Value

Effect

0

VSync off

1

VSync on

No value/not set

VSync controlled by the GPU driver settings



FURTHER READING 

If you are still experiencing difficulties please create a support ticket and provide us with the information requested in this article:
Q100090: Information to send Support when reporting a Mari issue

For more information on how to open a Support ticket, please refer to this article:
Q100064: How to raise a support ticket

    We're sorry to hear that

    Please tell us why