WineHQ
Wine Forums

Board index » WineHQ » Wine Help » Linux




 Page 2 of 3 [ 61 posts ] Go to page Previous  1, 2, 3  Next



 
Author Message
 Post Posted: Wed May 29, 2019 12:52 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Hello. I can't understand how to make a regression test in "progressions" mode.

I can't bisect with good commit more recent than bad commit, then i set 4.8 as good and 4.9 as bad, then I tell git 'bad' when audio work.

But result isn't correct, reverting last bad commit audio still work.

I've need do "git bisect skip" during regressions because I've encountered compilation error, can be the cause?

Also I've found a tricks to speedup compilation in quad core: "make -j3" or "make -j4"; that's fine for regression test or may cause problem?


Top 
 Post Posted: Wed May 29, 2019 1:35 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Hello. I can't understand how to make a regression test in "progressions" mode.


Ahhh... Young Padawan! 8)
See (something like): https://stackoverflow.com/questions/15407075/how-could-i-use-git-bisect-to-find-the-first-good-commit
There are many online guides - on how to do a git bisection for fixes vs regressions.

macchinetta wrote:
I've need do "git bisect skip" during regressions because I've encountered compilation error, can be the cause?


That's a bit light on information there...
But if you are regression testing Wine (without the Staging patchset) - then it is specifically architected so that it will compile and run at every single commit.

macchinetta wrote:
Also I've found a tricks to speedup compilation in quad core: "make -j3" or "make -j4"; that's fine for regression test or may cause problem?


Hardly a trick. Multi-threaded compilation has been around for many, many years.
It's pretty essential these days, with modern, multi-core processors...

Very occasionally Gentoo packages have a -j1 override, to "fix" faulty source code (typically)...

Bob


Top 
 Post Posted: Wed May 29, 2019 2:58 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Thank you. I restricted my search to wine wiki and not found it.

Retried with new and old, same compilation error:

Code:
gcc -m32 -c -o xaudio_dll.o ../xaudio2_7/xaudio_dll.c -I. -I../xaudio2_7 -I../../include -D__WINESRC__ \
  -DXAUDIO2_VER=2 -D_REENTRANT -fno-PIC -Wall -pipe -fno-strict-aliasing \
  -Wdeclaration-after-statement -Wempty-body -Wignored-qualifiers -Wno-packed-not-aligned \
  -Wshift-overflow=2 -Wstrict-prototypes -Wtype-limits -Wunused-but-set-parameter -Wvla \
  -Wwrite-strings -Wpointer-arith -Wlogical-op -gdwarf-2 -gstrict-dwarf -fno-omit-frame-pointer \
  -g -O2
../../tools/widl/widl -o xaudio_classes_r.res -m32 -I. -I../xaudio2_7 -I../../include -D__WINESRC__ -DXAUDIO2_VER=2 \
  ../xaudio2_7/xaudio_classes.idl
../xaudio2_7/xaudio_dll.c:48:56: error: expected ‘)’ before string constant
 __ASM_GLOBAL_FUNC( call_on_voice_processing_pass_start,
                                                        ^
                                                        )
                    "pushl %ebp\n\t"
                    ~~~~~~~~~~~~~~~~                     
../xaudio2_7/xaudio_dll.c: In function ‘DllMain’:
../xaudio2_7/xaudio_dll.c:90:9: error: ‘instance’ undeclared (first use in this function); did you mean ‘isspace’?
         instance = hinstDLL;
         ^~~~~~~~
         isspace
../xaudio2_7/xaudio_dll.c:90:9: note: each undeclared identifier is reported only once for each function it appears in
../xaudio2_7/xaudio_dll.c: In function ‘DllRegisterServer’:
../xaudio2_7/xaudio_dll.c:105:38: error: ‘instance’ undeclared (first use in this function); did you mean ‘isspace’?
     return __wine_register_resources(instance);
                                      ^~~~~~~~
                                      isspace
../xaudio2_7/xaudio_dll.c: In function ‘DllUnregisterServer’:
../xaudio2_7/xaudio_dll.c:111:40: error: ‘instance’ undeclared (first use in this function); did you mean ‘isspace’?
     return __wine_unregister_resources(instance);
                                        ^~~~~~~~
                                        isspace
