Steam has released an updated version of Proton. Version 4.11 is now available along with kernel packages for testing purposes.
Today we are releasing the first build of Proton 4.11, based on Wine 4.11. Among the usual variety of functional fixes, as well as a new Vulkan-based D3D9 implementation, it also includes a significant amount of work on reducing CPU overhead for multithreaded games. We observed the following performance gains when forcing a CPU-bound scenario on a high-end machine by reducing graphics details to a minimum.
All this hard work they are doing is great news for people such as myself who would love to see a time when PC gaming on Linux is the norm.
they also included an experimental replacement for esync and are proposing changes to the Linux kernel. Here is what Pierre-Loup said about the proposed kernel changes.
As such, we’re proposing changes to the Linux kernel to extend the futex() system call to expose what we think is the needed extra bit of core functionality needed to support optimal thread pool synchronization. Proton 4.11 includes the fsync patchset, which will leverage this new Linux kernel functionality to replace esync when supported. For more technical details, refer to the link to the proposed kernel changes above.
We are also posting proof of concept glibc patches for upstream review and discussion; these patches expose the corresponding kernel functionality as part of the pthread library. We think that if this feature (or an equivalent) was adopted upstream, we would achieve efficiency gains by adopting it in native massively-threaded applications such as Steam and the Source 2 engine.
They intend to continue their testing to search out the last remaining bugs. Using Ubuntu and Arch containing custom kernels with the above mentioned patches.
Gaming on Linux is picking up steam (pun intended) and I look forward to the coming months and advancements in gaming on Linux.