ValveSoftware / ValveSoftware/Proton
Long Wine init times since update to Proton 5.0
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 32.8k
- Forks
- 1.6k
- PR merge metrics
- PR metrics pending
Description
Hi. I've noticed that Proton 5.0 take very long time to initialize. I wrote a small wrapper script to run different versions of Proton's Wine:
#!/bin/bash
_VERS="$1"
_GAME="$1test"
_STEAMDIR="/home/magist3r/.local/share/Steam/"
PATH="$_STEAMDIR/steamapps/common/Proton $_VERS/dist/bin/:$_STEAMDIR/ubuntu12_32/steam-runtime/amd64/bin:$_STEAMDIR/ubuntu12_32/steam-runtime/amd64/usr/bin:/home/magist3r/.cargo/bin:/home/magist3r/bin:/usr/local/bin:/usr/bin:/bin:/usr/lib/mit/sbin" \
TERM="xterm" \
WINEDEBUG="-all" \
WINEDLLPATH="$_STEAMDIR/steamapps/common/Proton $_VERS/dist/lib64/wine:$_STEAMDIR/steamapps/common/Proton $_VERS/dist/lib/wine" \
LD_LIBRARY_PATH="$_STEAMDIR/steamapps/common/Proton $_VERS/dist/lib64:$_STEAMDIR/steamapps/common/Proton $_VERS/dist/lib:$_STEAMDIR/ubuntu12_32/steam-runtime/pinned_libs_32:$_STEAMDIR/ubuntu12_32/steam-runtime/pinned_libs_64:/usr/local/lib64:/usr/local/lib:/usr/lib64/graphviz:/lib:/lib64:/usr/lib:/usr/lib64:/usr/lib/tls:/usr/lib64/tls:$_STEAMDIR/ubuntu12_32/steam-runtime/i386/lib/i386-linux-gnu:$_STEAMDIR/ubuntu12_32/steam-runtime/i386/lib:$_STEAMDIR/ubuntu12_32/steam-runtime/i386/usr/lib/i386-linux-gnu:$_STEAMDIR/ubuntu12_32/steam-runtime/i386/usr/lib:$_STEAMDIR/ubuntu12_32/steam-runtime/amd64/lib/x86_64-linux-gnu:$_STEAMDIR/ubuntu12_32/steam-runtime/amd64/lib:$_STEAMDIR/ubuntu12_32/steam-runtime/amd64/usr/lib/x86_64-linux-gnu:$_STEAMDIR/ubuntu12_32/steam-runtime/amd64/usr/lib:" \
WINEPREFIX="$_STEAMDIR/steamapps/compatdata/$_GAME/" \
WINEESYNC="1" \
SteamGameId="$_GAME" \
SteamAppId="$_GAME" \
WINEDLLOVERRIDES="steam.exe=b;d3d11=n;d3d10=n;d3d10core=n;d3d10_1=n;dxgi=n" \
STEAM_COMPAT_CLIENT_INSTALL_PATH="$_STEAMDIR" \
WINE="$_STEAMDIR/steamapps/common/Proton $_VERS/dist/bin/wine" "$_STEAMDIR/steamapps/common/Proton $_VERS/dist/bin/wine" "$2"
And then issued two commands. For Proton 4.11:
time ./proton-wrapper.sh 4.11 wineboot
wine: created the configuration directory '/home/magist3r/.local/share/Steam//steamapps/compatdata/4.11test'
esync: up and running.
wine: configuration in '/home/magist3r/.local/share/Steam//steamapps/compatdata/4.11test' has been updated.
real 0m4,060s
user 0m0,011s
sys 0m0,009s
And for Proton 5.0:
time ./proton-wrapper.sh 5.0 wineboot
wine: created the configuration directory '/home/magist3r/.local/share/Steam//steamapps/compatdata/5.0test'
esync: up and running.
wine: configuration in L"/home/magist3r/.local/share/Steam//steamapps/compatdata/5.0test" has been updated.
real 0m27,873s
user 0m0,012s
sys 0m0,011s
As you can see, there is a huge difference. As a result I have to wait for minutes to launch a game with Proton 5.0.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the provided ./proton-wrapper.sh entry point and reproduce the wineboot timings for Proton 4.11 and 5.0. Compare the initialization behavior and review the 11-comment discussion for any established direction. Done means identifying the Proton 5.0 startup regression and verifying a measurable improvement in initialization time.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- bash
- Domain
- operating-systems, performance
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100