../xaudio2_7/xaudio_dll.c: In function ‘DllRegisterServer’:
../xaudio2_7/xaudio_dll.c:106:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
../xaudio2_7/xaudio_dll.c: In function ‘DllUnregisterServer’:
../xaudio2_7/xaudio_dll.c:112:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
make[1]: *** [Makefile:266: xaudio_dll.o] Error 1
make[1]: uscita dalla directory "/media/part-b/temp/wine-comp/wine/dlls/xaudio2_2"
make: *** [Makefile:8484: dlls/xaudio2_2] Error 2


Last time after this I do "git bisect skip" as reported in wine wiki page.

And yes, I do regression test on plain wine without staging patchset.


Quote:
Hardly a trick. Multi-threaded compilation has been around for many, many years.
It's pretty essential these days, with modern, multi-core processors...


I'm not surprised by this, but for me make has always used just one core by default.
I'm looking on the web for force make to use multicore just because I see that in system monitor.


Top 
 Post Posted: Wed May 29, 2019 3:14 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Thank you. I restricted my search to wine wiki and not found it.

Retried with new and old, same compilation error:

Code:
...


Last time after this I do "git bisect skip" as reported in wine wiki page.


I'd need a full log - basically: make clean -> configure -> compilation steps, all the commands you've used and the Wine git commit you're compiling against...
An incomplete log / log snippet is rarely very useful...

macchinetta wrote:
I'm not surprised by this, but for me make has always used just one core by default.
I'm looking on the web for force make to use multicore just because I see that in system monitor.


Any Linux terminal command I use... The first thing I do is fire up the man page for it and peruse this.
The Internet should be a secondary resource, to use after you've read the man page / FAQ, etc. for a utility.

Bob


Top 
 Post Posted: Wed May 29, 2019 3:33 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Here the log:

Attachment:
makelog.tar.gz [137.46 KiB]
Downloaded 19 times



I don't understand what you means for:

Wine git commit you're compiling against

I follow step in wine wiki regressions page.
Then:
git bisect start
git bisect new wine-4.9
git bisect old wine-4.8
make -j4
...
git bisect new
make -j4
...
git bisect new
make -j4
...
error
make clean
make -j4
error


ps: search a single thing on internet is more easy than read all a (heavy) manual. 8) :mrgreen:


Top 
 Post Posted: Wed May 29, 2019 4:06 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Here is the log:

Attachment:
makelog.tar.gz


You aren't running the configure script...
So I'm not surprised things are breaking.
You'd want to configure some sane defaults (at each commit).

Also you'd want to do:
Code:
git clean -fxd

before stating whether a git commit is good or bad, using:
Code:
git bisect ...

(to state whether a commit is OK or not).
Just to ensure there is no "cruft" lying around...

macchinetta wrote:
I don't understand what you mean by:

Wine git commit you're compiling against


Literally the SHA-1 commit hash that git bisect spits out, before each bisection step:

E.g. see: How to use git bisect by example. Specifically the section: Finding the bad commit with bisect.

You type:
Code:
git bisect bad <SHA1 hash>
git bisect good <SHA1 hash>


Git then performs a binary search on the commits between these 2 limits.
At each step the commit, being processed is displayed:
Code:
Bisecting: 117 revisions left to test after this (roughly 7 steps)
[4e1224de1687a86dc83936e880104b6b1a48bbe2] Ember Bower Auto build for https://github.com/emberjs/ember.js/commits/d2b56a290a45b23a792575dfa6e3af37cf58bc79.

In this case: 4e1224de1687a86dc83936e880104b6b1a48bbe2 is the first git commit to test.
This commit will be exactly half-way between the base good and bad commits, which the end-user has specified...
Hence why it's called a git bisection (at each step you half the problem space).

macchinetta wrote:
ps: search a single thing on internet is more easy than read all a (heavy) manual. 8) :mrgreen:


Actually the make man page is very short and very readable IMHO.
There is nothing "heavy" about it... Even if english is not your first language.
Don't forget there's a lot s*** out on the Internet, which is either out-of-date or inaccurate...

Bob


Top 
 Post Posted: Thu May 30, 2019 4:22 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Command 'make' autorun ./configure every time:

