You are not logged in.

#1 2013-09-05 18:07:55

xpander
Member
Registered: 2013-01-23
Posts: 54

Wine with d3d command stream patches

hello,
i created pkgbuild for those who want to try it out
aur: https://aur.archlinux.org/packages/wine-d3dstream
git:https://github.com/xpander69/xpander-ar … -d3dstream

aur git build:https://aur.archlinux.org/packages/wine-d3dstream-git/

read about it:
http://www.winehq.org/pipermail/wine-de … 01106.html

also dont forget to add the registry key

HKCU/Software/Wine/Direct3D/CSMT =
"enabled"

benchmarks:

CSMT=enabled: https://dl.dropboxusercontent.com/u/287 … nabled.png
CSMT=disabled: https://dl.dropboxusercontent.com/u/287 … sabled.png

more benchmarks (with my 660TI this time):
https://www.youtube.com/watch?v=NPlJi9uLPs0
and new video with SimpleScreenRecorder: https://www.youtube.com/watch?v=8r_dSJ6uwms

Last edited by xpander (2014-01-13 13:15:22)

Offline

#2 2013-09-05 18:16:03

Thaodan
Member
From: Dortmund, Nordrein-Westfalen
Registered: 2012-04-28
Posts: 432

Re: Wine with d3d command stream patches

the | exit in PKGBUILD is unneeded


Linux odin 3.13.1-pf #1 SMP PREEMPT Wed Mar 5 21:47:28 CET 2014 x86_64 GNU/Linux

Offline

#3 2013-09-05 18:33:14

xpander
Member
Registered: 2013-01-23
Posts: 54

Re: Wine with d3d command stream patches

Thaodan wrote:

the | exit in PKGBUILD is unneeded

yeah, but i used a lot of find and replace bundled with sed to do that.
but its working the way it is also, im lazy to get sed'ing again:D

edit:
btw, added benchmarks

Last edited by xpander (2013-09-05 18:33:32)

Offline

#4 2013-09-05 22:56:23

spider623
Member
Registered: 2013-09-05
Posts: 6

Re: Wine with d3d command stream patches

you are a lifesaver, i wanted to use the patch but ironically i don't know to apply it, thanks

Offline

#5 2013-09-05 23:26:57

karol
Archivist
Registered: 2009-05-06
Posts: 25,423

Re: Wine with d3d command stream patches

spider623 wrote:

you are a lifesaver, i wanted to use the patch but ironically i don't know to apply it, thanks

That's not irony.
Arghhh.



xpander, do you plan on uploading it to the AUR?

Offline

#6 2013-09-06 03:38:56

xpander
Member
Registered: 2013-01-23
Posts: 54

Re: Wine with d3d command stream patches

karol wrote:
spider623 wrote:

you are a lifesaver, i wanted to use the patch but ironically i don't know to apply it, thanks

That's not irony.
Arghhh.



xpander, do you plan on uploading it to the AUR?

can do if someone helps me to generate nice list(md5sum without the file names) of md5sums of all those patch files
copy paste manually would take too much time.

Offline

#7 2013-09-06 07:32:53

msthev
Member
Registered: 2012-04-05
Posts: 177

Re: Wine with d3d command stream patches

$ sha256sum * | sed "s|^\(.*\)  .*$|  '\1'|"

Offline

#8 2013-09-06 08:17:15

progandy
Member
Registered: 2012-05-17
Posts: 2,146

Re: Wine with d3d command stream patches

msthev wrote:
$ sha256sum * | sed "s|^\(.*\)  .*$|  '\1'|"

Why that?
ls all patches, add them to the source array, execute updpkgsums, makepkg -S , upload.

By the way, all patches should be applied in prepare() and don't use $startdir, but $srcdir after you have added them to the source array. And use a loop with ls to applay the patches, it will be shorter.

Last edited by progandy (2013-09-06 08:20:49)

Offline

#9 2013-09-06 09:05:17

nierro
Member
From: Milan, Italy
Registered: 2011-09-02
Posts: 798

Re: Wine with d3d command stream patches

