Poor performacne in Skyrim - Did my homework, still stumped

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
thec4ke
Level 1
Level 1
Posts: 5
Joined: Tue Jan 01, 2013 1:06 pm

Poor performacne in Skyrim - Did my homework, still stumped

Post by thec4ke »

Skyrim's performance under wine is much worse than Windows, particularly in open areas with action where it gets low enough to see individual frames. In windows I can run it in Ultra with very few fps drops in any situation. I've tried Low to Ultra quailty settings. While low does make a difference, it's still noticibly worse than windows under Ultra. I've done some tests and played with the configuration. I'm documenting my experiences here to hopefully find a way to improve performance, but at the very least help out the devs or anyone who is having similar issues.


Hardware:
intel i7 860 quad core 2.6 ghz
EVGA GeForce GTX 560ti 1279MB
8gb ram
Gigabyte P55A-UD3
120hz monitor rate set to 120 (60 doesn't help)

Software
OS: Debian wheezy
Kernel: tried Debian 3.6-686-pae and 3.2-686-pae
Nvidia Drivers/userspace libraries/X driver - tried 310.19 (on 2.6 kernel) using the NVidia installer and the debian repository version (~305 IIRC, on 3.2 kernel)
wine 1.4.1
lxde desktop (openbox based, lightweight, no compositing effects)

This is a fresh install so there isn't much on this system other than dependencies for the above packages, and packages for KDE 4, which I'm not using to run wine.

DLLs:

I installed the native dx9 and 10 with winetricks, and later overrided them with the built-ins using winecfg. Performance is about the same.
I've tried both the internal and native msvcr90. They seem to perform about the same.

Registry

UseGLSL=disabled (enabled made no difference)
VideoMemorySize=1279 (tried 1024 also, no difference)

Debugging:

As per recommendation of the performance guide, I installed wined3d on my Windows Partition. I was pleasantly surprised that they ran almost as well as the native dlls!

I tried different screen resolutions. The performance was slightly better at lower resolutions but still poor.

I would love to try Nvidia's nvidia-smi performance monitoring tool but it simply replies with "not supported" and N/A for most of my card. All it successfully reports is the temperature, which is only 61C (6 above idle) at resource intensive areas in the game. It also reports memory usage to be 8MB which makes no sense; so I'm guessing this isn't supported either.

At this point it's starting to sound like the non-graphics card/library things.

top reports pretty even distribution amoungst the 4 cores, however none of them ever go over 30%, even in resource-intensive areas of the game. TESV.exe (the game executable) is the only process using over 5% of the CPU; it seems to average 25-30%. System memory usage is reported at 810MB.

I set the niceness of TESV.exe to -20 (highest priority). Didn't help.

I tried the sysprof program recommended in the performance guide; It shows TESV at %87 CPU and wineserver at 4%, with everything else under 2%. I'm unfamiliar with this program and can't find any real documentation (man sysprof is a single paragraph), so I'm not sure what to make of these numbers. I would guess it bases it on total CPU time/CPU time of individual Calls/Apps. If not this seriously conflicts with what top is reporting. Also of interest is the kernel reporting %27.89, the nv011906rm driver reporting %12.05, libgl.so reporting %11.2, and libnvidia-glcore.so repoting 17.3%. Everything else is 5% or less. I would include the entire report as an attachment, but this board limits uploads to 2mb, and won't allow me to upload any compressed files.

So what do I have here, driver or kernel issue? I'd be willing to compile a custom kernel if anyone knows of any options that might actually help.
User avatar
dimesio
Moderator
Moderator
Posts: 13367
Joined: Tue Mar 25, 2008 10:30 pm

Re: Poor performacne in Skyrim - Did my homework, still stum

Post by dimesio »

Looks like the one thing you haven't tried is a newer version of Wine.
thec4ke
Level 1
Level 1
Posts: 5
Joined: Tue Jan 01, 2013 1:06 pm

Re: Poor performacne in Skyrim - Did my homework, still stum

Post by thec4ke »

Unfortunately the latest release gives me this error upon launching the game from steam, prior to when the launcher would normally appear. 1.4.1 was completely removed, a new tree built, and Steam reinstalled.

fixme:gameux:GameExplorerImpl_VerifyAccess (0x1f9458, L"C:\\Program Files\\Steam\\steamapps\\common\\Skyrim\\TESV.exe", 0x32ba88)
err:seh:raise_exception Unhandled exception code c0000005 flags 0 addr 0x7ecd32c8
thec4ke
Level 1
Level 1
Posts: 5
Joined: Tue Jan 01, 2013 1:06 pm

Re: Poor performacne in Skyrim - Did my homework, still stum

Post by thec4ke »

I just installed Linux Mint 14 on the same hardware, running wine 1.4. I now have about 90% of my windows performance, similar to what I got with wined3d.

Key differences I can think of are:

wine 1.4, debian was 1.41
3.5 kernel, debian was 3.6 and 3.2

The preempt settings were identical. I'll install 1.41 later to see if it's an issue between versions. I've included diff output between the debian 3.6 and mint 3.5 kernel configs for anyone who's interested and/or knows more about the kernel config than me.
thec4ke
Level 1
Level 1
Posts: 5
Joined: Tue Jan 01, 2013 1:06 pm

Re: Poor performacne in Skyrim - Did my homework, still stum

Post by thec4ke »

I guess I can't upload anything or include large code blocks

kernel diff: http://pastebin.com/ZuPppkai
thec4ke
Level 1
Level 1
Posts: 5
Joined: Tue Jan 01, 2013 1:06 pm

Re: Poor performacne in Skyrim - Did my homework, still stum

Post by thec4ke »

OK I might have been premature. After correcting a choppy mouse issue that was hiding the actual framerate I realise I'm getting more like 70% of windows performance. That will be it for my unscientific numbers.
ZombieRedShirt
Level 3
Level 3
Posts: 86
Joined: Fri Oct 07, 2011 6:25 am

Re: Poor performacne in Skyrim - Did my homework, still stum

Post by ZombieRedShirt »

What you most need to do is try a fresh wine prefix, and build the latest version of wine. That plus the latest nvidia drivers should see you having pretty decent performance, it's gotten a good deal better lately. A fresh wine prefix is important in this case, because if you couldn't launch steam with the current one you have, then it's got too much cruft that's built up over time and is causing hassles now. It's possible to create a seperate wine prefix for experimentation, so you don't have to wipe what you've got.
Locked