running CONFIG_SHELL=/bin/sh /bin/sh ./configure --disable-tests --no-create --no-recursion
checking ...
checking ...
checking ...


And It's remember parameters I do last time I run it manually, such --disable-tests.

I not use commits for set the two limits, but wine versions, as described in wiki page and in my last post, because I just know working status between two version.

Quote:
Bisecting: 117 revisions left to test after this (roughly 7 steps)


That's is reported in Italian in log I've post.
Git detect my system language.
Sorry for mistake.

I've understood how bisection work.

Anyway, regressions do not work because first new commit is not in 4.8, as I've been thought, then regression returning me next commit after version tag.

Compilation error is totally innocent and "git bisection skip" is fine.

First working commit is in 4.3, probably I've make a bit of confusion between wine versions or I've made something that have resolved issue, but just for version more newer than 4.2.

First working commit is:
Code:
commit 3e390b1aafff47df63376a8ca4293c515d74f4ba
Author: Ethan Lee <elee@codeweavers.com>
Date:   Wed Feb 20 11:05:25 2019 -0500

    xaudio2: Rewrite to use FAudio.
   
    Signed-off-by: Ethan Lee <elee@codeweavers.com>
    Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
    Signed-off-by: Alexandre Julliard <julliard@winehq.org>

:100755 100755 6eec5f160c77858307159fb8b5b36c4b6526592d fa50a3cf37970aba8d6f74f1b4cd6baa1b7556d6 M      configure
:100644 100644 8d3475a5fe5a03c538d58a7e82c57c9fcddc6dc7 c6618374e4c232a035da900065573a8d175f5e86 M      configure.ac
:040000 040000 1b524ab6deee5fe2dffa17e42d63219d92d37697 4564448c2cb9154ff2c245e85fdb4c1d947293e8 M      dlls
:040000 040000 18656e07251c40cd3dbdddc32e356725e088f084 0ecff5a8228779e5276fa05721f4698fbbfa1c9f M      include



ps: d9vk prototype issue (already open from another user)

Updated to 0.12, nothing change.

Also, I've make another try with vk9, created symlink directly in prototype folder instead of system32 and tell wine to use built-in for steam and native for prototype, so prototype try start but crash in libnvidia-glcore.so.xxx.xx, not a wine file, but gpu driver file... :?:
So I try same tricks with LCGoL and do not recognized my gpu (dropdown menu for select gpu is empty). :?:


Top 
 Post Posted: Thu May 30, 2019 4:45 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Command 'make' autorun ./configure every time:

running CONFIG_SHELL=/bin/sh /bin/sh ./configure --disable-tests --no-create --no-recursion
checking ...
checking ...
checking ...


And It's remember parameters I do last time I run it manually, such --disable-tests.


I'm really struggling with the language barrier here... :shock:
It might be easier to pass your posts, written in Italian, through Google Translate.

If you're going to post terminal logs - they need to be complete.
I can't be second guessing what "miracle steps" you've carried out; in between the stuff you actually giving me a log for.

macchinetta wrote:
I not use commits for set the two limits, but wine versions, as described in wiki page and in my last post, because I just know working status between two version.


That's irrelevant - since git bisect deals with commits.
The 2 version tags will be converted to git commit (SHA1) hashes, before the git bisect operation starts.

macchinetta wrote:
I've understood how bisection work.

Anyway, regressions do not work because first new commit is not in 4.8, as I've been thought, then regression returning me next commit after version tag.

Compilation error is totally innocent and "git bisection skip" is fine.

First working commit is in 4.3, probably I've make a bit of confusion between wine versions or I've made something that have resolved issue, but just for version more newer than 4.2.


Again I don't understand what you mean here.

The old style git bisect operation will test for a regressions.
You can change the meaning / name of the "good" and "bad" tags, to reverse the function of the git bisect command, for newer versions of git.
So it becomes a "find the first good commit" operation.

As per the link I already posted for you...
I think that's what you need to use in your case.

Bob


Top 
 Post Posted: Thu May 30, 2019 5:15 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Sorry, I will help me with google translate.

First thing I meant that make automatically executes ./configure, so I thought it wasn't necessary to run it manually.
I posted a part of the log that I had already posted before (makelog.tar.gz), when you read it, you said that I didn't execute ./configure, that's the part with the output of ./configure (replacing parts after checking with "...").

