NTsync in latest Proton-CachyOS, Wine-CachyOS

The latest Proton and Wine versions released 2025-01-02 have NTsync7 support, which is super! Basically, NTsync is another method to sync games outside Fsync. Personally, the games I play need NTsync to be used. Fsync in 90% of games is just fine, however MMO’s feel consistently snappier with Ntsync in my opinion. I highly recommend people at least give it a try. If using Proton-Cachyos you will need the environment variable “PROTON_USE_NTSYNC=1”, and if you are using Wine-CachyOS you won’t have to do much. If you do not have NTSYNC active in Wine, the variable “WINE_DISABLE_FAST_SYNC=0” will probably be needed, I think.

For the testing I have done…

Game: Guild Wars 2
System: CachyOS | Kernel: Linux-CachyOS 6.12.8-2 | GPU: Radeon 6xxx

Proton-Cachyos running on Steam-Native felt like Fsync, just with the normal 5-10% FPS hit which is expected. There was a slight overhead using the Steam-Native client, which is normal for me, so I couldn’t determine the snappiness properly.

Proton-Cachyos running on Lutris felt much nicer. I would say it was almost as close as the Wine-TKG version with Ntsync7 support. I use the Wine-TKG Ntsync7-Wine10rc3 version as a benchmark, because it reminds me of how close performance was on Kernel 6.8 with Ntsync.

Wine-Cachyos running on Lutris felt the snappiest. I am still testing, however it looks promising so far. I need to test it in big fights in Guild Wars 2, then have more information on it.

I’ve tried to use wine-cachyos wth it and causes wine debugger, though maybe it would do it without. I play ESO btw, if I use proton-cachyos it uses server-side sync which is worse for me and by doing lsmod | grep ntsync, ntsync is not being used so worse performance

Normally Proton-Cachyos defaults to Fsync without any variables used. I can’t speak for ESO specifically, but you may need to disable or enable some environmental variables. It showing server side sync, it means you are not using Esync, Fsync, or NTsync at all. In the Steam Client, try WINEFSYNC=1 at least to see if Fsync is working. What kernel are you using?

If you want an easier way to check which sync is being used, either 1.) open your preferred launcher through the terminal or 2.) use Mangohud with the following code in your config file…

winesync

Identifying if the game is running Esync, Fsync, NTsync, or None will help determine which sync is best for you.

Hey :slight_smile:

We did not publish yet completly the ntsync and it is only in testing.
Anyways, if you want to test you can download following, which is compiled for steam-runtime:

After that put this into .local/share/Steam/compatibilitytools.d manually.

Restart steam and add to the launch commandline:

PROTON_USE_NTSYNC=1 %command%

ESO seems to work with ntsync, for some reason the launcher doesn’t launch, but the direct exe file for the game does. Not sure if there is a work around or not. Heroic doesn’t show any errors in logs. So no hint for me :\

Edit: Launcher doesn’t launch with fsync either, but will with something like proton-ge and others.

Just tried, and it’s the same thing.

Marvel Rivals does not launch it’s launcher, but Overwatch 2 does, since it goes straight into the game.

Also, differently from before, PROTON_ENABLE_WAYLAND=1 are also completely working with OW2, and with Marvel Rivals.

But still has the same sort of problem as mentioned here, in Wayland that is.


NTSync seems to work fine, just GPU usage are lower in wayland.


It’s 1440p, but Spectable only seem to take 1080p screenshots.


If anyone know any solution to low GPU usage and what to do about vsync/gsync not being fully disabled on wayland, let me know.

These two seem to be the only problems at this point preventing a full wayland migration in every usage point, at least to me.

I still think these two could be related in some way. Can't disable G-Sync in Wayland - #2 by random-user - Help - KDE Discuss

@ptr1337


Edit1:

Wow, at least on X11, the GPU usage seems way more stable always staying at 97-99%, and the motion are way smoother, like in way I described in a previous thread, where the only way I could achieve it, were disabling some windows manager setting through winecfg, but that caused other issues.


Edit2:

If you are able to fix the launcher issue, this might be it. @ptr1337


Edit3:

I dont know if it was the Reduce Buffering setting or another factor, but now the gpu usage are staying on 90%~ most of the time with some improved FPS. With native wayland driver enabled. Maybe it will be improved even more on proton 10.

Coud also have been due to the setting mentioned below.

I initially thought that NTsync was helping on GPU usage. Maybe it is on OW2.

I was able to get Marvel Rivals to run, the launcher opened, maybe it was a cache/glitch issue before, as I pressed Play, it closed a bit after, without opening anything.

I has happened before in a similar way, in other games, with fsync, so, it might just be a bug, unsure.

GPU usage is just as bad as with FSync in both. Still a bit better on X11.


Edit1:

Well, one of the reasons was, I was using VKD3D_SWAPCHAIN_LATENCY_FRAMES set to 1 to reduce input latency even more.

I have removed it, the usage are better but not as it should be, 95%+. Even with Reflex Off.

Fps are lower in the ingame stats, because it updates faster than Mangohud and happens when taking the screenshot.


