1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2024-12-05 01:24:14 +01:00
dxvk/src/d3d11
Philip Rebohle f5d73842b2
[d3d11] Do not flush on every call to GetData
There are several scenarios when flushing can have
a significant negative impact on performance:
1. When the query result is already available
2. When the game scatters GetData calls when rendering

Frostpunk hits both issues at the same time, which led to
over 120 queue submissions per frame. This patch reduces
that to 3 submissions per frame when the game is GPU-bound.
2018-06-19 14:34:15 +02:00
..
d3d11_annotation.cpp [d3d11] Add ID3DUserDefinedAnnotation stub 2018-06-11 14:29:47 +02:00
d3d11_annotation.h [d3d11] Add ID3DUserDefinedAnnotation stub 2018-06-11 14:29:47 +02:00
d3d11_blend.cpp [d3d11] Implement state block normalization (#333) 2018-04-30 10:41:57 +02:00
d3d11_blend.h [d3d11] Implement state block normalization (#333) 2018-04-30 10:41:57 +02:00
d3d11_buffer.cpp [d3d11] Allocate DYNAMIC buffers on device-local host-visible memory 2018-05-29 14:50:08 +02:00
d3d11_buffer.h [d3d11] Fix stage and access mask for default constant buffers 2018-05-04 10:23:36 +02:00
d3d11_class_linkage.cpp [dxgi/d3d11] Remove COM_QUERY_INTERFACE macro, reset pointers 2018-04-02 12:52:02 +02:00
d3d11_class_linkage.h [general] Added 32-bit support 2017-12-12 12:50:52 +01:00
d3d11_cmdlist.cpp [d3d11] Implement new auto-flush heuristic 2018-06-04 23:31:49 +02:00
d3d11_cmdlist.h [d3d11] Implement new auto-flush heuristic 2018-06-04 23:31:49 +02:00
d3d11_context_def.cpp [d3d11] Move GetData implementation to D3D11ImmediateContext 2018-06-08 12:29:24 +02:00
d3d11_context_def.h [d3d11] Move GetData implementation to D3D11ImmediateContext 2018-06-08 12:29:24 +02:00
d3d11_context_imm.cpp [d3d11] Do not flush on every call to GetData 2018-06-19 14:34:15 +02:00
d3d11_context_imm.h [d3d11] Move GetData implementation to D3D11ImmediateContext 2018-06-08 12:29:24 +02:00
d3d11_context_state.h [d3d11] Implement render pass spilling for UAV rendering 2018-06-15 20:49:24 +02:00
d3d11_context.cpp [d3d11] Use clearBuffer to initialize UAV counters 2018-06-16 10:22:38 +02:00
d3d11_context.h [d3d11] Implement render pass spilling for UAV rendering 2018-06-15 20:49:24 +02:00
d3d11_depth_stencil.cpp [dxvk] Removed support for depth bounds test 2018-06-06 13:11:09 +02:00
d3d11_depth_stencil.h [d3d11] Implement state block normalization (#333) 2018-04-30 10:41:57 +02:00
d3d11_device_child.h [general] Added 32-bit support 2017-12-12 12:50:52 +01:00
d3d11_device.cpp [d3d11] Implement CheckCounterInfo and related stubs 2018-06-11 14:01:45 +02:00
d3d11_device.h [d3d11] Refactor InitTexture method 2018-05-22 21:06:26 +02:00
d3d11_enums.cpp [d3d11] Added enum to stringfunctions 2017-12-02 16:46:53 +01:00
d3d11_enums.h [d3d11] Added enum to stringfunctions 2017-12-02 16:46:53 +01:00
d3d11_include.h [d3d11] Fix compilation with WINE headers (#247) 2018-04-07 14:02:57 +02:00
d3d11_input_layout.cpp [d3d11] Chjeck whether input layouts are identical 2018-05-27 01:10:49 +02:00
d3d11_input_layout.h [d3d11] Chjeck whether input layouts are identical 2018-05-27 01:10:49 +02:00
d3d11_interfaces.h [d3d11] Some cleanup work 2017-12-04 13:39:37 +01:00
d3d11_interop.cpp [d3d11] Implement IDXGIVkInteropDevice for D3D11Device 2018-04-20 00:19:03 +02:00
d3d11_interop.h [d3d11] Implement IDXGIVkInteropDevice for D3D11Device 2018-04-20 00:19:03 +02:00
d3d11_main.cpp [d3d11] Implement D3D11CoreCreateDevice 2018-05-07 14:06:52 +02:00
d3d11_options.cpp [d3d11] Fake streamout support for Final Fantasy XV 2018-06-16 18:52:20 +02:00
d3d11_options.h [d3d11] Remove GetData do-not-flush workaround for Fallout 4 2018-06-08 13:13:42 +02:00
d3d11_present.cpp [dxgi] Implemented IDXGISwapChain1 2018-05-23 01:06:34 +02:00
d3d11_present.h [dxgi] Implemented IDXGISwapChain1 2018-05-23 01:06:34 +02:00
d3d11_query.cpp [d3d11] Report correct timer frequency for TIMESTAMP_DISJOINT queries 2018-06-13 14:30:44 +02:00
d3d11_query.h [d3d11] Report correct timer frequency for TIMESTAMP_DISJOINT queries 2018-06-13 14:30:44 +02:00
d3d11_rasterizer.cpp [d3d11] Implement state block normalization (#333) 2018-04-30 10:41:57 +02:00
d3d11_rasterizer.h [d3d11] Implemented ID3D11RasterizerState1 stub 2018-03-18 22:53:20 +01:00
d3d11_sampler.cpp [d3d11] D3D11SamplerState: Cosmetic changes 2018-05-09 11:55:05 +02:00
d3d11_sampler.h [d3d11] Implement state block normalization (#333) 2018-04-30 10:41:57 +02:00
d3d11_shader.cpp [util] Add method to retrieve SHA1 hashes in 32-bit chunks 2018-05-03 23:47:42 +02:00
d3d11_shader.h [clang-tidy] performance-move-const-arg fix (#324) 2018-04-28 14:13:23 +02:00
d3d11_state.cpp Make hashes use correct types and fix narrowing warnings in spirv module. (#307) 2018-04-20 01:10:58 +02:00
d3d11_state.h [d3d11] Implemented D3D11BlendState1 2018-03-18 23:27:29 +01:00
d3d11_texture.cpp [d3d11] Relaxed view format compatibility check 2018-05-05 20:16:01 +02:00
d3d11_texture.h [d3d11] Validate image view format compatibility 2018-05-05 15:13:35 +02:00
d3d11_util.cpp [d3d11] Validate texture sample count 2018-04-13 13:46:45 +02:00
d3d11_util.h [d3d11] Fix vertex attribute offset with D3D11_APPEND_ALIGNED_ELEMENT 2018-05-30 13:33:48 +02:00
d3d11_view_dsv.cpp [d3d11] Cap mip level count for textures and views 2018-04-12 23:42:11 +02:00
d3d11_view_dsv.h [d3d11] Fix render target layouts for linar tiling 2018-06-19 11:28:54 +02:00
d3d11_view_rtv.cpp [d3d11] Cap mip level count for textures and views 2018-04-12 23:42:11 +02:00
d3d11_view_rtv.h [d3d11] Fix render target layouts for linar tiling 2018-06-19 11:28:54 +02:00
d3d11_view_srv.cpp [d3d11] Fix incorrect cube face count calculation 2018-04-21 14:14:42 +02:00
d3d11_view_srv.h [d3d11] Moved GetViewFromDesc and NormalizeDesc out of D3D11Devuce 2018-03-17 13:42:37 +01:00
d3d11_view_uav.cpp [d3d11] Cap mip level count for textures and views 2018-04-12 23:42:11 +02:00
d3d11_view_uav.h [d3d11] Moved GetViewFromDesc and NormalizeDesc out of D3D11Devuce 2018-03-17 13:42:37 +01:00
d3d11.def [d3d11] Implement D3D11CoreCreateDevice 2018-05-07 14:06:52 +02:00
meson.build [d3d11] Add ID3DUserDefinedAnnotation stub 2018-06-11 14:29:47 +02:00