Clear?

But at this point important things is that I found the first working commit, as your words:
Quote:
I was suggesting for you to run a git bisection to find the first working commit.


I've posted It in last post.

The problem was that I was looking for the first good/working commit in wine 4.8, instead it was in wine 4.3, this is why the bisection didn't work for me. Ok?

Test result was correct in spite of compilation error, that was completely innocent.
Version tag commit: https://source.winehq.org/git/wine.git/ ... 93fdd36405
The first test returned the commit immediately following this one.


Top 
 Post Posted: Thu May 30, 2019 6:01 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Sorry, I will help me with google translate.


You don't have to apologise...
My Italian is pretty limited to: "bella, bella" (famous film reference there!)
I was just trying to be practical (some modern technologies are genuinely useful)... :lol:

macchinetta wrote:
...
The problem was that I was looking for the first good/working commit in wine 4.8, instead it was in wine 4.3, this is why the bisection didn't work for me. Ok?


Right then... 8)
To summarise:

  1. The introduction of builtin winelib faudio, back in Wine 4.3, was actually the point when sound worked OK for you...
    I presume your use of the winetricks xact override, was masking this change - by breaking the builtin faudio support?

    As in:
    Code:
    git log | egrep '(Release [4][.]|FAudio)' | xcopy

    fc8174a36483d9ddbcc1a82c1c7d1334b2efc702 Release 4.9.
    d341efeff071532801fdc224062eb9e60dc5aea0 xaudio2: Use new features from FAudio 19.06 (but keep compatibility for <=19.05).
    aaf9c833ee1b9dca8cffcb2a60c96093fdd36405 Release 4.8.
    6e3f39a4c59fd529c7b532dcde1bb8c37c467b35 Release 4.7.
    fabde842ede40fc53cf6f5743d5b477841f7b11c Release 4.6.
    c6ff0e01224e86c7baa31d019fcb0a7bf03e2f96 Release 4.5.
    05994cd6179626438ef26c13ee45323a6a1f66eb Release 4.4.
    9422b844b59282db04af533451f50661de56b9ca Release 4.3.
    3e390b1aafff47df63376a8ca4293c515d74f4ba xaudio2: Rewrite to use FAudio. # <<< Prototype 1 sound works OK from here
    06531b1d9898ba3ac3b7c69d6192682202606f8f Release 4.2.
    152cda38df79cf04aae589f1d721de3cac1cd49e Release 4.1.
    6b42eae19f3bd9a4f4412fcb21c2f46a4c95bbfd Release 4.0.
    b353d7c9148414be7c928e3925f4075b1578c0a8 Release 4.0-rc7.
    5b72f909bb80c690e21bb33cadd3913903c38019 Release 4.0-rc6.
    54e4d51fdbda08333012040c0683394853a097e9 Release 4.0-rc5.
    1a727e3a1e42714359f6f498053e47533108d554 Release 4.0-rc4.
    2d16e6e59c910ba0a5e7c1c104b290731a8f1ffa Release 4.0-rc3.
    4397d9497608a3df45a5c519a37f5dcde5cc2301 Release 4.0-rc2.
    ae5e029d2227b3a8024f597591f76fe0f37d52e3 Release 4.0-rc1.


  2. Don't forget, that this bug you filed: Bug 47267 - Prototype have hurt performance with csmt enabled and required StrictDrawOrdering setting that has been removed; is currently useless.
    It would need multiple Wine terminal logs (ideally old Wine with StrictDrawOrdering enabled, wine-staging 4.9 with and without CSMT enabled), for any Wine Developer to take it seriously.

    As it stands, your bug report will probably get ignored for a few days/weeks/months... Till a Wine Developer asks for some terminal logs.

  3. Have you tested Prototype 1, with wine-pba yet?
    Like I said wine-pba is supported by TK-Glitch's wine-tgk-git PKGBUILD (for Wine versions ≤3.18).

    For reference, when testing wine-pba, I saw very noticeable performance improvement with Fallout 4.
    Like most folks I moved on to using a Vulkan renderer, with dxvk...
    In addition wine-pba broke compatibility with wined3d (and the original author stopped working on it altogether).

    But since the Vulkan d3d9 renderers are very immature, you might want to test wine-pba, which tended to be more stable.
    You are obviously limited to wine-staging 3.18. Changes to stock wined3d, in Wine 3.19, broke compatibility completely.
    But it would be useful to compare stock wine-staging 3.18 vs. wine-staging 3.18 + wine-pba.

    I have chatted to some of Wine's current D3D Developers about Andrew Comminos's persistent buffer allocator work.
    They are interested in integrating the work of wine-pba into Wine...

    If Prototype 1 benefits, in performance, from using wine-pba - then this adds to a growing list of games that would benefit, from wined3d implementing a persistent buffer.
    Hopefully this would give an additional prod to the Wine D3D Developers!

