Code Monkey home page Code Monkey logo

dxvk-async's People

Contributors

elendil211 avatar orowith2os avatar sporif avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dxvk-async's Issues

turning DXVK_ASYNC on disables keyboard input in overwatch

Linux 5.19-TKG-BMQ,Tested with Wine-GE-Proton 22 and 23,
the latest DXVK 1.10.2 with the async patch. I am running the game through gamescope/.

I am able to move my mouse and interact with the game as far as menus, but the game accepts NO keyboard input. Regardless of whether the option is on or off, yes the battle.net client itself lets me type.

Game hang/not responding after 5 or 10 minutes

Hello Sporif

I have an issue where the game i played freezing after logging in into the game after around 5 or 10 minutes. The dxvk-async worked fine until yesterday. So after i checked the exefile64_d3d9.log, the line ended with this error;

err: DxvkSubmissionQueue: Command submission failed: VK_ERROR_OUT_OF_DEVICE_MEMORY

I'm using latest Windows 10, and latest AMD driver. Running an RX 560 2GB.

Any kind of help is greatly appreciated. Thank you.

Patch fails to apply since commit 67e2ee1b2635f6867d3c92a14192bffb1c026d33

I'm applying the patch to the current dxvk master with these commands:

git clone https://github.com/doitsujin/dxvk
git clone https://github.com/Sporif/dxvk-async
cd dxvk
patch -Np1 < ../dxvk-async/dxvk-async.patch
sh package-release.sh master ../build --no-package

Some of the changes fail to apply during, here's the log:

Hunk #1 succeeded at 129 (offset 26 lines).
patching file src/dxvk/dxvk_context.cpp
Hunk #1 succeeded at 4117 (offset 280 lines).
Hunk #2 succeeded at 4358 (offset 265 lines).
Hunk #3 succeeded at 4380 (offset 266 lines).
Hunk #4 succeeded at 4788 (offset 440 lines).
Hunk #5 succeeded at 5202 with fuzz 1 (offset 425 lines).
patching file src/dxvk/dxvk_context.h
Hunk #1 succeeded at 1227 with fuzz 2 (offset 68 lines).
Hunk #2 succeeded at 1307 with fuzz 2 (offset 96 lines).
patching file src/dxvk/dxvk_graphics.cpp
Hunk #1 FAILED at 62.
Hunk #2 FAILED at 83.
Hunk #3 succeeded at 107 with fuzz 2 (offset 4 lines).
Hunk #4 succeeded at 116 (offset 4 lines).
2 out of 4 hunks FAILED -- saving rejects to file src/dxvk/dxvk_graphics.cpp.rej
patching file src/dxvk/dxvk_graphics.h
Hunk #1 succeeded at 187 (offset 2 lines).
Hunk #2 succeeded at 202 (offset 2 lines).
Hunk #3 FAILED at 228.
Hunk #4 succeeded at 258 (offset 3 lines).
1 out of 4 hunks FAILED -- saving rejects to file src/dxvk/dxvk_graphics.h.rej
patching file src/dxvk/dxvk_image.h
Hunk #1 succeeded at 539 with fuzz 1 (offset 74 lines).
Hunk #2 succeeded at 582 with fuzz 2 (offset 78 lines).
patching file src/dxvk/dxvk_options.cpp
Hunk #1 succeeded at 8 with fuzz 2 (offset -2 lines).
patching file src/dxvk/dxvk_options.h
Hunk #1 succeeded at 15 with fuzz 1 (offset -6 lines).
patching file src/dxvk/dxvk_pipecompiler.cpp
patching file src/dxvk/dxvk_pipecompiler.h
patching file src/dxvk/dxvk_pipemanager.cpp
patching file src/dxvk/dxvk_pipemanager.h
Hunk #2 succeeded at 101 (offset 5 lines).
patching file src/dxvk/meson.build
Hunk #1 succeeded at 90 with fuzz 1 (offset 7 lines).

DXVK fails to build afterwards.

Trials of mana crashes when calling flammie (changing to the flying open world)

Hi, everytime I call flammie the game crashes in the loading screen. This are the last lines from the log:

err: Exception on CS thread!
err: DxvkCommandList: Failed to end command buffer

I'm using these settings in the dxvk.conf:
dxvk.enableAsync = true
dxvk.numAsyncThreads = 6
dxvk.enableGraphicsPipelineLibrary = true
dxvk.numCompilerThreads = 6

