Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[TF2][Linux] running tf2 under proton 4.11-6 with d9vk enabled is more performant than native binary #2844

Closed
ovlx opened this issue Oct 6, 2019 · 26 comments

Comments

@ovlx
Copy link

ovlx commented Oct 6, 2019

So I was curious to see how it would behave, and was surprised to find that the game runs about with about 50%-75% higher fps (on my machine) under proton with d9vk enabled, compared to the native linux install.

the only problem I found was that the game launches in insecure mode using proton.

I suppose this would be more of a request than a "bug", but perhaps it might be worth investigating whether d9vk can be integrated into the game or eventually switching over to proton as the preferred install option on linux.

@bkdwt
Copy link

bkdwt commented Oct 14, 2019

So I was curious to see how it would behave, and was surprised to find that the game runs about with about 50%-75% higher fps (on my machine) under proton with d9vk enabled, compared to the native linux install.

the only problem I found was that the game launches in insecure mode using proton.

I suppose this would be more of a request than a "bug", but perhaps it might be worth investigating whether d9vk can be integrated into the game or eventually switching over to proton as the preferred install option on linux.

Are you using Steam windows version + lutris for play TF2 in DX9 or you just enable the proton on steam for Linux?

In my case, if I enable proton, the Linux version of TF2 still has priority over the windows version, in other words, I'll play in OpenGL instead of DX9.

@ovlx
Copy link
Author

ovlx commented Oct 14, 2019

I'm using the native Linux client
You can force the windows version by ticking the "force the use of a steam play compatibility tool" option in tf2's properties menu

@bkdwt
Copy link

bkdwt commented Oct 14, 2019

I'm using the native Linux client
You can force the windows version by ticking the "force the use of a steam play compatibility tool" option in tf2's properties menu

I tried using d9vk on TF2, but the game only shows a black screen or a screen full of artifacts.

@ovlx
Copy link
Author

ovlx commented Oct 14, 2019

make sure you have the correct vulkan drivers installed, it will black screen if d9vk is not enabled.

edit also , im using Radv , not sure what would happen on nvidia or intel if applicable

@bkdwt
Copy link

bkdwt commented Oct 14, 2019

make sure you have the correct vulkan drivers installed, it will black screen if d9vk is not enabled.

edit also , im using Radv , not sure what would happen on nvidia or intel if applicable

I'm using a RX570 on Fedora 31. Fedora comes with vulkan and mesa libs installed by default with the last version.

@bkdwt
Copy link

bkdwt commented Oct 15, 2019

I redid the whole procedure again and now it worked. Regarding performance, there is a lot of falling frames in singleplayer mode. I have no way to test in multiplayer mode because the game is running in "unprotected" mode.

@ovlx
Copy link
Author

ovlx commented Oct 15, 2019

I should also mention that i am using the experimental Fsync patches, so you might want to try disabling esync and see if the frame-drops go away

edit: for further detail, im using the 5.2 kernel, with futex wait(fsync) on kubuntu 18.04.3 with the latest mesa git

@bkdwt
Copy link

bkdwt commented Oct 16, 2019

I should also mention that i am using the experimental Fsync patches, so you might want to try disabling esync and see if the frame-drops go away

edit: for further detail, im using the 5.2 kernel, with futex wait(fsync) on kubuntu 18.04.3 with the latest mesa git

Installed the kernel with fsync support on Fedora. It seems that fsync has made the situation worse because now I can't play even in training mode because the game is running in an insecure mode. lol

@ovlx
Copy link
Author

ovlx commented Oct 18, 2019

I should also mention that i am using the experimental Fsync patches, so you might want to try disabling esync and see if the frame-drops go away
edit: for further detail, im using the 5.2 kernel, with futex wait(fsync) on kubuntu 18.04.3 with the latest mesa git

Installed the kernel with fsync support on Fedora. It seems that fsync has made the situation worse because now I can't play even in training mode because the game is running in an insecure mode. lol

strange, What framerate are you running? and do you have tearfree enabled? I was running my testing by creating a local server with bots, i noticed slight stuttering when the framrate dipped below 90fps, but most of the time the framerate was well above 140.

