Commit graph

5261 commits

Author SHA1 Message Date
ReinUsesLisp
459057f8d4 vk_pipeline_cache: Fix num of pipeline workers on weird platforms 2021-07-22 21:51:26 -04:00
FernandoS27
3fc7d20fce shader: Fix ShadowCube declaration type, set number of pipeline threads based on hardware 2021-07-22 21:51:26 -04:00
ReinUsesLisp
4c15b3b91a vk_compute_pass: Fix compute passes 2021-07-22 21:51:26 -04:00
ReinUsesLisp
ee52ec7e04 shader: Remove atomic flags and use mutex + cond variable for pipelines 2021-07-22 21:51:26 -04:00
ReinUsesLisp
9008061b99 vk_pipeline_cache: Remove unnecesary scope in pipeline cache locking 2021-07-22 21:51:26 -04:00
FernandoS27
98c08894d9 vk_pipeline_cache: Small fixes to the pipeline cache 2021-07-22 21:51:26 -04:00
FernandoS27
06469da581 shader: Mark SSBOs as written when they are 2021-07-22 21:51:25 -04:00
FernandoS27
68bad0e922 shader: Implement ViewportIndex 2021-07-22 21:51:25 -04:00
ReinUsesLisp
2b6f357e36 vulkan: Serialize pipelines on a separate thread 2021-07-22 21:51:25 -04:00
ReinUsesLisp
8678cb10d4 vulkan: Create pipeline layouts in separate threads 2021-07-22 21:51:25 -04:00
ReinUsesLisp
9e46643465 vulkan: Build pipelines in parallel at runtime
Wait from the worker thread for a pipeline to build before binding it to
the command buffer. This allows queueing pipelines to multiple threads.
2021-07-22 21:51:25 -04:00
ReinUsesLisp
9730422e34 vk_pipeline_cache: Name SPIR-V modules 2021-07-22 21:51:25 -04:00
FernandoS27
7d40446b99 shader: Address feedback 2021-07-22 21:51:25 -04:00
FernandoS27
8232c10ed1 shader: Implement TLD 2021-07-22 21:51:25 -04:00
ReinUsesLisp
0bb8a473e2 spirv: Add fixed pipeline point size 2021-07-22 21:51:25 -04:00
FernandoS27
bf9d512e17 shader: Implement BRX 2021-07-22 21:51:25 -04:00
ReinUsesLisp
d9227e102d vk_pipeline_cache: Fix size hashing of shaders 2021-07-22 21:51:25 -04:00
ReinUsesLisp
6044946495 shader: Implement LDS, STS, LDL, and STS and use SPIR-V 1.4 when available 2021-07-22 21:51:25 -04:00
ReinUsesLisp
e6b3119910 shader: Better interpolation and disabled attributes support 2021-07-22 21:51:24 -04:00
ReinUsesLisp
96a54aeea8 spirv: Remove dependencies on Environment when generating SPIR-V 2021-07-22 21:51:24 -04:00
ReinUsesLisp
43f71a1ff5 vk_pipeline_cache: Fix pipeline and shader caches 2021-07-22 21:51:24 -04:00
ReinUsesLisp
47fc2a0510 shader: Fix rasterizer integration order issues 2021-07-22 21:51:24 -04:00
ReinUsesLisp
e4ba306750 shader: Implement TXQ and fix FragDepth 2021-07-22 21:51:24 -04:00
ReinUsesLisp
24bc872af3 shader: Implement NDC [-1, 1], attribute types and default varying initialization 2021-07-22 21:51:24 -04:00
ameerj
0705eff8f6 shader: Implement VOTE 2021-07-22 21:51:24 -04:00
ReinUsesLisp
9d5262ad26 vk_pipeline_cache: Fix ReleaseContents order 2021-07-22 21:51:24 -04:00
ReinUsesLisp
75b20d74c2 vk_pipeline_cache: Add pipeline cache 2021-07-22 21:51:24 -04:00
ReinUsesLisp
fba49056aa vk_pipeline_cache: Add pipeline cache 2021-07-22 21:51:24 -04:00
ameerj
1a8e8498a4 shader: Implement DMNMX, DSET, DSETP 2021-07-22 21:51:24 -04:00
ReinUsesLisp
5cd8970e73 spirv: Implement VertexId and InstanceId, refactor code 2021-07-22 21:51:23 -04:00
ReinUsesLisp
6398d03341 shader: Implement I2F 2021-07-22 21:51:23 -04:00
ReinUsesLisp
33090a74dd shader: Add partial rasterizer integration 2021-07-22 21:51:23 -04:00
ameerj
809a7282a4 spirv: Add SignedZeroInfNanPreserve logic 2021-07-22 21:51:23 -04:00
ReinUsesLisp
a956d3cdb3 shader: Initial support for textures and TEX 2021-07-22 21:51:23 -04:00
ReinUsesLisp
16a5b4f494 spirv: Fixes and Intel specific workarounds 2021-07-22 21:51:22 -04:00
ReinUsesLisp
e755a13d06 shader: Rename, implement FADD.SAT and P2R (imm) 2021-07-22 21:51:22 -04:00
ReinUsesLisp
6350a277a3 shader: Add denorm flush support 2021-07-22 21:51:22 -04:00
ReinUsesLisp
a2fe90fa60 spirv: Add lower fp16 to fp32 pass 2021-07-22 21:51:22 -04:00
ReinUsesLisp
a5f87011d3 shader: Primitive Vulkan integration 2021-07-22 21:51:22 -04:00
ReinUsesLisp
65069df8aa shader: Remove old shader management 2021-07-22 21:51:22 -04:00
ReinUsesLisp
5ee600cf64 spirv: Initial SPIR-V support 2021-07-22 21:51:22 -04:00
bunnei
f7454fabb3 Merge pull request #6686 from ReinUsesLisp/vk-optimal-copy
vk_texture_cache: Use VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL when possible
2021-07-22 12:51:13 -04:00
bunnei
e72b0da651 Merge pull request #6629 from FernandoS27/accel-dma-2
DMAEngine: Accelerate BufferClear [accelerateDMA Part 2]
2021-07-20 17:35:05 -04:00
Fernando S
cabe8dba04 Merge pull request #6685 from ReinUsesLisp/radeonsi-client
gl_texture_cache: Workaround slow PBO downloads on radeonsi
2021-07-20 20:33:07 +02:00
ReinUsesLisp
e544a2a207 vk_texture_cache: Use VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL when possible
Silences performance warnings generated from validation layers on each frame.
2021-07-20 14:38:58 -03:00
ReinUsesLisp
0b1ad8e66c gl_texture_cache: Workaround slow PBO downloads on radeonsi
There's an optimization bug on non-git mesa versions where not
specifying GL_CLIENT_STORAGE_BIT causes very slow reads on the CPU
side.

Add this bit for all vendors.
2021-07-20 14:02:11 -03:00
Fernando S
805f1888da vk_buffer_cache: Fix quad index array with 0 vertices (#6627) 2021-07-20 05:05:28 -03:00
Rodrigo Locatti
4b477d0021 Merge pull request #6580 from ReinUsesLisp/xfb-radv
vk_buffer_cache: Use emulated null buffers for transform feedback
2021-07-19 23:01:19 -03:00
Fernando S
03acdb4356 Merge pull request #6679 from yzct12345/fix-lets-go
Fix Pokemon Let's Go on Vulkan
2021-07-19 03:29:54 +02:00
Fernando S
55d9c6ece2 Merge pull request #6670 from ReinUsesLisp/prepare-rt
texture_cache: Always prepare image views on render targets
2021-07-19 03:21:25 +02:00