Also, I'm using dxvk-async 2.0 if I use 1.10.3 it plays fine, so the error is with the latest version only.

my specs

Win 10 21H2
Ryzen 7 5800x 3D
RX 6800

[not an issue] I git-ified your patch w/ history

Just thought I'd let you know. Here's your patch with the exact same commit history, but the commits from your repository are reapplied on top of upstream v1.6.1: https://github.com/imaami/dxvk/tree/dxvk-async

If you look at the git log there you'll see that I left out commits which don't change the patch file in your repo. I also added references to original commit hashes, and a signed-off-by for no particular reason.

Sorry for creating this ticket, I couldn't find a quick way to private message on github. :)

Instruction

It would be nice to add instructions for using the patch.

How to patch dxvk with dxvk-async.patch?

Hi.

I'm trying to do dxvk-async manually. Mostly I just follow the instruction to use proton-ge-custom-bin and add DXVK_ASYNC=1 on steam but now, I try to implement this on wine gaming.

Hows to do the process of patching? Is this just copy/pasting?

A failure occurred during patch application. Probably needs a rebase.

DXVK version: the latest git at this moment: doitsujin/dxvk@4d0d455

Hunk #2 FAILED at 908.
1 out of 2 hunks FAILED -- saving rejects to file src/dxvk/dxvk_graphics.cpp.rej
patching file src/dxvk/dxvk_graphics.h
patching file src/dxvk/dxvk_image.h
Hunk #1 succeeded at 548 (offset 1 line).
Hunk #2 succeeded at 587 (offset 1 line).
patching file src/dxvk/dxvk_options.cpp
patching file src/dxvk/dxvk_options.h
==> ERROR: A failure occurred in prepare().
Aborting...

DXVK-Async interaction with anti cheats

There's been some stuff about using dxvk-async on multiplayer games and getting banned for it, some people say that this has been fixed. Is this true? Is it still a risk?
Would the answer to this be able to be included in the README to address this question in the future?

GTA 4 flickering dots using DXVK 1.9 on AMD RDNA2

Issues using latest DXVK 1.9 with AMD 6800XT and GTA 4. Producing flickering coloured crosshairs on screen when smoke or bloom effects are used/switched. Flicker happens for a split second so capturing this was tricky.

Drivers used are 20.6.1, 20.6.2, 20.7.1, and UWP drivers. All exhibit the same issue, the issue is not present when using DX. GPU is not overclocked either and no overheating has been monitored. No other game tested or played with either DXVK or standard .API's displays this issue.

Posting this in hopes it can be fixed, as I doubt AMD will provide fixes for a DXVK issue.

Screenshots of issue.
GTA 1
GTA 2

Unbuildable since upstream commit af418dcffde184890af95077c051c0ca4cc8d026

Can be reproduced with master branch, introduced in: doitsujin/dxvk@af418dc

Steps to reproduce:

git clone https://github.com/doitsujin/dxvk && cd dxvk
git checkout af418dcffde184890af95077c051c0ca4cc8d026
git clone https://github.com/Sporif/dxvk-async
patch --forward --strip=1 --input="dxvk-async/dxvk-async.patch"
./package-release.sh release build/ --no-package

Build log:

$ patch --forward --strip=1 --input="dxvk-async/dxvk-async.patch"
patching file meson.build
patching file src/dxvk/dxvk_context.cpp
Hunk #1 FAILED at 4138.
Hunk #2 succeeded at 4460 (offset 81 lines).
Hunk #3 succeeded at 4482 (offset 81 lines).
Hunk #4 succeeded at 4883 (offset 74 lines).
Hunk #5 succeeded at 5314 (offset 91 lines).
1 out of 5 hunks FAILED -- saving rejects to file src/dxvk/dxvk_context.cpp.rej
patching file src/dxvk/dxvk_context.h
Hunk #1 succeeded at 1239 (offset 12 lines).
Hunk #2 succeeded at 1319 (offset 12 lines).
patching file src/dxvk/dxvk_graphics.cpp
Hunk #1 succeeded at 50 (offset -12 lines).
Hunk #2 succeeded at 60 (offset -12 lines).
Hunk #3 succeeded at 103 (offset -12 lines).
Hunk #4 succeeded at 112 (offset -12 lines).
patching file src/dxvk/dxvk_graphics.h
Hunk #1 succeeded at 200 (offset 1 line).
Hunk #2 succeeded at 215 (offset 1 line).
Hunk #3 succeeded at 242 (offset -1 lines).
Hunk #4 succeeded at 272 (offset -1 lines).
patching file src/dxvk/dxvk_image.h
patching file src/dxvk/dxvk_options.cpp
patching file src/dxvk/dxvk_options.h
patching file src/dxvk/dxvk_pipecompiler.cpp
patching file src/dxvk/dxvk_pipecompiler.h
patching file src/dxvk/dxvk_pipemanager.cpp
patching file src/dxvk/dxvk_pipemanager.h
Hunk #2 succeeded at 101 with fuzz 1.
patching file src/dxvk/meson.build


