macOS Game Mode - Apple Silicon Optimizations

In 2023, Apple released macOS Game Mode on macOS 14 Sonoma running Apple Silicon. Gaming apps that support this feature allow the app to benefit from many performance benefits including but limited to lower latency, higher performance, smoother more consistent frame rates, prioritizing CPU/GPU for the game, and other benefits.

Rouvy already added this to their macOS app previously and works perfectly as it works automatically behind the scenes, but users of course can turn off if they choose for any reason.

This isn’t something non devs in general would know about, so not something people will be asking Zwift for, and hopefully something Zwift will proactively do to increase performance for users running newer Macs just like Rouvy did (even without any public requests to do so).

To note, adding Game Mode support requires no code updates, so long as the app is properly classified as a Game and using Metal for rendering and in full screen mode. On version 1.39 Zwift moved from OpenGL to the modern Metal, so my guess is they simply need to fix an issue with the app being properly classified as a Game then should work automatically.

If you would like Zwift to run faster with lower latency and you have an Apple Silicon Mac, be sure to up vote this to give the devs the extra push it sounds like they may need to optimize the app.

More details here: support.apple[dot]com/en-us/105118

Checked in Zwift.app > Contents > info.plist.

This line is the problem:

<string>public.app-category.healthcare-fitness</string>

The app is being categorized as Healthcare Fitness. The reason why Game Mode works automatically and perfectly on other apps like Rouvy is because in their plist its set as:

<string>public.app-category.games</string>

So normally all the devs have to do is update that online in the next update and macOS Game Mode will automatically be available with no additional changes.

Was able to edit the plist but game mode didn’t auto enable. Did more digging and it appears because Zwift.app isn’t the actual app, but just a launcher, which is why when opening it that then opens ZwiftAppSilicon.app located in:

/Users/[username]/Library/Application Support/Zwift/ZwiftAppSilicon

Since they load it that way and not as standard app, that’s why changing to the properly game category still doesn’t resolve it. So the devs will need to update that accordingly.

3 Likes