Maybe the impl are different, otherwise OW2 should have been affected, as I have this in the dxvk conf.

dxgi.maxFrameLatency=1
dxgi.syncInterval=0
dxgi.nvapiHack=false
dxvk.tearFree=false
dxgi.numBackBuffers=1

Edit2:

In the actual ow2 gameplay, gpu usage can go lower, so, not as stable. Maybe the result would be different in a MMO or single player. I dont have any to test right now.

At least that smooth feeling, are still there, regardless.

Unfortunately I don’t have a Nvidia GPU to help test with you sorry, I did look into it a bit and it seems like as you know an Nvidia + Wayland GPU utilization problem. Have you tried Wayland with Fsync? See if performance gets closer to what you get in X11? Maybe even try to compile a TKG Wine version since the config can be edited, uses the latest Wine version which is 10 not 9, plus some additional patches can be tested or disabled? I’m suggesting at least for now…

_wayland_driver=“true”
_win10_default=“true”
_protonify=“true”

I have tested a bit using an AMD Gpu going between Wayland, Gamescope(Xwayland), and X11 and the performance and utilization was the same across the board. The benchmark I used was FFXIV Dawntrail Benchmark.

Forgot to mention along the testing I did test Ntsync against Fsync and the performance was nearly identical at least fps wise on my system using the above benchmark.

I already did test with fsync, similar lower gpu usage result.

proton-cachyos does have wayland option too, that’s what this PROTON_ENABLE_WAYLAND was for.

What is the _win10_default="true"?

I suppose _protonify=“true” means to be able to use on steam?!


Edit1:

Just checked.

_win10_default are to set wine to win10 version.

_protonify contain patches, hacks and optimizations.

So, unless the vsync/vrr/gsync problem can be fixed, which could still be related, not much more to do in this matter. This is on the driver / OS level, not proton/wine.

NTSync are stable and works well, probably a bit better than FSync and has the smoothness added.

Can you release into the public native proton-cachyos @ptr1337 ?


Here are more smooth running games. All 1440p. It appears that 1440p images also get resized here to 1080p.


Heaviest city in rdr2, runs better than windows.

I will talk with the proton-cachyos maintainer. Personally, I do not see an issue, as long fsync and esync are proberly working and NTSync is opt in.

Is Ntsync enabling broken? I cannot enable Ntsync in the Jan6 versions of Wine-Cachyos or Proton-Cachyos in Steam nor Lutris. I have tried the variables WINE_DISABLE_FAST_SYNC=0 for Wine and PROTON_USE_NTSYNC=1 for Proton. This did work in the Jan2 version of both.

It is not, they only have NTSync in that release mentioned by @ptr1337

20250102

I see there was an update to Cachy-Wine and Cachy-Proton, however _Ntsync7 branch were not merged in. How would I go about compiling with Ntsync support since it is updated along with the regular version just not merged in. Looking at the Jan 2 build, Ntsync gets merged in before _cachy branch gets merged. So how would I go about compiling the Jan26 Proton or Wine with Ntsync support with the _cachy branch incorporated? Or do I just compile the _Ntsync7 branch?

So how would I go about compiling the Jan26 Proton or Wine with Ntsync support with the _cachy branch incorporated? Or do I just compile the _Ntsync7 branch?

No, the branches contain groups of changes, which have to be merged into the main one to create a release.

You will need to generate a patch from the cachyos_9.0_<version>/_ntsync7 for both wine and proton repositories. To do that easily, use GitHub compare function, I have linked to the patches for the current version

proton, wine

Now you can apply these patches in the PKGBUILD and they should work.

I would sincerely suggest to not bother with it right now, this rebase on top of Proton is broken in subtle ways and a waste of time.

Thank you very much! The Jan 2 release that had NTsync support has been fulfilling my gaming needs perfectly, I was just curious on the changes to Wine if there were any performance enhancements for my use cases.

I’m confused. What do I need, to try out ntsync? Currently I have linux-cachyos 6.13.2-2 kernel, regular wine and proton-cachyos (1:9.0.20250126-2).
What I’ve tried to do is: adding module with sudo modprobe ntsync, then adding to game’s launch options (Witcher 3 in my case) mangohud PROTON_USE_NTSYNC=1 %command%, then launching the game. In mangohud overlay I can see fsync being used, so it doesn’t work. I also tried the same but with proton-cachyos-9.0-20250102, but then it runs with like 20 fps.
Do I need to compile kernel with patches, or use another proton version or another wine version or something else?

@Klusio19

If you tried that version, unless NTSync were showing there, you had nothing active, possibly only wine. Since if you disabled fsync/esync to enable ntsync, and nothing showed, that could be why.


@loathingkernel It run very stable here, with the smoothness added.

Since ntsync is optional, what is the problem of including it in the actual release?

Anyone would be able to try and see if works in their system. That would include the weekly updates, while having the option. Just as you have the other two options. Regardless of issues known.
If In some game it doesnt work, just change, like with fsync.

The issues are not system specific, there is no value in that from a testing perspective.

This is the problem with it, there are some games that do not work with fsync either if our rebased ntsync if applied on top of Proton.