Two bits of major news to cover for the Steam Play Proton compatibility layer, with some exciting major changes coming in with updates. Don't know what Steam Play Proton is? Go take a look at our dedicated page.
Firstly, if you have an AMD GPU and you don't mind grabbing the latest development code for the Mesa graphics drivers - Cyberpunk 2077 should actually work on Linux with the new Proton 5.13-4 release. Valve developer Pierre-Loup Griffais mentioned that CD PROJEKT RED allowed them some early testing time to get the work done for both vkd3d (the Direct3D 12 to Vulkan layer) and radv (the AMD Mesa Vulkan driver). As an NVIDIA GPU owner, this makes me quite jealous as it seems my only other current choice on Linux is Stadia or GeForce NOW (unofficially - until later in 2021).
Additionally, there's now also a new Proton Experimental branch available which has the start of major architectural changes to Wine. This brings with it a plan to reduce CPU overhead and improve performance in scenarios related to input and windowing. Seems Proton Experimental is an additional version of Proton, so you would install it along side the other versions currently available for this compatibility tool.
You can find the Proton changelog here.
Need help and / or tech support? Be sure to check out our dedicated Forum.
Last edited by Shmerl on 13 December 2020 at 7:23 am UTC
Quoting: ikirutoI think if Nvidia herself takes on helping the developers of VKD3D, then anything is possible. But this is fantastic. :)
Nvidia had the opportunity to create a means to utilise the DLSS library that they include with their driver in their own open source game, and they explicitly refused to.
It's entirely within their means to be more helpful, but they don't want to; that's why lots of people have a low opinion of them.
Quoting: ikirutoQuoteStep by Step:https://videocardz.com/newz/cyberpunk-2077-gets-fps-boost-with-a-patch-for-amd-ryzen-cpus
()
There is also a video guide available here.
Or for lazy people like me, try these commands here below:
$ cp Cyberpunk2077.exe{,bak}
$ offset=$(xxd -u -p Cyberpunk2077.exe | tr -d '\n' | grep -ob 753033C9B8010000000FA28BC8C1F908 | cut -d: -f1); echo 743033C9B8010000000FA28BC8C1F908 | xxd -r -p -s $(($offset>>1)) - Cyberpunk2077.exe
Quoting: ShmerlI don't think Nvidia cares about that. They might fix their drivers in response to some Wine related bugs (that happened in the past), but I don't remember them ever contributing to Wine or related projects, let alone when it's related to their proprietary stuff.
Liam Middlebrook is an engineer from Nvidia, he regularly contributes to winevulkan, see e.g. https://www.winehq.org/pipermail/wine-devel/2020-November/thread.html and search for “Liam”.
Last edited by jens on 13 December 2020 at 12:26 pm UTC
Quoting: The_Aquabatinteresting thanks for the command, I wonder if this works with other games. taskset does not solve this problem?
taskset changes the process affinity to cores, and it works in some cases. But if the kernel finds out that a core (with lower affinity) is free and there is a scheduled thread, it will assign it to the free core.
In order to let CP2077 work properly with my CPU (a AMD Ryzen ThreadRipper), I had to force the shutdown of the cores far from the GPU bus in the hw topology.
I dealt with it very personally some time ago: https://www.gamingonlinux.com/forum/topic/3933/post_id=25255
Last edited by LordDaveTheKind on 13 December 2020 at 2:48 pm UTC
Quoting: CatKillerQuoting: ikirutoI think if Nvidia herself takes on helping the developers of VKD3D, then anything is possible. But this is fantastic. :)
Nvidia had the opportunity to create a means to utilise the DLSS library that they include with their driver in their own open source game, and they explicitly refused to.
It's entirely within their means to be more helpful, but they don't want to; that's why lots of people have a low opinion of them.
This approach was real 10 years ago. It has changed nowadays:
https://forums.developer.nvidia.com/t/dlss-support-on-linux/120552/14
Quoting: LordDaveTheKindThis approach was real 10 years ago. It has changed nowadaysNo. They've included the (proprietary) library with their (proprietary) driver, exactly as I said. What they haven't done, and aren't likely to, is help open source projects - like vkd3d or Q2RTX - make any use of that. I'd like it if it were different, but it isn't.
Quoting: CatKillerNvidia had the opportunity to create a means to utilise the DLSS library that they include with their driver in their own open source game, and they explicitly refused to.No problem. AMD FidelityFX CAS does not feel bad on Nvidia video cards. For example, in Cyberpunk it shows itself well. 80-100% to 60 fps. :)
It's entirely within their means to be more helpful, but they don't want to; that's why lots of people have a low opinion of them.
https://www.hardwareluxx.ru/index.php/artikel/software/spiele/49974-test-death-stranding-na-raznykh-videokartakh-s-dlss-2-0-i-fidelityfx-cas.html?start=1
Last edited by ikiruto on 13 December 2020 at 3:26 pm UTC
Signature of AVX bug is as follows:
Game crashes at and beyond these locations:
Take a seat for Corpo
Exit bar for Street Kid
After cutscene for arrival at city for Nomad
You can do this mod yourself trivially. Simply use a hex editor on the Cyberpunk2077.exe,
and replace "55 48 81 ec a0 00 00 00 0f 29 70 e8" with "c3 48 81 ec a0 00 00 00 0f 29 70 e8".
This simply turns the bad AVX call into a return.
DISCLAIMER: May be breaking things under the hood, but seems stable.
Probably solves the problem with hangs. I haven't been able to get any hangs yet. Checking.
Quoting: jensLiam Middlebrook is an engineer from Nvidia, he regularly contributes to winevulkan, see e.g. https://www.winehq.org/pipermail/wine-devel/2020-November/thread.html and search for “Liam”.
That looks good. Did he ever contribute anything that implements Nvidia's proprietary APIs there?
Last edited by Shmerl on 13 December 2020 at 5:43 pm UTC
See more from me