Henrik Rydgård
74f5be02a1
GameInfo: Try to reduce the locking a bit.
2024-01-18 22:52:56 +01:00
Henrik Rydgård
ce2163eb93
Vulkan MSAA: Avoid creating backbuffer renderpasses with the wrong sample count, oops
2024-01-17 21:41:04 +01:00
Henrik Rydgård
cbb4236cd8
Vulkan: Attempt to fix some more shutdown race conditions, simplify.
2024-01-17 14:49:49 +01:00
Henrik Rydgård
2b6bb46a98
Vulkan: Minor descriptor write optimization, add some debug asserts
2024-01-17 11:08:16 +01:00
Henrik Rydgård
7b738edfc9
Try to eliminate another shutdown deadlock (drain shader compile queue)
...
See #18705
2024-01-15 23:36:47 +01:00
Henrik Rydgård
c1a7235767
Fix another shutdown race condition in the Vulkan backend
2024-01-15 17:06:00 +01:00
Henrik Rydgård
d0faf250b5
Remove unused async compute pipeline creation
2024-01-15 12:38:59 +01:00
Henrik Rydgård
56c797e7f6
Fix possible hangs in ManagedTexture destruction. Change a thread name.
2024-01-15 10:47:16 +01:00
Henrik Rydgård
52d05aaa27
GPU profiling: Count how many descriptors we manage to deduplicate.
2024-01-12 11:31:06 +01:00
Henrik Rydgård
b4fe03de8b
Better solution, still pretty much optimal.
2024-01-10 18:14:59 +01:00
Henrik Rydgård
6de05f13f1
More barrier batching
2023-12-30 10:41:59 +01:00
Henrik Rydgård
484fbeb4cb
Add end-of-init barrier
2023-12-30 10:41:59 +01:00
Henrik Rydgård
28189dc738
Vulkan render queue runner: Count commands in debug builds, like the GL backend.
2023-12-20 15:26:41 +01:00
Henrik Rydgård
ac93419331
Merge the 1.16.6 branch into master
...
Also deletes some unused code.
2023-10-13 11:00:11 +02:00
Henrik Rydgård
6357b95ff5
Better version.
2023-10-12 23:33:54 +02:00
Henrik Rydgård
f301035ba0
Step 1
2023-10-12 23:28:44 +02:00
Henrik Rydgård
a507563708
Remove the exit-game sync again.
...
It's not actually needed until some of the additions made on master, and
in that case, I'm going to change the solution again.
2023-10-12 10:14:19 +02:00
Henrik Rydgård
2c751d39f8
Vulkan: Add simple delete count to GPU profiler, to make sure we don't have more resource churn
...
Also fix the render pass type name lookup table.
2023-10-12 09:02:45 +02:00
Henrik Rydgård
d60c9a015f
Vulkan: Fix synchronization when shutting the GPU down in-game.
2023-10-11 12:49:33 +02:00
Henrik Rydgård
f769b2c8a3
Remove unused functionality from descpool
2023-10-11 12:29:57 +02:00
Henrik Rydgård
0ad2827e14
Vulkan: Fix synchronization when shutting the GPU down in-game.
2023-10-11 12:27:39 +02:00
Henrik Rydgård
183d49329a
Allow writing directly into the packed descriptor buffer, saving a memcpy.
2023-10-11 11:02:17 +02:00
Henrik Rydgård
8ebc08185b
Allocate descriptors in blocks of 8 instead of individually, to reduce overhead.
2023-10-10 10:17:56 +02:00
Henrik Rydgård
3d949b080d
Prepare VulkanDescSetPool for block allocation
2023-10-10 09:14:10 +02:00
Henrik Rydgård
9fdc7e2372
Address feedback
2023-10-10 09:02:35 +02:00
Henrik Rydgård
b38b46df0f
Update comments
2023-10-10 09:02:35 +02:00
Henrik Rydgård
2b0192d818
Have FrameData structs for each pipeline layout, instead of multiple arrays
2023-10-10 09:02:35 +02:00
Henrik Rydgård
8a4d84d82b
Simplest possible de-duplication of descriptor set writes
2023-10-10 09:02:35 +02:00
Henrik Rydgård
018e4ee1d6
Show the desc set write time even in the limited GPU profiler.
2023-10-10 09:02:34 +02:00
Henrik Rydgård
f0ee3b8daa
Fill in descriptors on the render thread in the PPSSPP UI.
2023-10-10 09:00:29 +02:00
Henrik Rydgård
316bc03ac9
Move the destroy function for VKRPipelineLayout to VulkanRenderManager
2023-10-09 11:54:13 +02:00
Henrik Rydgård
88a50575c7
Wrap pipeline layout creation, use in thin3d
...
Two more types
2023-10-08 12:39:18 +02:00
Henrik Rydgård
dbe395dd00
Add a wrapper around VKRPipelineLayout / descsetlayout
2023-10-08 12:39:18 +02:00
Henrik Rydgård
42fcd399f4
Restore the ReadyForFence flag. Some paranoia probably
2023-09-26 02:00:22 +02:00
Henrik Rydgård
2e171b22ec
Vulkan: Remove an assert that didn't give much actionable information. Replace with reporting.
2023-09-20 22:50:38 +02:00
Henrik Rydgård
3783afd855
Fix a really bad race condition during game shutdown.
2023-09-20 18:47:32 +02:00
Henrik Rydgård
b8353c6273
Add a commented-out torture test for a shader race condition
2023-09-20 18:47:32 +02:00
Henrik Rydgård
0bfd166200
Try to prevent a weird shutdown race condition that I'm not sure can happen - but crash logs show it
2023-09-18 16:45:07 +02:00
German Semenov
c27481d637
GPU, VFS, UI: Fixed minor memleaks
2023-09-15 12:23:54 +03:00
Henrik Rydgård
64852409df
Don't use the present time extensions (but keep the code around for future experiments)
...
Seen some suspicious crashes on Poco F1.
2023-08-30 10:47:20 +02:00
Henrik Rydgård
572595cc7b
Refactor: Lift the frame time history data up one level into thin3d
2023-08-16 11:45:26 +02:00
Henrik Rydgård
e06e919624
VulkanRenderManager: Split finish and present (so we can inject a wait in between if desired).
2023-08-10 09:50:01 +02:00
Henrik Rydgård
86db91979f
Turn off present-wait for now. Too many issues.
2023-08-08 15:07:44 +02:00
Henrik Rydgård
652cc6cd65
Race condition fix
2023-08-08 14:00:58 +02:00
Henrik Rydgård
8fec4fb02f
wip
2023-08-08 13:26:27 +02:00
Henrik Rydgård
a6b5340d97
Don't crash if VK_KHR_present_id / VK_KHR_present_wait are not exposed (but feature still reported available)
...
Fixes the new crash in #17858
2023-08-07 11:36:49 +02:00
Henrik Rydgård
0530dc57a8
Implement frame time measurement on Android using VK_GOOGLE_display_timing
2023-08-03 12:59:25 +02:00
Henrik Rydgård
9b038d6574
Vulkan: Show enabled extensions separately in sysinfo
2023-08-03 11:11:35 +02:00
Henrik Rydgård
e16cac6548
Initial work on supporting VK_GOOGLE_display_timing. Not working yet.
2023-08-03 11:11:16 +02:00
Henrik Rydgård
14377259b5
Use VK_KHR_present_wait to get numbers on how much latency we have to screen
...
This extension is not available on Android, there they have
VK_GOOGLE_display_timing, which they also have an abstraction library
for, so will look at that later.
Early part of work on #17685
2023-08-02 20:34:22 +02:00