Steam for Linux

Steam for Linux

 This topic has been pinned, so it's probably important
Pierre-Loup Jul 30, 2019 @ 3:23pm
fsync testing instructions
If you run games with Proton, you might want to test fsync! For more details, refer to this announcement.

Source code:

If you know how to build the kernel, the testing branch is over there:

https://gitlab.collabora.com/krisman/linux/commits/futex-wait-multiple-master

Distribution packages:

Arch Linux

A linux-fsync package is available on the AUR at:

https://aur.archlinux.org/pkgbase/linux-fsync/

An Arch repository with pre-built packages is also available, see pinned comments on the AUR page for more information.

Ubuntu

We're maintaining PPAs for Ubuntu 18.04[launchpad.net] and Ubuntu 19.04[launchpad.net]. It's recommended to ppa-purge any other PPAs that include the kernel, like our SteamVR PPA.

After adding the PPA, installing `linux-mfutex-valve` and rebooting into our kernel should be the only step needed.

For example, to start testing on Ubuntu 18.04:

sudo add-apt-repository ppa:valve-experimental/kernel-bionic sudo apt install linux-mfutex-valve sudo reboot

Testing instructions:

Mostly we are trying to make sure all games work fine with fsync; a slight CPU use reduction might be observed during testing.

If using Proton 4.11, fsync is enabled by default if the right kernel support is detected. You should see console messages in the form of:

fsync: up and running.

To narrow down any new issues, the PROTON_NO_FSYNC=1 variable can be set to revert to esync even when an fsync-capable kernel is installed.

If you can reproduce a crash or performance regression that consistently goes away with PROTON_NO_FSYNC=1, please report it in the dedicated fsync issue[github.com].

Post any performance results with 4.11 and fsync toggled on/off to the performance results issue[github.com].
Last edited by Pierre-Loup; Aug 8, 2019 @ 6:04pm
< >
Showing 1-15 of 127 comments
thetargos Jul 30, 2019 @ 3:53pm 
Yippie !!! Thanks, Valve!
Hoxer Jul 30, 2019 @ 4:01pm 
Exciting stuff! Champagne for everybody!
Last edited by Hoxer; Jul 30, 2019 @ 4:02pm
Omega Jul 30, 2019 @ 4:07pm 
Interesting stuff, I am looking forward to testing this!
:installgen2:
Is this kernel using the newest 5.2? Staring at AUR right now spamming F5 lol
Freso Jul 30, 2019 @ 4:50pm 
> fsync kernels are on AUR

What are the packages called?
x_wing Jul 30, 2019 @ 4:55pm 
Wow, it's incredible all the work you're doing!

By the way, by the commit list the futex-wait-multiple kernel is 5.3 based
Zeioth Jul 30, 2019 @ 5:08pm 
You are breathtaking!
Originally posted by Freso:
> fsync kernels are on AUR

What are the packages called?
I don't think it's on AUR yet I've been refreshing it periodically
troylights Jul 30, 2019 @ 5:17pm 
I'm eager to test it on Ubuntu, but it would seem that the ppa has not yet received the patched kernel.
lucifer Jul 30, 2019 @ 5:40pm 
Anyone mind doing some esync/fsync comparisons?
Omega Jul 30, 2019 @ 5:40pm 
Originally posted by lucifer:
Anyone mind doing some esync/fsync comparisons?
I am sure Phoronix will be doing this in the coming days.
Birdstream Jul 30, 2019 @ 6:22pm 
Originally posted by troylights:
I'm eager to test it on Ubuntu, but it would seem that the ppa has not yet received the patched kernel.

The PPA mentioned in the description is actually incorrect, however the link provided is:

ppa:valve-experimental/kernel-bionic
nuttaxArc Jul 30, 2019 @ 6:26pm 
When I tried to build the package from AUR i kept on getting this error.
Using Manajaro, Kernal 5.2.4


Preparing...
Cloning linux-fsync build files...
Checking linux-fsync dependencies...

Building linux-fsync...
==> Making package: linux-fsync 5.2.1.arch1-1 (Tue 30 Jul 2019 09:20:01 PM EDT)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Updating archlinux-linux git repo...
Fetching origin
-> Found config
-> Found 60-linux.hook
-> Found 90-linux.hook
-> Found linux.preset
-> Found futex-wait-multiple-5.2.1.patch
-> Found futex-Consolidate-duplicated-timer-setup-code.patch
==> Validating source files with sha256sums...
archlinux-linux ... Skipped
config ... Passed
60-linux.hook ... Passed
90-linux.hook ... Passed
linux.preset ... Passed
futex-wait-multiple-5.2.1.patch ... Passed
futex-Consolidate-duplicated-timer-setup-code.patch ... Passed
==> Verifying source file signatures with gpg...
archlinux-linux git repo ... FAILED (unknown public key A5E9288C4FA415FA)
==> ERROR: One or more PGP signatures could not be verified!
< >
Showing 1-15 of 127 comments
Per page: 15 30 50