An aur package would be really great!
Trying to get some more fps in cod4 here! We'll see, hope this will improve that!

Offline

#10 2013-09-06 09:12:41

msthev
Member
Registered: 2012-04-05
Posts: 177

Re: Wine with d3d command stream patches

progandy wrote:

Why that?

It is just as easy as your method, so I don't see a problem (since everything is being done by hand; updating the sums from a script would be another story).

progandy wrote:

And use a loop with ls to applay the patches, it will be shorter.

Why *that*?
http://mywiki.wooledge.org/ParsingLs
What you want is globs:

for f in "$srcdir"/*.patch; do
        patch -p1 <"$f"
done


@topic
I tested it with Starcraft II a couple of days ago and unfortunately I didn't notice any differences. I had a replay with a lot of units on the screen at the end of the game, and I just watched this one scene with various Wine configurations. Vanilla gave me ~20 fps on two cores and ~24 with one (using taskset), and it was the same with these patches applied. With the older patch for Nvidia and __GL_THREADED_OPTIMIZATIONS=1 it jumped to 30-35 fps.
Maybe it's because of my CPU; it would be great to see other people reporting their experiences. I'll try to test my config today/tomorrow (more extensively this time).

Offline

#11 2013-09-06 09:34:08

progandy
Member
Registered: 2012-05-17
Posts: 2,146

Re: Wine with d3d command stream patches

msthev wrote:
progandy wrote:

Why that?

It is just as easy as your method, so I don't see a problem (since everything is being done by hand; updating the sums from a script would be another story).

updpkgsums is such a script. It comes with pacman 4.1. Updating by hand works like your sed.

What you want is globs:

I know. When I write code, I use that. Somehow when talking about it I always mention ls.

Edit: I'm sorry, sometimes my posts are a too short and sound a bit harsh even though I don't mean it. Thats all from me on that topic.

Last edited by progandy (2013-09-06 10:00:17)

Offline

#12 2013-09-06 09:55:35

msthev
Member
Registered: 2012-04-05
Posts: 177

Re: Wine with d3d command stream patches

By "from a script" I meant having an automated build process and calling updpkgsums from there. I didn't know about it, plus currently I have no access to Arch, so I wrote what I was sure would work.
No need to go deeper in any of these topics, so I'm moving on (and hopefully observing performance improvements by the command stream patches).

Offline

#13 2013-09-06 12:03:50

Thaodan
Member
From: Dortmund, Nordrein-Westfalen
Registered: 2012-04-28
Posts: 432

Re: Wine with d3d command stream patches

Does it work with:http://bugs.winehq.org/show_bug.cgi?id=11674#c263 ?


Linux odin 3.13.1-pf #1 SMP PREEMPT Wed Mar 5 21:47:28 CET 2014 x86_64 GNU/Linux

Offline

#14 2013-09-06 12:44:46

msthev
Member
Registered: 2012-04-05
Posts: 177

Re: Wine with d3d command stream patches

Yes, that was the patch that gave me 50% fps increase (with __GL_THREADED_OPTIMIZATIONS=1).

Offline

#15 2013-09-06 13:06:56

Awebb
Member
Registered: 2010-05-06
Posts: 4,133

Re: Wine with d3d command stream patches

karol wrote:
spider623 wrote:

you are a lifesaver, i wanted to use the patch but ironically i don't know to apply it, thanks

That's not irony.
Arghhh.

It is, karol. Didn't you know that today, in the middle of 2013, a wish is the same thing as a right? So, ironically, I will now not return to my diamond chamber.

Offline

#16 2013-09-06 14:24:02

xpander
Member
Registered: 2013-01-23
Posts: 54

Re: Wine with d3d command stream patches

ok thanks for help all.
i submited the package now

https://aur.archlinux.org/packages/wine-d3dstream/

Offline

#17 2013-09-06 14:37:31

blackout23
Member
Registered: 2011-11-16
Posts: 780

Re: Wine with d3d command stream patches

I installed the patched Wine but can't find Direct3D/CSMT in the regedit in HK_Current_User. I haven't installed any DirectX version, though. On other threads people said that creating it is enough: https://bbs.archlinux.org/viewtopic.php?id=107112 What kind of registry key do I have to create? Could someone just export that key into a *.reg file?

Offline

#18 2013-09-06 15:35:19

xpander
Member
Registered: 2013-01-23
Posts: 54

Re: Wine with d3d command stream patches

blackout23 wrote:

I installed the patched Wine but can't find Direct3D/CSMT in the regedit in HK_Current_User. I haven't installed any DirectX version, though. On other threads people said that creating it is enough: https://bbs.archlinux.org/viewtopic.php?id=107112 What kind of registry key do I have to create? Could someone just export that key into a *.reg file?

you just create it yourself
go to current user -> software -> wine
then create a new key named Direct3D
add a string with name CSMT into it
and set the value enabled

Offline

#19 2013-09-06 16:12:55

z1lt0id
Member
Registered: 2012-09-20
Posts: 167

Re: Wine with d3d command stream patches

I tested the new patch with some Unreal3 engine games, the performance gains are phenomonal.  Finally Unreal3 games FPS are on parity with Windows.  Tested with Remember Me, Mass Effect 3 and the most recent Mortal Kombat game.

Offline

#20 2013-09-06 16:56:05

dgesh
Member
Registered: 2011-09-29
Posts: 18

Re: Wine with d3d command stream patches

Sorry if this is a stupid question:

When I try to install, it tries to pull multilib-gcc (I'm on 64bit) but this is in conflict with gcc and it asks me whether I'd like to remove gcc, which it can't do as stuff depends on it.

Looking at the PKGBUILD it seems to be requiring both gcc and multilib-gcc. Is this the case or am I mistaken?

Or is it simply ok to let it remove gcc, install multilib-gcc and get this installed?

Sorry for the noobiness, this stuff is a bit beyond my understanding and I'm wary of breaking everything.

Offline

#21 2013-09-06 17:15:21

dgesh
Member
Registered: 2011-09-29
Posts: 18

Re: Wine with d3d command stream patches

Ok, answering my own question, I did:

pacman -S multilib-gcc-libs multilib-gcc

After which installing wine-d3dstream via the AUR proceeded fine.

Offline

#22 2013-09-06 17:50:49

nierro
Member
From: Milan, Italy
Registered: 2011-09-02
Posts: 798

Re: Wine with d3d command stream patches

On my ati hd5650, mesa-git repo (so everything -git) with open source driver, great regressions: call of duty 4 would run within 50-200 fps, and now it is down to 30-120.
Tried with directx9 from ms and from a clean wineprefix. No difference.
Reverting back to unpatched wine.

Offline

#23 2013-09-06 21:03:45

Primoz
Member
From: Ljubljana-Slovena-EU
Registered: 2009-03-04
Posts: 658

Re: Wine with d3d command stream patches

How long does this take to build? I've been building this for over an hour, and it feels like it's going in circles...

BTW I don't have a slow CPU or whatever.


Arch x86_64 ATI AMD APU KDE frameworks 5
---------------------------------
Whatever I do, I always end up with something horribly mis-configured.

Offline

#24 2013-09-06 21:09:54

xpander
Member
Registered: 2013-01-23
Posts: 54

Re: Wine with d3d command stream patches

took about 6 minutes for me on AMD FX-8320 @ 4,0ghz, with make j8

you are maybe compiling on one core?
with 4 cores it should take approximately 15 min depending ofc how fast your cpu is really.

Offline

#25 2013-09-06 21:16:48

Primoz
Member
From: Ljubljana-Slovena-EU
Registered: 2009-03-04
Posts: 658

Re: Wine with d3d command stream patches

How can I set how many cores could be used for compiling? And it finally compiled, so I guess I was a bit to fast.
But still it took way to long...

Anyway, let's hope it does something (for my hardware) so this time wasn't completely wasted.


Arch x86_64 ATI AMD APU KDE frameworks 5
---------------------------------
Whatever I do, I always end up with something horribly mis-configured.

Offline

Board footer

Powered by FluxBB