Henrik Rydgård
3802d4ee16
Try to resolve another race condition. Improve an assert.
2024-02-03 10:54:16 +01:00
Henrik Rydgård
622aeaab6d
Hopefully robustify some logic in EmuScreen enough
2024-01-24 00:06:01 +01:00
Henrik Rydgård
6a8f65b566
Some assert paranoia, remove unused "failed_" variable
2023-09-23 10:09:32 +02:00
Unknown W. Brackets
88ba003f46
ThreadManager: Add a simple priority field.
...
Currently, not actually respected.
2023-02-02 17:08:24 -08:00
Henrik Rydgård
7672556e5c
Better pipeline descriptions in shader viewer (shorter in overview, longer after click)
2023-01-09 11:22:35 +01:00
Henrik Rydgård
25547b5fe2
Make Mailbox handle null values. Fixes hang.
2022-11-08 00:21:08 +01:00
Henrik Rydgård
3393d47e92
Remove ill-formed asserts
2022-09-23 23:14:36 +02:00
Henrik Rydgård
e828df9f25
Split each renderpass/framebuffer into multiple "compatibility classes" (RenderPassType).
2022-09-08 00:32:03 +02:00
Henrik Rydgård
76bd2395bf
Promise: Add SpawnEmpty (couldn't come up with a better name), fix bug with multiple waiters
2022-09-03 15:21:08 +02:00
Henrik Rydgård
c06cf8efaa
Switch Vulkan pipelines to use promises for synchronization
...
Slightly more expensive I guess but shouldn't be much of a bottleneck.
2022-09-03 15:21:08 +02:00
Henrik Rydgård
210233ede0
Buildfix
2022-09-03 15:21:07 +02:00
Henrik Rydgård
e701037267
Buildfix
2022-09-03 15:21:07 +02:00
Henrik Rydgård
8775837c11
Work towards finding the leak
2022-09-03 15:21:07 +02:00
Henrik Rydgård
ec0586ba50
Use promises to hold shader modules, for later asyncification
2022-09-03 15:21:07 +02:00
Unknown W. Brackets
2479d52202
Global: Reduce includes of common headers.
...
In many places, string, map, or Common.h were included but not needed.
2022-01-30 16:35:33 -08:00
Unknown W. Brackets
8b5173350f
ThreadManager: Make TaskType a property of a Task.
2021-12-05 21:01:49 -08:00
Henrik Rydgård
4f85b8b2ef
Threading: Remove a level of indirection from Promise and Mailbox.
...
Makes using small copyable or POD objects in these more efficient, and if you want
to you can just put a pointer or smart pointer in there, which will
effectively do the same thing as the old setup.
2021-11-20 22:40:10 +01:00
Henrik Rydgård
6d634f0c96
Mailbox: Address feedback
2021-06-13 11:27:12 +02:00
Henrik Rydgård
0fa27ff9d7
Autodetect number of threads (remove setting). Fix some bugs.
2021-06-12 21:06:59 +02:00
Henrik Rydgård
0f6a90098b
Remove experimental unused stuff.
2021-06-12 13:03:53 +02:00
Henrik Rydgård
446c2c027e
Get rid of the PrioritizedWorkQueue. Instead just queue tasks on the ThreadManager.
2021-06-12 13:03:53 +02:00
Henrik Rydgård
73871b9b7e
Implement new thread manager, port stuff to it.
2021-06-12 13:03:53 +02:00