$ ./package-release.sh release build/ --no-package
The Meson build system
Version: 0.62.2
Source dir: /home/gigas/downloads/dxvk
Build dir: /home/gigas/downloads/dxvk/build/dxvk-release/build.64
Build type: cross build
Project name: dxvk
Project version: v1.10.1
C compiler for the host machine: x86_64-w64-mingw32-gcc (gcc 12.1.0 "x86_64-w64-mingw32-gcc (GCC) 12.1.0")
C linker for the host machine: x86_64-w64-mingw32-gcc ld.bfd 2.38
C++ compiler for the host machine: x86_64-w64-mingw32-g++ (gcc 12.1.0 "x86_64-w64-mingw32-g++ (GCC) 12.1.0")
C++ linker for the host machine: x86_64-w64-mingw32-g++ ld.bfd 2.38
C compiler for the build machine: cc (gcc 12.1.0 "cc (GCC) 12.1.0")
C linker for the build machine: cc ld.bfd 2.38
C++ compiler for the build machine: c++ (gcc 12.1.0 "c++ (GCC) 12.1.0")
C++ linker for the build machine: c++ ld.bfd 2.38
Build machine cpu family: x86_64
Build machine cpu: x86_64
Host machine cpu family: x86_64
Host machine cpu: x86_64
Target machine cpu family: x86_64
Target machine cpu: x86_64
Compiler for C++ supports arguments -DNOMINMAX: YES 
Compiler for C++ supports arguments -D_WIN32_WINNT=0xa00: YES 
Compiler for C++ supports arguments -msse: YES 
Compiler for C++ supports arguments -msse2: YES 
Compiler for C++ supports arguments -msse3: YES 
Compiler for C++ supports arguments -mfpmath=sse: YES 
Compiler for C++ supports arguments -Wimplicit-fallthrough: YES 
Compiler for C++ supports arguments -Wno-unused-private-field: NO 
Compiler for C++ supports arguments -Wno-microsoft-exception-spec: NO 
Compiler for C supports arguments -DNOMINMAX: YES 
Compiler for C supports arguments -D_WIN32_WINNT=0xa00: YES 
Compiler for C supports arguments -msse: YES 
Compiler for C supports arguments -msse2: YES 
Compiler for C supports arguments -msse3: YES 
Compiler for C supports arguments -mfpmath=sse: YES 
Compiler for C supports arguments -Wimplicit-fallthrough: YES 
Compiler for C supports arguments -Wno-unused-private-field: NO 
Compiler for C supports arguments -Wno-microsoft-exception-spec: NO 
Compiler for C++ supports link arguments -static: YES 
Compiler for C++ supports link arguments -static-libgcc: YES 
Compiler for C++ supports link arguments -static-libstdc++: YES 
Compiler for C++ supports link arguments -Wl,--file-alignment=4096: YES 
Compiler for C supports link arguments -static: YES 
Compiler for C supports link arguments -static-libgcc: YES 
Compiler for C supports link arguments -static-libstdc++: YES 
Compiler for C supports link arguments -Wl,--file-alignment=4096: YES 
Library vulkan-1 found: YES
Library d3d9 found: YES
Library d3d11 found: YES
Library dxgi found: YES
Library d3dcompiler_43 found: YES
Library d3dcompiler_47 found: YES
Program glslangValidator found: YES (/usr/bin/glslangValidator)
Program x86_64-w64-mingw32-windres found: YES
Run-time dependency threads found: YES
Dependency threads found: YES unknown (cached)
Build targets in project: 13
NOTICE: Future-deprecated features used:
 * 0.56.0: {'meson.source_root'}

dxvk v1.10.1

  User defined options
    Cross files : /home/gigas/downloads/dxvk/build-win64.txt
    bindir      : x64
    buildtype   : release
    libdir      : x64
    prefix      : /home/gigas/downloads/dxvk/build/dxvk-release
    strip       : True
    build_id    : false
    enable_tests: false

Found ninja-1.11.0 at /usr/bin/ninja
[3/277] Compiling C object src/util/libutil.a.p/sha1_sha1.c.obj
In function ‘SHA1Update’,
    inlined from ‘SHA1Pad’ at ../../../src/util/sha1/sha1.c:153:2:
../../../src/util/sha1/sha1.c:131:25: warning: ‘SHA1Transform’ reading 64 bytes from a region of size 1 [-Wstringop-overread]
  131 |                         SHA1Transform(context->state, (uint8_t *)&data[i]);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../src/util/sha1/sha1.c:131:25: note: referencing argument 2 of type ‘const uint8_t[64]’ {aka ‘const unsigned char[64]’}
../../../src/util/sha1/sha1.c: In function ‘SHA1Pad’:
../../../src/util/sha1/sha1.c:51:1: note: in a call to function ‘SHA1Transform’
   51 | SHA1Transform(uint32_t state[5], const uint8_t buffer[SHA1_BLOCK_LENGTH])
      | ^~~~~~~~~~~~~
In function ‘SHA1Update’,
    inlined from ‘SHA1Pad’ at ../../../src/util/sha1/sha1.c:155:3:
../../../src/util/sha1/sha1.c:131:25: warning: ‘SHA1Transform’ reading 64 bytes from a region of size 1 [-Wstringop-overread]
  131 |                         SHA1Transform(context->state, (uint8_t *)&data[i]);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../src/util/sha1/sha1.c:131:25: note: referencing argument 2 of type ‘const uint8_t[64]’ {aka ‘const unsigned char[64]’}
../../../src/util/sha1/sha1.c: In function ‘SHA1Pad’:
../../../src/util/sha1/sha1.c:51:1: note: in a call to function ‘SHA1Transform’
   51 | SHA1Transform(uint32_t state[5], const uint8_t buffer[SHA1_BLOCK_LENGTH])
      | ^~~~~~~~~~~~~
In function ‘SHA1Update’,
    inlined from ‘SHA1Pad’ at ../../../src/util/sha1/sha1.c:156:2:
../../../src/util/sha1/sha1.c:131:25: warning: ‘SHA1Transform’ reading 64 bytes from a region of size 8 [-Wstringop-overread]
  131 |                         SHA1Transform(context->state, (uint8_t *)&data[i]);
      |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../../../src/util/sha1/sha1.c:131:25: note: referencing argument 2 of type ‘const uint8_t[64]’ {aka ‘const unsigned char[64]’}
../../../src/util/sha1/sha1.c: In function ‘SHA1Pad’:
../../../src/util/sha1/sha1.c:51:1: note: in a call to function ‘SHA1Transform’
   51 | SHA1Transform(uint32_t state[5], const uint8_t buffer[SHA1_BLOCK_LENGTH])
      | ^~~~~~~~~~~~~
[81/277] Compiling C++ object src/dxvk/libdxvk.a.p/dxvk_context.cpp.obj
FAILED: src/dxvk/libdxvk.a.p/dxvk_context.cpp.obj 
x86_64-w64-mingw32-g++ -Isrc/dxvk/libdxvk.a.p -Isrc/dxvk -I../../../src/dxvk -I../../../include -I. -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -O3 -DNOMINMAX -D_WIN32_WINNT=0xa00 -msse -msse2 -msse3 -mfpmath=sse -Wimplicit-fallthrough -pthread -MD -MQ src/dxvk/libdxvk.a.p/dxvk_context.cpp.obj -MF src/dxvk/libdxvk.a.p/dxvk_context.cpp.obj.d -o src/dxvk/libdxvk.a.p/dxvk_context.cpp.obj -c ../../../src/dxvk/dxvk_context.cpp
../../../src/dxvk/dxvk_context.cpp: In member function ‘bool dxvk::DxvkContext::updateGraphicsPipelineState()’:
../../../src/dxvk/dxvk_context.cpp:4189:65: error: no matching function for call to ‘dxvk::DxvkGraphicsPipeline::getPipelineHandle(dxvk::DxvkGraphicsPipelineStateInfo&, dxvk::DxvkRenderPass*)’
 4189 |     VkPipeline pipeline = m_state.gp.pipeline->getPipelineHandle(
      |                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
 4190 |       m_state.gp.state, m_state.om.framebufferInfo.renderPass());
      |       ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
In file included from ../../../src/dxvk/dxvk_context_state.h:7,
                 from ../../../src/dxvk/dxvk_context.h:6,
                 from ../../../src/dxvk/dxvk_device.h:7,
                 from ../../../src/dxvk/dxvk_context.cpp:5:
../../../src/dxvk/dxvk_graphics.h:206:16: note: candidate: ‘VkPipeline_T* dxvk::DxvkGraphicsPipeline::getPipelineHandle(const dxvk::DxvkGraphicsPipelineStateInfo&, const dxvk::DxvkRenderPass*, bool)’
  206 |     VkPipeline getPipelineHandle(
      |                ^~~~~~~~~~~~~~~~~
../../../src/dxvk/dxvk_graphics.h:206:16: note:   candidate expects 3 arguments, 2 provided
[94/277] Compiling C++ object src/dxbc/libdxbc.a.p/dxbc_compiler.cpp.obj
ninja: build stopped: subcommand failed.

Patch doesn't work for 1.7.1.

[rejedai@rj-pc dxvk-1.7.1]$ git apply /home/rejedai/Games/dxvk-1.7.1/dxvk-async.patch 
error: patch failed: src/dxvk/dxvk_context.h:1159
error: src/dxvk/dxvk_context.h: patch does not apply

Tested for 1.6.1, works great.

Originally posted by @rejedai in #2 (comment)

Trying to get a build that disable fetch4 when binding an incompatible texture

Hi,
There is a fix for this issue Disable fetch4 when binding an incompatible texture, here at https://github.com/Iglu47/dxvk/actions/runs/2786804851 . I was hoping you could provide a build with async with the included fix. It is literally moving 4 lines of code as you can see here doitsujin/dxvk@a249df8 . I was unsure, how the patching of already built dlls work. From my understanding, you need to patch from the source then build. Thank you for your time.

didnt work at some old game

this DXVK seems to be didnt work at the game Company of heroes.Can it be solved?
this game use a dll named spDx9.dll
and i put dxgi.dll into game folder the rename d3d9.dll to spDx9.dll
and the game cant start.
can u give me some advice?

patch latest dxvk builds

Hi, it seams your dxvk-async patch is no longer valid from commit 8d72b8e jully 30 upwards.

Can you have a look ?

Dxvk-async forces GW2 into fullscreen mode

Even if in the ingame options windowed fullscreen is selected, the game behaves as if it was in fullscreen (less smooth alt+tabbing, f.lux overlay hides the cursor like it does with fullscreen games).

I run it on Win10 via the GW2 Addon Manager.

dx9

Is it possible to implement asynchronous computation for dx9?

No DX12 with 1.9.1

Been testing this with Lutris and I noticed when using this version of dxvk there is no dx12 option in games. The lutris 191L version however works.

Gw2 and Tera online, DXVK ASYNC 1.8 & standard 1.8 not working in Windows 10

Hi Sporif :)

1.7.3 was working great on Windows with Guild Wars 2.

The new version 1.8 does not work, I start the gw2 client and then it black screens then the game just closes. No crash dump is generated though ...

I mentioned it on the DXVK discord channel and Joshie ( creator of d9vk ) said the DXVK Async Patch might need to be rebased for the new DXVK version 1.8 ?

I've tried with different drivers ( AMD - using rx 5700xt )

Using latest Windows 10 build.

I have friends using the 1.8 Async build in Linux and it's working fine there with GW2 so the issue only seems to be in Windows with this version .

Any suggestions ?

Thank you

the async patch partially breaks the dxvk-cache

I've noticed a problem with the dxvk-async patches affecting the dxvk cache.

Many games stutter with shader compilation in the same spots after restarting the game when they should not stutter in those same places the second time due to the shader cache.

While I have noticed this with several games, I will use The Quarry running in DX11 mode as an example. The following occurs when DXVK_ASYNC=1:

  • I load up the game
  • I press continue
  • The scene starts rendering, but things look off because it is compiling many shaders for the first time
  • I return to the main menu, then press continue again
  • This time, the scene renders correctly immediately because the shaders are already compiled
  • I close the game entirely, load up the game again, and press continue again
  • The scene starts rendering, but things look off because it is compiling many shaders
  • I look at the last modified timestamp on the .dxvk-cache file, and it did not get updated at all with the new shaders during the previous play session

The expected result is that it should cache shaders between stopping and restarting the game.

When DXVK_ASYNC=0, it updates the .dxvk-cache file with the new shaders that it compiles synchronously.

What is strange is that, if I delete the .dxvk-cache file entirely and start it back up again with async turned on, it will make a new cache and start writing some of the shaders to disk. But, it stops writing any new shaders shortly after it turns on.

For instance, when I run the first ~30 of the scene from The Quarry that I used to test with no pre-existing .dxvk-cache file, it generates a new cache of size 68kB when async is off and 21kB when async is on. So it writes at least some of the shaders, but not all of them.

My setup used to test:

  • Ryzen 7 5800X
  • RTX 3080 (515.76 driver)
  • Fedora 36
  • GE-Proton7-36
  • command used to launch The Quarry from steam: DXVK_HUD=compiler DXVK_ASYNC=1 WINEFSYNC=1 bash -c 'exec "${@/2KLauncher\/LauncherPatcher.exe/TheQuarry.exe}"' -- %command% -UseAllAvailableCores (The weird bash command it to work around the game launcher. The env variables are the important part.)

How do I install this?

To install this do i just clone it and run sudo patch? Also how long should the patching take?

Need help with dxvk-async build for dxvk 1.7.2

Hello, can someone help me with building and patching the latest DXVK

I'm using this on Windows with GW2 and the Async build is amazing with dx9 !

Can someone please patch the latest Version 1.7.2 with the Dxvk-Async build and upload the tar.gz here so i can use the 64 bit d'll's

I'm using this on Windows and i'm a noob with the building part ( don't use Linux )

Someone uploaded 1.7.1 with the async patch here doitsujin/dxvk#1817

But there have been 26 commits to the master 1.7.2 since then ( plus version 1.7.2 is faster with gw2 )

Happy to donate $5 or $10 for the help 👍
Thank you :)

Unbuildable since upstream commit 80e125a130d18b222a24501d7f23d539a529efe3

Can be reproduced with master branch, first noticed with this commit: doitsujin/dxvk@80e125a

Steps to reproduce:

git clone https://github.com/doitsujin/dxvk && cd dxvk
git checkout 80e125a130d18b222a24501d7f23d539a529efe3
git clone https://github.com/Sporif/dxvk-async
patch --forward --strip=1 --input="dxvk-async/dxvk-async.patch"
./package-release.sh release build/ --no-package

Build log:

$ ./package-release.sh release build/ --no-package
The Meson build system
Version: 0.62.1
Source dir: /home/gigas/documents/repos/dxvk
Build dir: /home/gigas/documents/repos/dxvk/build/dxvk-release/build.64
Build type: cross build
Project name: dxvk
Project version: v1.10.1
C compiler for the host machine: x86_64-w64-mingw32-gcc (gcc 11.2.0 "x86_64-w64-mingw32-gcc (GCC) 11.2.0")
C linker for the host machine: x86_64-w64-mingw32-gcc ld.bfd 2.38
C++ compiler for the host machine: x86_64-w64-mingw32-g++ (gcc 11.2.0 "x86_64-w64-mingw32-g++ (GCC) 11.2.0")
C++ linker for the host machine: x86_64-w64-mingw32-g++ ld.bfd 2.38
C compiler for the build machine: cc (gcc 12.1.0 "cc (GCC) 12.1.0")
C linker for the build machine: cc ld.bfd 2.38
C++ compiler for the build machine: c++ (gcc 12.1.0 "c++ (GCC) 12.1.0")
C++ linker for the build machine: c++ ld.bfd 2.38
Build machine cpu family: x86_64
Build machine cpu: x86_64
Host machine cpu family: x86_64
Host machine cpu: x86_64
Target machine cpu family: x86_64
Target machine cpu: x86_64
Compiler for C++ supports arguments -DNOMINMAX: YES 
Compiler for C++ supports arguments -D_WIN32_WINNT=0xa00: YES 
Compiler for C++ supports arguments -msse: YES 
Compiler for C++ supports arguments -msse2: YES 
Compiler for C++ supports arguments -msse3: YES 
Compiler for C++ supports arguments -mfpmath=sse: YES 
Compiler for C++ supports arguments -Wimplicit-fallthrough: YES 
Compiler for C++ supports arguments -Wno-unused-private-field: NO 
Compiler for C++ supports arguments -Wno-microsoft-exception-spec: NO 
Compiler for C supports arguments -DNOMINMAX: YES 
Compiler for C supports arguments -D_WIN32_WINNT=0xa00: YES 
Compiler for C supports arguments -msse: YES 
Compiler for C supports arguments -msse2: YES 
Compiler for C supports arguments -msse3: YES 
Compiler for C supports arguments -mfpmath=sse: YES 
Compiler for C supports arguments -Wimplicit-fallthrough: YES 
Compiler for C supports arguments -Wno-unused-private-field: NO 
Compiler for C supports arguments -Wno-microsoft-exception-spec: NO 
Compiler for C++ supports link arguments -static: YES 
Compiler for C++ supports link arguments -static-libgcc: YES 
Compiler for C++ supports link arguments -static-libstdc++: YES 
Compiler for C++ supports link arguments -Wl,--file-alignment=4096: YES 
Compiler for C supports link arguments -static: YES 
Compiler for C supports link arguments -static-libgcc: YES 
Compiler for C supports link arguments -static-libstdc++: YES 
Compiler for C supports link arguments -Wl,--file-alignment=4096: YES 
Library vulkan-1 found: YES
Library d3d9 found: YES
Library d3d11 found: YES
Library dxgi found: YES
Library d3dcompiler_43 found: YES
Library d3dcompiler_47 found: YES
Program glslangValidator found: YES (/usr/bin/glslangValidator)
Program x86_64-w64-mingw32-windres found: YES
Run-time dependency threads found: YES
Dependency threads found: YES unknown (cached)
Build targets in project: 13
NOTICE: Future-deprecated features used:
 * 0.56.0: {'meson.source_root'}

