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

Worse Performance for Cities: Skylines on Windows #4612

Open
Drift91 opened this issue Jan 14, 2025 · 3 comments
Open

Worse Performance for Cities: Skylines on Windows #4612

Drift91 opened this issue Jan 14, 2025 · 3 comments

Comments

@Drift91
Copy link

Drift91 commented Jan 14, 2025

Hi, I'm trying to use DXVK to improve performance on the original Cities: Skylines on Windows. I've read that DXVK nearly doubles framerates for Cities: Skylines II on Windows. And I've seen a few reports of running the Windows build of the original game with DXVK on Wine performs better than the official Linux native build.

I'm however stumped as to whether the better draw call efficiency and such is actually reducing the CPU bottleneck, as it seems to be replacing it with a far worse GPU bottleneck. Typically the game doesn't max out my GPU while zoomed in on a dense city area, even with 200% supersampling. I'm not sure if the people getting improved performance just have far better GPUs than me, to the point they're still CPU bottlenecked, or if there's something wrong with my configuration or a bug in the binaries. I tried installing DXVK 1.10.3 and that cut down my framerate even further for some reason.

If you could please suggest something to improve the performance or provide me with instructions on how to collect any information you need I'd appreciate it. Unless of course the game engine just simply runs less efficiently with Vulkan for some reason, in which case a very basic explanation of why that is would be nice if possible.

Software information

Cities: Skylines (with a moderate amount of mods installed)

System information

  • GPU: GTX 1660 Ti
  • Driver: Studio Driver 566.36
  • Wine version: N/A
  • DXVK version: 2.5.3

Apitrace file(s)

  • I think I'm misunderstanding the instructions, as I end up running the trace without DXVK, making it pointless.
  • Someone said in another issue to put dxvk.hud = full in the config and take a screenshot, so here:
    20250114070830_1

Log files

@doitsujin
Copy link
Owner

Well the obvious issue here is that the game is trying to use over 12 GB of VRAM on a GPU that only has 6. Somewhat common Unity engine issue and unfortunately very difficult to solve.

@Drift91
Copy link
Author

Drift91 commented Jan 14, 2025

Yeah alright, I see that now. I already noticed the game eating up "shared GPU memory" in Task Manager, but I didn't notice until you mentioned it that such behaviour isn't present with native DirectX. Is there no way to clamp the memory usage with Vulkan/DXVK? I tried setting dxgi.maxDeviceMemory to my VRAM, maybe dxgi.maxSharedMemory will do the trick?

@doitsujin
Copy link
Owner

We already report the correct amount of available memory to the game, it just chooses to ignore it. Can't do much there, the only reason this works better on Windows is that the OS has better memory management and migrates less frequently used resources to system memory, DXVK doesn't currently do that.

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

No branches or pull requests

2 participants