Philip Rebohle
6f8bb2a4c0
vkd3d: Use vkd3d_allocate_device_memory_2 for sparse metadata.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-18 14:17:22 +01:00
Philip Rebohle
12f0c11c7f
vkd3d: Simplify vkd3d_allocate_image_memory helper.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-18 14:17:22 +01:00
Philip Rebohle
ab2c190da5
vkd3d: Simplify vkd3d_allocate_buffer_memory helper.
...
This is still useful as a low-level memory allocation function when
we don't want to bother with buffer offsets or D3D12 validation.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-18 14:17:22 +01:00
Philip Rebohle
db2e0c7587
vkd3d: Remove vkd3d_gpu_va_allocator.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-18 14:17:22 +01:00
Philip Rebohle
8826f3c5bc
vkd3d: Remove d3d12_heap and old resource creation functions.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-18 14:17:22 +01:00
Philip Rebohle
9792b02b26
vkd3d: Use vkd3d_memory_allocation for scratch buffers.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-18 14:17:22 +01:00
Philip Rebohle
db1b425d2a
vkd3d: Use new resource and heap implementations.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-18 14:17:22 +01:00
Hans-Kristian Arntzen
8437eea2c0
vkd3d: Remove clamping assumption in RTPSO stack size.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-18 14:16:31 +01:00
Hans-Kristian Arntzen
e228367e98
tests: Allow SetPipelineStackSize to propagate properly.
...
AMD and NV driver behaviors don't agree here, choose NV behavior as it
makes more sense.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-18 14:16:31 +01:00
Hans-Kristian Arntzen
3a48b97dd1
tests: Clean up some manual WCHAR strings.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-18 14:16:31 +01:00
Hans-Kristian Arntzen
20c4dfc685
tests: Add multithreaded suballocation test.
...
Also stresses VA mapping.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-18 14:16:31 +01:00
Joshua Ashton
f01935d69e
vkd3d: Fix SetName for inline query types
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-18 02:41:45 +01:00
Philip Rebohle
6fc8b67576
vkd3d: Fix incorrect chunk assignment for chunk allocations.
...
Our clear code assume that this is NULL for allocations owned
by a chunk, so we should actually do it that way. Fixes some
issues where we do not wait for clears to complete if a chunk
gets destroyed.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-17 16:38:47 +01:00
Philip Rebohle
e12afd31d9
vkd3d: Actually use VKD3D_VA_BLOCK_COUNT.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-17 16:38:47 +01:00
Philip Rebohle
35f90c4b2f
vkd3d: Only print some swapchain FIXMEs once.
...
Silences a whole bunch of log spam in Control.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-17 13:37:41 +01:00
Hans-Kristian Arntzen
ea088ceecf
vkd3d: Use UINT64* instead of uint64_t* in 64-bit CAS.
...
Avoids alignment warnings on 32-bit.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-16 16:14:14 +00:00
Hans-Kristian Arntzen
7051bf76f7
vkd3d: Fix validation errors with KHR_fragment_shading_rate.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-16 16:07:55 +00:00
Philip Rebohle
a39bab95a1
vkd3d: Clear suballocated memory to zero.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-16 16:06:26 +01:00
Philip Rebohle
668a4e1f2c
vkd3d: Do not suballocate small image-only heaps.
...
We have no way to manually reset these.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-16 16:06:26 +01:00
Philip Rebohle
4d68130be7
vkd3d: Add functionality to clear newly allocated memory.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-16 16:06:26 +01:00
Philip Rebohle
78713062fe
vkd3d: Introduce unique_queue_mask.
...
Has one bit set for each vkd3d_queue_family that points to a
unique queue. This can be used to iterate over device queues
without having to check for duplicates manually.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-16 16:06:26 +01:00
Philip Rebohle
812c82f8ac
vkd3d: Introduce VKD3D_QUEUE_FAMILY_INTERNAL_COMPUTE.
...
This needs a rework when we re-enable multi-queue support.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-16 16:06:26 +01:00
Hans-Kristian Arntzen
da06323b87
tests: Add test which stresses suballocation implementation.
...
Designed to stress internal implementation details for memory rewrite.
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-16 14:27:06 +01:00
Hans-Kristian Arntzen
dc1b4b56ed
tests: Fix build with vkd3d-utils Windows test suite.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-16 14:27:06 +01:00
Joshua Ashton
bf2aa9ab99
build: Link against libatomic on x86 when using Clang
...
Needed for 64-bit atomics on 32-bit architectures on Clang.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-16 10:18:26 +01:00
Joshua Ashton
a0f9891b11
tests: Fix -Wincompatible-pointer-types warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
b168a9278b
tests: Fix missing hresult check in RTV descriptor copy test
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
485399ff81
tests: Fix -Wenum-conversion warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
3bd5ba0681
tests: Fix -Wunused-variable warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
2e1a5e75ac
tests: Fix -Wabsolute-value warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
b91568b717
tests: Fix -Wdeclaration-after-statement warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
b6444b4728
tests: Fix -Wunused-function warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
9b2841b50f
tests: Fix -Wsign-compare warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
f32a2d5c70
tests: Fix -Wmissing-brace warnings
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Joshua Ashton
9953928379
meta: Remove autotools elements from gitignore
...
Additionally, fixes detecting packages and other build directories.
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 17:54:54 +01:00
Philip Rebohle
ba632148d7
vkd3d: Add new functions to create and destroy resources.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 17:04:52 +01:00
Philip Rebohle
fee47ef695
vkd3d: Introduce d3d12_resource_validate_create_info.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 17:04:52 +01:00
Philip Rebohle
22f61611d1
vkd3d: Add d3d12_heap_2.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 17:04:52 +01:00
Philip Rebohle
229273fb3b
vkd3d: Add memory allocator instance to device.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 17:04:52 +01:00
Philip Rebohle
6e1867b001
vkd3d: Add some more debug output to memory allocation functions.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 17:04:52 +01:00
Philip Rebohle
5e54c1fc5d
vkd3d: Register allocation cookie for descriptor debugging.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 17:04:52 +01:00
Philip Rebohle
8f6e94dc30
vkd3d: Suballocate small allocations from larger chunks.
...
This is necessary to keep the amount of allocated memory manageable
in games that allocate a lot of small heaps or committed resources.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 16:38:16 +01:00
Georg Lehmann
eaab2388b1
vkd3d: Fix warning with vkd3d_atomic_ptr*.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com>
2021-02-15 15:47:17 +01:00
Philip Rebohle
d65363b6b6
vkd3d: Add VA map to memory allocator.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 15:19:11 +01:00
Philip Rebohle
7c017c1dba
vkd3d: Add VA->resource map and new VA allocator.
...
This is designed to work with actual device addresses if supported by
the Vulkan implementation.
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 15:19:11 +01:00
Philip Rebohle
f536daaacb
vkd3d: Introduce new memory allocation functions.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 15:19:11 +01:00
Philip Rebohle
417b3b746e
vkd3d: Introduce vkd3d_allocate_cookie.
...
Signed-off-by: Philip Rebohle <philip.rebohle@tu-dortmund.de>
2021-02-15 14:04:16 +01:00
Joshua Ashton
344f75aafd
build: Enable --quiet on glslangValidator
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 11:25:51 +01:00
Joshua Ashton
00c8d1df9d
vkd3d: Refactor vkd3d_physical_device_info_init
...
Signed-off-by: Joshua Ashton <joshua@froggi.es>
2021-02-15 11:25:21 +01:00
Hans-Kristian Arntzen
22f052c366
dxil-spirv: Update submodule.
...
Signed-off-by: Hans-Kristian Arntzen <post@arntzen-software.no>
2021-02-12 14:28:49 +01:00