Just trying to summarise the findings of the thread...
So other people can benefit from it - in the future. 8)

Bob


Top 
 Post Posted: Fri May 31, 2019 7:38 am 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
1 - Yes and yes. I had already used winetricks xact for other steam games, and probably only setting xaudio2_3 as built-in was not enough, but I must have done something else that unmasked the change during the attempts, but I don't know what.

2 - the reason why I opened the bug was only to point out that I think it would have been useful to reintroduce strictdrawordering as an option, so that users can choose between csmt and it.
How should I set winedebug environment variable for logs to attach to the bug? Remember that the log sizes with d3dx for me were greater than 3g of space, 100mb if compressed with xz.

3 - I have not tried wine-pba just because you said that it is not supported by the new versions, now that you tell me this I try it and let you know.


Top 
 Post Posted: Fri May 31, 2019 10:36 am 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Update. Please don't forget to read the previous post. (the step refer to that).

update step 3 - I tried to compile wine-pba but it doesn't compile, attach full terminal output:
Attachment:
wine-pba-not-compile.tar.xz [243.88 KiB]
Downloaded 17 times


Note that I have edited the PKGBUILD in order to take advantage of multithreaded with make (-j3).

update step 2 - I tried to create a log with WINEDEBUG=+wine_d3d,+timestamp,+fps (which is the piece of code that contains csmt and strictdrawordering) but wine does not log anything with :wine_d3d: :?:


Top 
 Post Posted: Fri May 31, 2019 4:55 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Update. Please don't forget to read the previous post. (the step refer to that).

update step 3 - I tried to compile wine-pba but it doesn't compile, attach full terminal output:
Attachment:
wine-pba-not-compile.tar.xz


You'll want to use Etienne Juvigny's wine-tkg-git - see: TK-Glitch's Arch wine PKGBUILD PKGBUILD (which I've already linked to).
The Arch AUR wine-staging-pba package you have chosen to use is broken from the get-go.
The wine-pba patchset applies cleanly to Wine 3.19 - but it won't work properly (I thought I'd already stated this)...

Etienne Juvigny's PKGBUILD actually tests that your wine git commit actually supports the wine-pba patchset.
We had an online chat at the time, because I was working on rebasing the wine-pba patchset (before realising it was a lost cause)...

Also you might want to clear up some more disk space for this process. Since your wine-staging-pba build is failing with:
Code:
Output error : No space left on device


macchinetta wrote:
update step 2 - I tried to create a log with WINEDEBUG=+wine_d3d,+timestamp,+fps (which is the piece of code that contains csmt and strictdrawordering) but wine does not log anything with :wine_d3d: :?:


There isn't a WINEDEBUG channel called: wine_d3d...
There is: d3d d3dx d3d9 d3dxof d3d_perf d3d_shader d3d_bytecode d3d_synchronous d3dcompiler
Not sure what to suggest (d3d ??)

Work backwards - pre-trim the log so it fits in under 10 Mb (or 5 Mb - whatever it is these days) compressed?
Or host it on an external site - with bigger storage (a pain - since Wine bug reports can be open for decades)...

Bob


Top 
 Post Posted: Fri May 31, 2019 5:46 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Quote:
(I thought I'd already stated this)


Sorry, I did not understand correctly.
Tomorrow I'll try again with that pkgbuild, now it's past midnight and I'm going to bed now.

Quote:
Also you might want to clear up some more disk space for this process. Since your wine-staging-pba build is failing with:
Code:
Output error : No space left on device


Damn. This is because I set pikaur (an AUR helper script) to work in / tmp which is ram-mounted in order to preserve my ssd and occasionally tmpfs ends the available ram.

Strange that I looked at the log several times and I could not see that error, usually I see it when happen.

I have to decide to mount the additional RAM, however tomorrow I will compile on hdd.


Quote:
There isn't a WINEDEBUG channel called: wine_d3d...


yes there is: https://web.archive.org/web/20181001061 ... g_Channels
left of winedbg.

I don't know why they removed the list of channels in the new version of the page, but it seems strange that they also removed some channels.

Quote:
Work backwards - pre-trim the log so it fits in under 10 Mb (or 5 Mb - whatever it is these days) compressed?


Do you mean using the "relayexclude" registry key? usually I have no luck with that and how can I know what I can exclude without excluding important things?

I will looking for an host.


Top 
 Post Posted: Fri May 31, 2019 6:10 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:


Well I can't find any reference to it in the source now...
Unless it's a constructed Debug channel (not declared in the standard manner).

macchinetta wrote:
I don't know why they removed the list of channels in the new version of the page, but it seems strange that they also removed some channels.


Wine is always being "tidied" up.
If you look at the commit log for Wine... Around 50-75% commits to Wine are just "house-keeping"...
Just tidying up, or moving something around, a bit.

macchinetta wrote:
Do you mean using the "relayexclude" registry key? usually I have no luck with that and how can I know what I can exclude without excluding important things?

I will looking for an host.


relayexclude is a PITA and it won't do anything anyway - since you won't be using the +relay channel (please don't!!) 8)

No I literally meant eyeball the log, and cut bits off!
Should be even easier, if you've got the +fps channel enabled.

You're not documenting an error, you're demonstrating poor performance - so you don't need to be super- precise...
Any part of the Wine terminal log, where you are playing Prototype 1 (rather than being in a menu, etc.) - will probably be sufficient.

You could also do a separate +wgl log (first 5000 lines or so) - which would show your graphics driver being loaded as well.

As long you document that you've trimmed the log/logs - that should be fine!

Bob


Top 
 Post Posted: Sat Jun 01, 2019 9:42 am 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Hello. Compiled and tested wine-tgk. No improvement in performance with csmt enabled. :(

Updated the bug with a nice bit of log. I hope it will be useful.

I couldn't cuts bit off because the log are so big so any software I use goes in out of memory, even from cml.


Top 
 Post Posted: Sun Jun 02, 2019 5:23 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Hello. Compiled and tested wine-tgk. No improvement in performance with csmt enabled. :(


You really need to be a lot more precise about what you're doing...

For example:
  • Did you even enable wine-pba?
  • If yes... Did you tune the __PBA_GEO_HEAP and __PBA_CB_HEAP env variables?

Bob


Top 
 Post Posted: Sun Jun 02, 2019 5:35 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
What? Where are the instructions to do this?

I had not realized that wine-tgk had pba disabled, I realized that I had to use tgk because unlike pba worked on the latest wine.

Maybe it's better if I try to recompile wine-pba from AUR already based on 3.18, if wine tgk pkgbuild compiles wine 4.8 and then it's not compatible.


Top 
 Post Posted: Sun Jun 02, 2019 5:57 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
What? Where are the instructions to do this?

I had not realized that wine-tgk had pba disabled, I realized that I had to use tgk because unlike pba worked on the latest wine.

Maybe it's better if I try to recompile wine-pba from AUR already based on 3.18, if wine tgk pkgbuild compiles wine 4.8 and then it's not compatible.


Ever get the feeling your stumbling around in the dark... Bumping into walls! :lol:

Take a look at the wine-tkg-git file: customization.cfg

Set:
Code:
_staging_version="v3.18"

These should be the default:
Code:
_use_staging="true"
_use_pba="true"

- so leave these values.
Then rebuild the wine-tkg-git package.

Then to use the wine-pba, set
Code:
PBA_ENABLE=1
__PBA_GEO_HEAP= 0.75 * GPU VRAM (Mb)

My wine-pba patchset sets the latter value automatically... But hey, whatever! :wink:

Bob


Top 
 Post Posted: Mon Jun 03, 2019 1:29 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Thank you. The read me tgk is really bare bones (I don't know if this figure of speech can be translated correctly, like saying the bare minimum and even less), because of this I grope in the dark and bump into the walls. :D

So I tried wine tgk 3.18 with pba enabled: starting the game completely freezes the operating system.

The error seems to be "GL_OUT_OF_MEMORY" (complete log attached below), I tried not to set __PBA_GEO_HEAP to 1500 (my vram amounts to 2gb) so the result is the same.

Attachment:
wine-log-prototype-tgk-pba-enable.tar.gz [4.34 KiB]
Downloaded 21 times


So i tried to start with pba disabled and the performances are worse than with plain wine since from the main menu.

Follow the log:
Attachment:
wine-log-prototype-tgk.tar.gz [7.34 KiB]
Downloaded 12 times


Top 
 Post Posted: Mon Jun 03, 2019 1:43 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Thank you. The read me tgk is really bare bones (I don't know if this figure of speech can be translated correctly, like saying the bare minimum and even less), because of this I grope in the dark and bump into the walls. :D

So I tried wine tgk 3.18 with pba enabled: starting the game completely freezes the operating system.

The error seems to be "GL_OUT_OF_MEMORY" (complete log attached below), I tried not to set __PBA_GEO_HEAP to 1500 (my vram amounts to 2gb) so the result is the same.

Attachment:
wine-log-prototype-tgk-pba-enable.tar.gz



Since the buffer allocation is done early in the Wine start up process...
I'd probably check you have compositing disabled, no web browser running, etc.
I'd also check your GPU VRAM usage before you start Prototype.

wine-pba was certainly working fine for me and I've only got a 3 Gb Geforce GTX 970M.

Bob


Top 
 Post Posted: Mon Jun 03, 2019 1:54 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Quote:
I'd probably check you have compositing disabled, no web browser running, etc.


I had both things... :oops:

How can I check my vram usage?
Do you know any suitable tools?
Long ago I had looking for one but I hadn't found any for Linux.


Top 
 Post Posted: Mon Jun 03, 2019 3:37 pm 
Offline
Level 12
Level 12
User avatar

Joined: Sat Oct 16, 2010 7:40 pm
Posts: 2682
Location: Cambridge
macchinetta wrote:
Quote:
I'd probably check you have compositing disabled, no web browser running, etc.


I had both things... :oops:

How can I check my vram usage?
Do you know any suitable tools?
Long ago I had looking for one but I hadn't found any for Linux.


Wow... you can't of searched too hard then! :lol:

The stock NVIDIA Settings Tool - shows this information - just click on your graphics card name (GPU 0) in the LSH pane of the tool.
This will bring up a RHS pane - with some basic GPU utilisation statistics.

A more informative tool for Nvidia cards is:
Code:
nvidia-smi

Being a command line tool, you can also log that information.

If you want something a bit more fancy... Then checkout Github : wookayin / gpustat .

Bob


Top 
 Post Posted: Wed Jun 05, 2019 7:28 am 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Ops. I must have fallen into the trap of outdated information on the web. :oops:

I also look very often at "nvidia-settings" but I never noticed that the panel was reported the use of the vram... :?:

Anyway, the consumption of vram does not change disabling compositing and closing web browser, it's about 8-9%.

And system still freeze when I start wine with pba_enabled.


Top 
 Post Posted: Wed Jun 05, 2019 1:28 pm 
Offline
Level 3
Level 3

Joined: Sat Jan 31, 2015 3:03 pm
Posts: 93
Location: Italy
Update, I found this:
https://forums.lutris.net/t/game-freeze ... pened/3932

So I tried to set pba to the maximum amount of vram (2048) and for the first two attempts the system did not freeze but the game did.
(I managed to kill wine through the tty).

So I tried to generate a log with +d3d and this time the system froze again.

I uploaded the log to mediafire because it was too heavy to load here.


Top 
Display posts from previous:  Sort by  
 
 Page 2 of 3 [ 61 posts ] Go to page Previous  1, 2, 3  Next




Board index » WineHQ » Wine Help » Linux


Who is online

Users browsing this forum: Bing [Bot] and 14 guests

 
 

 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: