Detailed Changelog - Digger1955/dxvk-gplasync-lowlatency GitHub Wiki
DXVK-GPLAsync-LowLatency 2.7-3 (DXVK-GPLALL 2.7-3)
Based on DXVK 2.7, DXVK GPLAsync 2.7-patch, DXVK Low Latency 2.7-commit cd329aa.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux-SSE2-O3-LTO 2.7-3
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-GENERIC 2.7-3
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-INTEL 2.7-3
- DXVK-GPLALL-MSVC-Windows-SSE2-O2-LTCG 2.7-3
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG-AMD64 2.7-3
- DXVK-GPLALL-MSVC-Windows-SSE4.2-O2-LTCG-INTEL64 2.7-3
- DXVK Native-GPLALL-GCC-SSE2-O3-LTO 2.7-3
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-GENERIC 2.7-3
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-INTEL 2.7-3
- Source Code
- dxvk.conf
Release Notes:
-
Reverted upstream DXVK 2.7 change which removes state cache starting from DXVK 2.7. Author - Laitinlok.
- Upstream DXVK state cache and DXVK GPLAsync state cache fixes for Async and GPL were ported in full, including options controls in
dxvk.conf
and environment variables.- State cache would be useful when used with Async without GPL to reduce stuttering in cases where shaders aren't compiling fast enough without GPL. Having state cache enabled should improve frame pacing which might benefit the latency of the application.
- Upstream DXVK state cache and DXVK GPLAsync state cache fixes for Async and GPL were ported in full, including options controls in
-
Enabled additional optimization (
/Qpar
) for MSVC SSE2-optimized (/arch:SSE2
) builds of DXVK-GPLALL to futher increase performance in CPU-bound situations, speed up shader compilation. Author - Digger1955- Note:
/Qpar-report:2
and/Qvec-report:2
for MSVC builds are enabled for logging purposes and do not affect runtime performance in any way.
- Note:
DXVK-GPLAsync-LowLatency 2.6.3-1 (DXVK-GPLALL 2.6.3-1)
Based on DXVK 2.6.2 and commits from DXVK 2.7, DXVK GPLAsync 2.6.2 and DXVK GPLAsync 2.7-patch, DXVK Low Latency 2.7-commit cd329aa.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux-SSE2-O3-LTO 2.6.3-1
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-GENERIC 2.6.3-1
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-INTEL 2.6.3-1
- DXVK-GPLALL-MSVC-Windows-SSE2-O2-LTCG 2.6.3-1
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG-AMD64 2.6.3-1
- DXVK-GPLALL-MSVC-Windows-SSE4.2-O2-LTCG-INTEL64 2.6.3-1
- DXVK Native-GPLALL-GCC-SSE2-O3-LTO 2.6.3-1
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-GENERIC 2.6.3-1
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-INTEL 2.6.3-1
- Source Code
- dxvk.conf
Release Notes:
IMPORTANT: DXVK-GPLALL 2.6.x version will be maintained for GPUs/drivers that do not have VK_KHR_maintenance5
and/or maxPushConstantsSize=256
. Commits from DXVK, DXVK GPLAsync and DXVK Low Latency will be ported to DXVK-GPLALL 2.6.x, if possible. Also, DXVK-GPLALL 2.6.x will be recompiled from time to time, when new compiler versions with significant improvements are out.
First maintenance release of DXVK-GPLALL 2.6.x branch. Next maintenance releases will have less changes, due to more significant incompatibilities between DXVK 2.6.x and next DXVK versions.
- Enabled additional optimization (
/Qpar
) for MSVC SSE2-optimized (/arch:SSE2
) builds of DXVK-GPLALL to futher increase performance in CPU-bound situations, speed up shader compilation. Author - Digger1955- Note:
/Qpar-report:2
and/Qvec-report:2
for MSVC builds are enabled for logging purposes and do not affect runtime performance in any way.
- Note:
List of ported and adapted upstream DXVK commits:
- Note: The most significant and important change is Resource eviction PR with all fixes for it and defragmentation for Intel Battlemage GPUs
9afa095 - [d3d9] Fix GetAvailableTextureMem
06e5081 - [d3d9] Clarify vendor hack support
f4e67e5 - [d3d9] Don't change offset when skipping binding null VB
fe6a45e - [d3d9] Only show unsupported vendor hack warnings once
0038671 - [dxvk] Fall back to system memory when exceeding vram budget - Resource eviction
d10abad - [dxvk] Move resource allocator pointer to base class - Resource eviction
4ecaa93 - [dxvk] Allow passing null storage to relocation list - Resource eviction
d7251f9 - [dxvk] Migrate resources from system memory to VRAM on use - Resource eviction
1cf8bb0 - [dxvk] Periodically evict resources when under memory pressure - Resource eviction
8c32bef - [dxvk] Do not try to reclaim chunks from other memory pools - Resource eviction
cb92aee - [dxvk] Introduce new "move" access type - Resource eviction
6a78506 - [dxvk] Add config option to override memory budget - Resource eviction
9640b39 - [dxvk] Also defrag fallback memory types - Resource eviction
7668000 - [dxvk] Add proper heap property to enforce memory budget - Resource eviction
8ea8093 - [dxvk] Also defrag chunks that resources get evicted from - Resource eviction
39ccbc1 - [hud] Separate fallback chunks from mapped chunks - Resource eviction
680bf24 - [dxvk] Only consider one heap for device-local memory allocations - Resource eviction
d51422e - [dxvk] Be less aggressive about defragmenting fallback memory - Resource eviction
dedeee1 - [d3d9/dxgi] Add a force refresh rate config option - [d3d9/dxgi] Add a force refresh rate config option
78eded8 - [d3d8] Optimize D3D8 adapter format caching - [d3d9/dxgi] Add a force refresh rate config option
2316680 - [util] Disable direct image mapping for LEGO City Undercover
21e1d92 - [dxvk] Fix layers crashing when passing null swapchain to vkDestroySwapchainKHR
f1b60fd - [dxvk] Keep roughly 1% of device-local memory heaps unused
cb44610 - [util] Don't error out for otherwise unknown CPU architectures
d2c8e54 - [dxvk] Error out at build time if AVX is enabled
d2ee3ff - [d3d9] Remove support for d3d9ex specific depth formats
389702c - [dxvk] Enable memory defragmentation on Intel Battlemage GPUs
f6d790e - [util] Fix black screen on return from the A.I.M. options window
5270f64 - [spirv] Exclude unique types from type look-up
e668e33 - [d3d9] Remove the forceSwapchainMSAA option
9c5c310 - [util] Don't count losable resources for Astebreed
dd46e48 - [util] disable d3d9.textureMemory for Dungeon Lords
fae0af9 - [util] Disable losable resource tracking for SFC3
c2d59b0 - [util] Hide Nvidia GPU for Wargame: European Escalation
24fcf38 - [util] Splinter Cell config option tweaks
5c40598 - [util] Add configs for GTR - FIA GT Racing Game
2ac295f - [util] Enable deviceLossOnFocusLoss for Test Drive Unlimited 2
e940893 - [util] Explicitly flush log stream
b8db71b - [dxgi] Support presenting swap chains without a window
35aa75e - [d3d9] Only fail on DISCARD|READONLY locks of D3DPOOL_DEFAULT resources
629a5f0 - [util] Enable d3d9.hideNvidiaGpu for Perilous Warp
6a5544f - [dxvk] Fix isoline tessellation enum order
Ported D3D8 part and d3d9_bridge
of upstream DXVK commits:
118094c - [d3d8/9] General and format helpers cleanup
6847d00 - [d3d8/9] Clean up CheckDeviceFormat and CreateImageSurface formats
List of ported and adapted DXVK Low Latency commits:
c29abbe - [dxvk] Collect GPU and V-Sync buffer stats - [hud] Latency Details: Show GPU buffer, V-Sync buffer, etc.
6d40102 - [hud] Add latency details - [hud] Latency Details: Show GPU buffer, V-Sync buffer, etc.
cd329aa - [dxvk] Track frame pacing buffer stats only on demand - [hud] Latency Details: Show GPU buffer, V-Sync buffer, etc.
DXVK-GPLAsync-LowLatency 2.7-2 (DXVK-GPLALL 2.7-2)
Based on DXVK 2.7, DXVK GPLAsync 2.7-patch, DXVK Low Latency 2.7-commit 1b5f3ac.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux-SSE2-O3-LTO 2.7-2
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-GENERIC 2.7-2
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-INTEL 2.7-2
- DXVK-GPLALL-MSVC-Windows-SSE2-O2-LTCG 2.7-2
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG-AMD64 2.7-2
- DXVK-GPLALL-MSVC-Windows-SSE4.2-O2-LTCG-INTEL64 2.7-2
- DXVK Native-GPLALL-GCC-SSE2-O3-LTO 2.7-2
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-GENERIC 2.7-2
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-INTEL 2.7-2
- Source Code
- dxvk.conf
Release Notes:
- Lowered number of required draw calls for render target, after which asynchronous pipeline compilation for corresponding shader will be enabled, which leads to lower peak CPU load during shader compilation process, which leads to less stutters in both amount and longevity. Author - Digger1955, scientific info - Britt Yazel
- Based on tests results
m_rtBindingFrameCount
was changed fromm_rtBindingFrameCount >= 5
tom_rtBindingFrameCount >= 2
.- Note: Async graphical side effects are lessened, because of more shaders getting to use higher priority asynchronous pipeline compilation.
- Based on tests results
DXVK-GPLAsync-LowLatency 2.6.2-1 (DXVK-GPLALL 2.6.2-1)
Based on DXVK 2.6.2, DXVK GPLAsync 2.6.2 and DXVK GPLAsync 2.7-patch, DXVK Low Latency 2.7-commit 1b5f3ac.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux-SSE2-O3-LTO 2.6.2-1
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-GENERIC 2.6.2-1
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-INTEL 2.6.2-1
- DXVK-GPLALL-MSVC-Windows-SSE2-O2-LTCG 2.6.2-1
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG-AMD64 2.6.2-1
- DXVK-GPLALL-MSVC-Windows-SSE4.2-O2-LTCG-INTEL64 2.6.2-1
- DXVK Native-GPLALL-GCC-SSE2-O3-LTO 2.6.2-1
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-GENERIC 2.6.2-1
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-INTEL 2.6.2-1
- Source Code
- dxvk.conf
Release Notes:
IMPORTANT: DXVK-GPLALL 2.6.x version will be maintained for GPUs/drivers that do not have VK_KHR_maintenance5
and/or maxPushConstantsSize=256
. Commits from DXVK, DXVK GPLAsync and DXVK Low Latency will be ported to DXVK-GPLALL 2.6.x, if possible. Also, DXVK-GPLALL 2.6.x will be recompiled from time to time, when new compiler versions with significant improvements are out.
- Lowered number of required draw calls for render target, after which asynchronous pipeline compilation for corresponding shader will be enabled, which leads to lower peak CPU load during shader compilation process, which leads to less stutters in both amount and longevity. Author - Digger1955, scientific info - Britt Yazel
- Based on tests results
m_rtBindingFrameCount
was changed fromm_rtBindingFrameCount >= 5
tom_rtBindingFrameCount >= 2
.- Note: Async graphical side effects are lessened, because of more shaders getting to use higher priority asynchronous pipeline compilation.
- Based on tests results
DXVK-GPLAsync-LowLatency 2.7-1 (DXVK-GPLALL 2.7-1)
Based on DXVK 2.7, DXVK GPLAsync 2.7-patch, DXVK Low Latency 2.7.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux-SSE2-O3-LTO 2.7-1
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-GENERIC 2.7-1
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-INTEL 2.7-1
- DXVK-GPLALL-MSVC-Windows-SSE2-O2-LTCG 2.7-1
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG-AMD64 2.7-1
- DXVK-GPLALL-MSVC-Windows-SSE4.2-O2-LTCG-INTEL64 2.7-1
- DXVK Native-GPLALL-GCC-SSE2-O3-LTO 2.7-1
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-GENERIC 2.7-1
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-INTEL 2.7-1
- Source Code
- dxvk.conf
Release Notes:
- Adjusted and implemented upstream DXVK change to HUD
devinfo
format. Author - Digger1955- Reason: Backporting old
devinfo
format is problematic. Newdevinfo
format is better for Linux/MacOS and tolerable on Windows with adjustments that have been made.
- Reason: Backporting old
DXVK-GPLAsync-LowLatency 2.6.1-6 (DXVK-GPLALL 2.6.1-6)
Based on DXVK 2.6.1, DXVK GPLAsync 2.6.1, DXVK Low Latency 2.6.1.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux-SSE2-O3-LTO 2.6.1-6
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-GENERIC 2.6.1-6
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO-INTEL 2.6.1-6
- DXVK-GPLALL-MSVC-Windows-SSE2-O2-LTCG 2.6.1-6
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG-AMD64 2.6.1-6
- DXVK-GPLALL-MSVC-Windows-SSE4.2-O2-LTCG-INTEL64 2.6.1-6
- DXVK Native-GPLALL-GCC-SSE2-O3-LTO 2.6.1-6
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-GENERIC 2.6.1-6
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO-INTEL 2.6.1-6
- Source Code
- dxvk.conf
Release Notes:
GCC builds fixes only, MSVC builds users can ignore this release.
-
Fixed regression in GCC x86 builds, which led to use of
387
floating-point arithmetic instructions instead ofsse
instructions. Reported - ViNi-Arco, fixed - Digger1955.- Added
-msse
and-msse2
tocompiler_args
. GCC requires either of them to be explicitly set in order to make-mfpmath=sse
effective.
- Added
-
Enabled multi-threaded Link-Time Optimization (
-flto=auto
) for GCC builds. Author - Digger1955- Does not affect compiler/linker output, speeds up LTO process. GCC requires
-flto=auto
to be explicitly set in order to activate multi-threading for LTO.
- Does not affect compiler/linker output, speeds up LTO process. GCC requires
-
Provided GCC SSE4.2-optimized (
-march=x86-64-v2
) builds of DXVK-GPLALL with Link-Time Optimization (-flto=auto
),-O3
optimization level, optimizations for Intel CPUs (-mtune=intel
) and additional optimizations. Author - Digger1955- Enabled optimizations for Intel CPUs (
-mtune=intel
) to futher increase performance in CPU-bound situations and to speed up shader compilation on Intel CPUs.- Note: For any other CPU in GCC SSE4.2-optimized builds
-mtune=generic
is used, because GCC does not have tuning options for AMD CPUs.
- Note: For any other CPU in GCC SSE4.2-optimized builds
- Enabled optimizations for Intel CPUs (
-
Provided GCC SSE4.2-optimized (
-march=x86-64-v2
) builds of DXVK-GPLALL with Link-Time Optimization (-flto=auto
),-O3
optimization level, optimizations for up-to-date CPUs (-mtune=generic
) and additional optimizations. Author - Digger1955- Explicitly set
-mtune=generic
to enable optimizations for any up-to-date CPUs. Up-to-date CPUs in GCC 15.1 are: AMD Zen and Intel Haswell or newer.- Note: It was already active, due to GCC behaviour, which does set
-mtune=generic
, if you specify-mtune=x86-64-v2
.
- Note: It was already active, due to GCC behaviour, which does set
- Explicitly set
DXVK-GPLAsync-LowLatency 2.6.1-5 (DXVK-GPLALL 2.6.1-5)
Based on DXVK 2.6.1, DXVK GPLAsync 2.6.1, DXVK Low Latency 2.6.1.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux-SSE2-O3-LTO 2.6.1-5
- DXVK-GPLALL-GCC-WinMacLinux-SSE4.2-O3-LTO 2.6.1-5
- DXVK-GPLALL-MSVC-Windows-SSE2-O2-LTCG 2.6.1-5
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG-AMD64 2.6.1-5
- DXVK-GPLALL-MSVC-Windows-SSE4.2-O2-LTCG-INTEL64 2.6.1-5
- DXVK Native-GPLALL-GCC-SSE2-O3-LTO 2.6.1-5
- DXVK Native-GPLALL-GCC-SSE4.2-O3-LTO 2.6.1-5
- Source Code
- dxvk.conf
Release Notes:
-
Provided GCC SSE2-optimized (
-march=x86-64, -mtune=x86-64
) builds of DXVK-GPLALL with Link-Time Optimization (-flto
) and-O3
optimization level. Author - Digger1955- Enabled use of Link-Time Optimization (
-flto
) by GCC linker with additional optimizations and enabled-O3
optimization level to futher increase performance in CPU-bound situations, speed up shader compilation.
- Enabled use of Link-Time Optimization (
-
Provided GCC SSE4.2-optimized (
-march=x86-64-v2, -mtune=x86-64-v2
) builds of DXVK-GPLALL with Link-Time Optimization (-flto
) and-O3
optimization level. They are replacing GCC AVX2-optimized builds. Author - Digger1955- Use of
-march=x86-64-v2, -mtune=x86-64-v2
allows to use GCC optimizations, such as-O3
optimization level and-flto
, which results in higher performance and broader compatibility than-march=x86-64-v3, -mtune=x86-64-v3
. GCC AVX2-optimized builds (-march=x86-64-v3, -mtune=x86-64-v3
) crashed at application launch (known compiler toolchain bug).
- Use of
-
Provided MSVC SSE2-optimized (
/arch:SSE2
) builds of DXVK-GPLALL with Link-Time Optimization (LTO
, a.k.a./LTCG
),/O2
optimization level and additional optimizations. Author - Digger1955- Enabled use of Link-Time Optimization (
LTO
, a.k.a./LTCG
) by MSVC linker with additional optimizations and enabled/O2
optimization level to futher increase performance in CPU-bound situations, speed up shader compilation. Enabled additional optimizations (/Ob3
and/Qpar
) to futher increase performance in CPU-bound situations, speed up shader compilation.
- Enabled use of Link-Time Optimization (
-
Provided MSVC AVX2-optimized (
/arch:AVX2
) builds of DXVK-GPLALL with Link-Time Optimization (LTO
, a.k.a./LTCG
),/O2
optimization level, optimizations for AMD CPUs in x64 DLLs (/favor:AMD64
) and additional optimizations. Author - Digger1955- Enabled use of specific optimizations for AMD CPUs (
/favor:AMD64
and'/d2vzeroupper'
) by MSVC compiler to get higher performance in CPU-bound situations on AMD CPUs in x64 applications. Enabled additional optimizations (/Ob3
and/Qpar
) to futher increase performance in CPU-bound situations, speed up shader compilation.
- Enabled use of specific optimizations for AMD CPUs (
-
Provided MSVC SSE4.2-optimized (
/arch:SSE4.2
) builds of DXVK-GPLALL with Link-Time Optimization (LTO
, a.k.a./LTCG
),/O2
optimization level, optimizations for Intel CPUs in x64 DLLs (/favor:INTEL64
, a.k.a./favor:EM64T
) and additional optimizations. Author - Digger1955- Enabled use of specific optimizations for Intel CPUs (
/favor:INTEL64
a.k.a./favor:EM64T
) by MSVC compiler to get higher performance in CPU-bound situations on Intel CPUs in x64 applications. Enabled additional optimizations (/Ob3
and/Qpar
) to futher increase performance in CPU-bound situations, speed up shader compilation.- Note: MSVC AVX2-optimized builds for Intel CPUs will not be provided. GCC/MSVC AVX2-optimized builds used with Intel CPUs exhibit degraded performance in power/temperature-limited cases due to downclocking/throttling. GCC/MSVC SSE4.2-optimized builds are providing the best possible performance for Intel CPUs.
- Important: Update your Visual C++ 2015-2022 Runtime to the latest version before using DXVK for Windows. Link for Visual C++ Redistributable Runtimes - https://www.techpowerup.com/download/visual-c-redistributable-runtime-package-all-in-one/
- Enabled use of specific optimizations for Intel CPUs (
DXVK-GPLAsync-LowLatency 2.6.1-4 (DXVK-GPLALL 2.6.1-4)
Based on DXVK 2.6.1, DXVK GPLAsync 2.6.1, DXVK Low Latency 2.6.1.
It consists of:
- DXVK-GPLALL-GCC-WinMacLinux 2.6.1-4
- DXVK-GPLALL-GCC-WinMacLinux-AVX2 2.6.1-4
- DXVK-GPLALL-MSVC-Windows 2.6.1-4
- DXVK-GPLALL-MSVC-Windows-AVX2-O2-LTCG 2.6.1-4
- DXVK Native-GPLALL-GCC 2.6.1-4
- DXVK Native-GPLALL-GCC-AVX2 2.6.1-4
- Source Code
- dxvk.conf
Release Notes:
-
Changed minimal CPU requirements of GCC build from SSE3 to SSE2 (
-march=x86-64, -mtune=x86-64
). Author - Digger1955- GCC build is tuned for SSE2 by default in upstream DXVK. Use of SSE3 instructions alone does not bring much benefit to DXVK and will have a negligible effect when CPU-bound (even at the fixed clock speed), and no effect whatsoever when GPU-bound.
- Note: Upstream DXVK implies
-march=x86-64
and-msse3
, but-mtune=x86-64
. This combination does not produce the most optimal result.
- Note: Upstream DXVK implies
- GCC build is tuned for SSE2 by default in upstream DXVK. Use of SSE3 instructions alone does not bring much benefit to DXVK and will have a negligible effect when CPU-bound (even at the fixed clock speed), and no effect whatsoever when GPU-bound.
-
Disabled GPL by default. GPL still can be enabled by setting
dxvk.enableGraphicsPipelineLibrary = True
indxvk.conf
. Author - Digger1955- Reason: Wiki
-
Restructured and tuned
meson.build
to guarantee proper output by various compilers. Author - Digger1955- Enabled use
-march=x86-64, -mtune=x86-64
and-march=x86-64-v3, -mtune=x86-64-v3
instead of separate instruction sets, correctedlink_args
structure.
- Enabled use
-
Provided MSVC AVX2-optimized (
/arch:AVX2
) builds of DXVK-GPLALL with Link-Time Optimization (LTO
, a.k.a/LTCG
). Author - Digger1955- Enabled use of Link-Time Optimization (
LTO
, a.k.a/LTCG
) by MSVC linker with additional optimizations to futher increase performance in CPU-bound situations, decrease shader compilation stutter. DLLs size increased by 5-10% due to LTO.- Important: AVX2-optimized (
/arch:AVX2
) builds minimum requirements is support for AVX2 instructions. Best results will be observed on AMD CPUs starting from AMD Zen 3 generation. For Intel CPUs performance may degrade in some power/temperature-limited cases due to downclocking/throttling, but it depends on end-user configuration.
- Important: AVX2-optimized (
- Important: Update your Visual C++ 2015-2022 Runtime to the latest version before using DXVK for Windows. Link for Visual C++ Redistributable Runtimes - https://www.techpowerup.com/download/visual-c-redistributable-runtime-package-all-in-one/
- Enabled use of Link-Time Optimization (
DXVK-GPLAsync-LowLatency 2.6.1-3 (DXVK-GPLALL 2.6.1-3)
Based on DXVK 2.6.1, DXVK GPLAsync 2.6.1, DXVK Low Latency 2.6.1.
It consists of:
- DXVK-GPLALL-LinuxMac 2.6.1-3
- DXVK-GPLALL-Windows 2.6.1-3
- DXVK-GPLALL-AVX2-Optimized-LinuxMac 2.6.1-3
- DXVK-GPLALL-AVX2-Optimized-Windows 2.6.1-3
- DXVK Native-GPLALL 2.6.1-3
- DXVK Native-GPLALL-AVX2-Optimized 2.6.1-3
- Source Code
- dxvk.conf
Release Notes:
-
Provided Windows (MSVC) builds of DXVK-GPLALL. Author - Digger1955
- Windows (MSVC) builds minimum requirements is support for SSE2 instructions (Note: for Linux/MacOS - SSE3). It is the recommended DXVK build for using on Windows - it works better in CPU-bound situations, compiles shaders a little faster and is smaller in size in comparison to DXVK build for Linux/MacOS.
- Note: PDBs are not provided.
- Important: Update your Visual C++ 2015-2022 Runtime to the latest version before using DXVK for Windows. Link for Visual C++ Redistributable Runtimes - https://www.techpowerup.com/download/visual-c-redistributable-runtime-package-all-in-one/
- Windows (MSVC) builds minimum requirements is support for SSE2 instructions (Note: for Linux/MacOS - SSE3). It is the recommended DXVK build for using on Windows - it works better in CPU-bound situations, compiles shaders a little faster and is smaller in size in comparison to DXVK build for Linux/MacOS.
-
Provided AVX2 (x86-64-v3) optimized builds of DXVK-GPLALL. Author - Digger1955
- Enabled use of x86-64-v3 ISA by GCC compiler and AVX2 (
/arch:AVX2
) by MSVC compiler to increase performance in CPU-bound situations and decrease shader compilation stutter.- Important: AVX2 (x86-64-v3) builds minimum requirements is support for AVX2 instructions. Best results will be observed on AMD processors starting from AMD Zen 3 generation. For Intel processors performance may degrade due to downclocking/throttling, so it is not recommended for them.
- Enabled use of
/O2
level of compiler optimization for Windows (MSVC) AVX2 builds to futher increase performance in CPU-bound situations and decrease shader compilation stutter.- Important: Builds with
-O2
level of compiler optimization for Linux/MacOS (GCC) x86-64-v3 are crashing applications at launch, and therefore are not provided. Since builds are compiled using GitHub infrastructure there is nothing can be done to fix it for now.
- Important: Builds with
- Enabled use of x86-64-v3 ISA by GCC compiler and AVX2 (
-
Implemented use of
"VK_EXT_load_store_op_none"
Vulkan extension instead of"VK_KHR_load_store_op_none"
. Author - Digger1955- They are identical, but
"VK_EXT_load_store_op_none"
available on a broader range of GPU drivers. This is especially important for mobile devices with Qualcomm Adreno GPUs, where it is not possible to change or update drivers.
- They are identical, but
-
Changed default number of used CPU logical threads from all to
(CPULogicalThreads - 2)
. Author - Digger1955- Reason: It leads to less stuttering when compiling shaders while playing, in comparison to using all CPU logical threads.
-
Reverted back upstream DXVK change to HUD format -
devinfo
now shows Device Name, Vulkan Headers version and Vulkan Driver version again. Author - Digger1955- Reason: Inconsitent behaviour of new
devinfo
HUD format on different drivers, because of driver vendors.
- Reason: Inconsitent behaviour of new
-
Added fork tag to HUD -
version
now shows DXVK-GPLALL 2.6.1 on non-AVX2 builds and DXVK-GPLALL-AVX2-Optimized 2.6.1 on AVX2 builds. Author - Digger1955
DXVK-GPLAsync-LowLatency 2.6.1-2
Inital release.
Based on DXVK 2.6.1, DXVK GPLAsync 2.6.1, DXVK Low Latency 2.6.1.
It consists of:
- DXVK-GPLAsync-LowLatency 2.6.1-2
- DXVK Native-GPLAsync-LowLatency 2.6.1-2
- Source Code
- dxvk.conf
Release Notes:
- Implemented Low Latency frame pacing mode that aims to greatly reduce latency with minimal impact in fps. Author - netborg-afps
- Implemented Asynchronous pipeline compilation (Async) that aims to greatly reduce shader compilation stutter by not blocking the main thread when compiling async pipelines. Authors - jomihaka and Sporif
- Implemented the ability to use both (together or separately) Graphics Pipeline Library (GPL) and Asynchronous pipeline compilation (Async) on DXVK 2.1 and later. Author - Ph42oN
- Implemented default location for global DXVK configuration file (
dxvk.conf
) on Windows, Linux and MacOS. Author - Ph42oN - Implemented all of aforementioned in one DXVK package. Author - Digger1955