dxvk v1.10.1

  User defined options
    Cross files : /home/gigas/documents/repos/dxvk/build-win64.txt
    bindir      : x64
    buildtype   : release
    libdir      : x64
    prefix      : /home/gigas/documents/repos/dxvk/build/dxvk-release
    strip       : True
    build_id    : false
    enable_tests: false

Found ninja-1.11.0 at /usr/bin/ninja
[98/277] Compiling C++ object src/dxvk/libdxvk.a.p/dxvk_graphics.cpp.obj
FAILED: src/dxvk/libdxvk.a.p/dxvk_graphics.cpp.obj 
x86_64-w64-mingw32-g++ -Isrc/dxvk/libdxvk.a.p -Isrc/dxvk -I../../../src/dxvk -I../../../include -I. -fdiagnostics-color=always -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++17 -O3 -DNOMINMAX -D_WIN32_WINNT=0xa00 -msse -msse2 -msse3 -mfpmath=sse -Wimplicit-fallthrough -pthread -MD -MQ src/dxvk/libdxvk.a.p/dxvk_graphics.cpp.obj -MF src/dxvk/libdxvk.a.p/dxvk_graphics.cpp.obj.d -o src/dxvk/libdxvk.a.p/dxvk_graphics.cpp.obj -c ../../../src/dxvk/dxvk_graphics.cpp
../../../src/dxvk/dxvk_graphics.cpp:90:8: error: no declaration matches ‘void dxvk::DxvkGraphicsPipeline::compilePipeline(const dxvk::DxvkGraphicsPipelineStateInfo&, const dxvk::DxvkRenderPass*)’
   90 |   void DxvkGraphicsPipeline::compilePipeline(
      |        ^~~~~~~~~~~~~~~~~~~~
In file included from ../../../src/dxvk/dxvk_context_state.h:7,
                 from ../../../src/dxvk/dxvk_context.h:6,
                 from ../../../src/dxvk/dxvk_device.h:7,
                 from ../../../src/dxvk/dxvk_graphics.cpp:3:
../../../src/dxvk/dxvk_graphics.h:219:10: note: candidate is: ‘bool dxvk::DxvkGraphicsPipeline::compilePipeline(const dxvk::DxvkGraphicsPipelineStateInfo&, const dxvk::DxvkRenderPass*)’
  219 |     bool compilePipeline(
      |          ^~~~~~~~~~~~~~~
../../../src/dxvk/dxvk_graphics.h:146:9: note: ‘class dxvk::DxvkGraphicsPipeline’ defined here
  146 |   class DxvkGraphicsPipeline {
      |         ^~~~~~~~~~~~~~~~~~~~
[111/277] Compiling C++ object src/dxvk/libdxvk.a.p/dxvk_openvr.cpp.obj
ninja: build stopped: subcommand failed.

Help me understand the instructions.

Hi,
I need help understanding these instructions.;
•Patch dxvk with dxvk-async.patch
•Create a file named dxvk.conf and inside this file insert dxvk.enableAsync = true

Do I need to apply the patch if I'm downloading the latest release from here? Also, is it required to create dxvk.conf file with the value ''dxvk.enableAsync = true'' if using on Windows or moving the .dll files to the directory would be enough? Thanks.

Sorry if its wrong to ask for help here, you can remove the post if needed.

AC Ody issues

so i can play for about a min and then it stutters heavy i cant even get passed the tut becasue of this im stuck on the 300 battle . its stutters every min or so .

Performance regression in Prey (2017) with latest release v1.10

Hey there, should be first noted that this could very well be an issue with dxvk 1.10 without async.

I'm getting weird stuttering in Prey (2017) that doesn't appear to be standard compilation stuttering, but more of a "rubber band" type effect with release 1.10.

1.9.4 seems to resolve it, however. I've swapped the respective d3d*.dll files of each version into the game prefix back and forth to compare performance and can conclude that it indeed happens when 1.10 dlls are used.

I'm sure this is probably relatively useless information as-is, so if there is anything additional I can provide please let me know and I'll be happy to do so.

EDIT: Confirmed issue is present on regular dxvk. Closing and reported there.

dxvk-async patch fails to apply commit 1b89394

output

patching file meson.build
patching file src/dxvk/dxvk_context.cpp
Hunk #1 FAILED at 4187.
Hunk #2 succeeded at 4802 (offset 342 lines).
Hunk #3 succeeded at 4826 (offset 344 lines).
Hunk #4 succeeded at 5219 (offset 336 lines).
Hunk #5 succeeded at 5652 (offset 338 lines).
1 out of 5 hunks FAILED -- saving rejects to file src/dxvk/dxvk_context.cpp.rej
patching file src/dxvk/dxvk_context.h
Hunk #1 succeeded at 1327 (offset 88 lines).
Hunk #2 succeeded at 1404 (offset 85 lines).
patching file src/dxvk/dxvk_graphics.cpp
Hunk #1 FAILED at 50.
Hunk #2 FAILED at 59.
Hunk #3 FAILED at 95.
Hunk #4 FAILED at 103.
4 out of 4 hunks FAILED -- saving rejects to file src/dxvk/dxvk_graphics.cpp.rej
patching file src/dxvk/dxvk_graphics.h
Hunk #1 FAILED at 200.
Hunk #2 FAILED at 213.
Hunk #3 FAILED at 235.
Hunk #4 FAILED at 263.
4 out of 4 hunks FAILED -- saving rejects to file src/dxvk/dxvk_graphics.h.rej
patching file src/dxvk/dxvk_image.h
patching file src/dxvk/dxvk_options.cpp
Hunk #1 succeeded at 10 (offset 1 line).
patching file src/dxvk/dxvk_options.h
Hunk #1 succeeded at 21 with fuzz 2 (offset 3 lines).
patching file src/dxvk/dxvk_pipecompiler.cpp
patching file src/dxvk/dxvk_pipecompiler.h
patching file src/dxvk/dxvk_pipemanager.cpp
Hunk #1 FAILED at 9.
1 out of 1 hunk FAILED -- saving rejects to file src/dxvk/dxvk_pipemanager.cpp.rej
patching file src/dxvk/dxvk_pipemanager.h
Hunk #1 FAILED at 6.
Hunk #2 FAILED at 100.
2 out of 2 hunks FAILED -- saving rejects to file src/dxvk/dxvk_pipemanager.h.rej
patching file src/dxvk/meson.build
Hunk #1 FAILED at 90.
1 out of 1 hunk FAILED -- saving rejects to file src/dxvk/meson.build.rej

[RenderSystem] vmaAllocateMemory failed for DEVICE_LOCAL memory indicating video memory is full, trying again in system memory as a fallback.

Using d3d11 and dxgi with:
dxgi.maxFrameLatency = 1
dxvk.enableAsync = true.
CS2 console on inferno mean a match spam the message:
[RenderSystem] vmaAllocateMemory failed for DEVICE_LOCAL memory indicating video memory is full, trying again in system memory as a fallback.

Even testing with the shared and maximum memory (0MB of shared and 2000MB of VRAM) this still happening.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.