edit: i also tried the stock ubuntu kernel, with esync on and off, seemed to only drop performance, and remained in insecure mode, so idk, source 1 is definitely buggy under wine.

@ovlx
Copy link
Author

ovlx commented Jan 22, 2020

small update, it would appear that the "insecure mode" problem is because steam cannot validate the signature of the client.dll /server.dll in the tf/bin folder, strangely, ive run the exact same install of tf2 on stock wine with the windows version of steam and it doesn't have any problems validating the file, so this appears to be a proton/steam specific issue as seen here ValveSoftware/Proton#2704

@Yetoo1
Copy link

Yetoo1 commented Feb 18, 2020

@PineconesUpMyButthole You won't get VAC banned and starts in secure mode. What I've done in the past is set the Steam Windows executable to be a 64bit wine prefix (with normal wine) and set steam to start with -no-cef-sandbox argument and things are smooth from there. Have you tried starting TF2 with -windowed, though?

@Yetoo1
Copy link

Yetoo1 commented Feb 21, 2020

@PineconesUpMyButthole For the ntlm_auth errors, have you installed the winbind package (ntlm_auth log message suggests that ntlm_auth can be found there)? Just to confirm, did you start TF2 with -windowed as a launch option set via the properties dialog in steam or is TF2 still not launching at all?

@ovlx
Copy link
Author

ovlx commented Feb 21, 2021

an interesting development, looks like valve added the dxvk backend to portal 2 !
some performance numbers are available courtesy of phoronix https://www.phoronix.com/scan.php?page=article&item=portal-2-radv&num=1

@Munoida
Copy link

Munoida commented Dec 11, 2022

would be awesome if valve added it to tf2....

@NukeThief
Copy link

Is there any chance it would be added to tf2 and windows?

@SupinePandora43
Copy link

Is there any chance it would be added to tf2 and windows?

There's always hope, but looking at recent tf2 updates, there are chances...

@NukeThief
Copy link

Is there any chance it would be added to tf2 and windows?

There's always hope, but looking at recent tf2 updates, there are chances...

I hope so, Vulkan runs so much better for me.

@lflo5727
Copy link

Playing on slightly more limited hardware, having dxvk-native for TF2 would be amazing.
Hoping its part of the "fixes" being included in the summer update.

@SpidFightFR
Copy link

+up. Do we have any news about this ?

@sqrtd
Copy link

sqrtd commented Jul 13, 2023

Any news about this? The summer update came out yesterday but unfortunately DXVK wasn't a part of it.

@zurrty
Copy link

zurrty commented Aug 6, 2023

Any updates? TF2 is nearly unplayable on my system at the moment performance wise. I'm hoping dxvk-native gets added soon.

@zbikk
Copy link

zbikk commented Oct 16, 2023

enabling proton support for official servers would make the native binary obsolete and consequently decrease valve's workload, i see this as a win win.

@Evonos
Copy link

Evonos commented Oct 26, 2023

Soo... i get sent from Steam support to here... with a question about DXVK on windows about CSS... then get sent to a TF2 & proton Discussion on linux... classic.
any idea to my original question?

@jrelvas-ipc
Copy link

Vulkan would be a big improvement for hybrid graphics laptops; Vulkan is multi-gpu aware and is capable of direct scanout and automatically choosing the discrete gpu.

I've also noticed that TF2 on Linux is pretty taxing on the CPU, so anything which reduces the load on that would probably have a big effect. Even though my hardware is more than capable of running TF2 (i7-13800h, nvidia rtx 4000 ada workstation graphics), I still get pretty bad stutters and low performance under certain conditions, like being near a group of player models.

Valve has to either make TF2 work under Proton or ensure feature parity with running it there. (Vulkan/DXVK, Wayland)

@jrelvas-ipc
Copy link

Valve has to either make TF2 work under Proton or ensure feature parity with running it there. (Vulkan/DXVK, Wayland)

Aged like fine wine :)

tf2's x64 linux beta implements dxvk-native and ships a newer sdl2 version which is capable of Wayland.

@ovlx
Copy link
Author

ovlx commented May 15, 2024

took a while but it happened. retail linux binary now uses dxvk and the game was updated to be 64bit. Guess that closes this chapter!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

15 participants