Wine 10.7 is out today as the newest bi-weekly release of this open-source software for running Windows games and applications on Linux and other platforms.
What I find most exciting with Wine 10.7 is the User Fault FD “UFFD” support for enhancing the write-watches performance. This can help some games with their game load times and more. This UFFD-based tracking for write watches was worked on by developer Paul Gofman.
CodeWeavers engineer Paul Gofman explains in the merge request the significant performance benefits this newly-merged code can provide:
“The primary motivation for this patchset is performance improvement. The issue was originally observed with Streets of Rage 4 game which was sometimes loading leves for about 1-1.5 min (while that was happening almost instantly on Windows). The performance problem is coming from .Net Core memory management / garbage collector code. That huge performance issue was caused not only by direct turnaround difference for write watched memory access but also by specifics of the [algorithm] which was using different memory pools / strategies [effectively] based on memory access timing and was resulting in especially unfortunate pattern hitting write-protected (for write watch) pages much more often than it normally would. Since then something has changed either in the game or in .Net Core it is using, and the difference in level loads is not that dramatic without this optimization, but still it is some 6-8 sec without this patch instead of 1.5-2sec with this patch or on Windows, suggesting that it still provides a huge performance improvement at least for .Net Core memory management.”
Some micro-benchmarks carried out in that merge request are also very positive on the Wine performance impact:
In addition to the patch for better write watches performance, Wine 10.7 also brings support for Float format conversions within WindowsCodecs, more work on the PDB back-end, and 14 known bug fixes. Fixes this time range from games not receiving keyboard input under virtual desktop mode to fixes for apps like WinAmp and HeidiSQL.
More details on the Wine 10.7 release via WineHQ.org.