Henrik Rydgård
d618b3673b
Count readbacks in a frame and show in GPU debug stats.
2017-11-08 11:57:53 +01:00
Henrik Rydgård
4970668b99
Try harder to free up memory from the Android native font rendering system. Might help #10069
2017-11-07 12:31:03 +01:00
Henrik Rydgård
7922a2ab5c
Vulkan: If acquiring a frame fails (happens sometimes during window resize), skip swapping the frame. Should help #10063
2017-11-07 09:56:41 +01:00
Henrik Rydgård
4cee442b0f
Merge pull request #10068 from unknownbrackets/vulkan-minor
...
Vulkan: Fix deadlock on resize
2017-11-07 09:01:29 +01:00
Unknown W. Brackets
6c1f6618b6
Vulkan: Wait for orderly thread stop on resize.
...
To be safer, let's just let it finish. We don't actually sync the thread
in join(), so it could still be running a frame.
2017-11-06 23:03:14 -08:00
Unknown W. Brackets
1ab9f102ab
Vulkan: Fix deadlock on resize.
...
Still needed to set this flag. Didn't notice earlier because creating the
fences affected the race condition timing, I think...
Improves #10063 .
2017-11-06 22:30:14 -08:00
Henrik Rydgård
70c70b1e76
Vulkan: Some error handling improvement. Might get us a clue for #10065
2017-11-07 00:08:39 +01:00
Henrik Rydgård
4f4eb6f024
Vulkan: The validation layers don't like zero-size blits.
2017-11-06 23:49:27 +01:00
Henrik Rydgård
944cc94630
Vulkan: Better way to make sure we bind the backbuffer at some point.
2017-11-06 23:48:47 +01:00
Henrik Rydgård
ea2fc55217
Merge pull request #10056 from hrydgard/remove-multithreading-2
...
Remove the old style multithreading
2017-11-06 20:37:06 +01:00
Henrik Rydgård
b280e30a27
Merge pull request #10060 from unknownbrackets/debugger
...
Show texture, depth, and stencil preview in Vulkan
2017-11-06 09:39:19 +01:00
Unknown W. Brackets
3a84b63777
Vulkan: Convert depth format on readback.
...
Although, the GPU debugger stuff already handles more formats, it's hard
to get the current format to avoid the conversion...
2017-11-06 00:29:02 -08:00
Unknown W. Brackets
fc32a7b24e
Vulkan: Show textures in GE debugger.
2017-11-06 00:29:01 -08:00
Unknown W. Brackets
138837ac54
Vulkan: Add texture image readback.
...
This way we can see how it was decoded, scaled, etc. This also helps
seeing texture cache invalidation issues.
2017-11-06 00:29:01 -08:00
Henrik Rydgård
392adde1a0
Merge pull request #10061 from unknownbrackets/vulkan-minor
...
Fix softgpu in Vulkan
2017-11-06 09:01:07 +01:00
Unknown W. Brackets
4a08410d7d
Vulkan: Fix non-16 bit indexed drawing.
...
Only really affects softgpu, since games are rewritten to 16 bit.
2017-11-05 22:15:27 -08:00
Unknown W. Brackets
9dfc9ff6ae
Vulkan: Allow clearing the backbuffer to any color.
...
Helps with debugging sometimes.
2017-11-05 22:14:53 -08:00
Unknown W. Brackets
cd6249d080
D3D11: Show FBO-as-texture in GE debugger.
2017-11-05 18:41:24 -08:00
Unknown W. Brackets
1f33907f20
TexCache: Warning fix.
2017-11-05 17:59:34 -08:00
Unknown W. Brackets
de459e6a1d
Merge pull request #10058 from bentley/master
...
Use W^X on OpenBSD.
2017-11-05 19:21:00 -05:00
Anthony J. Bentley
9fc355eee4
Use W^X on OpenBSD.
2017-11-05 17:06:09 -07:00
Henrik Rydgård
a827ad23ae
Don't use "threadsafe events" for Ge stuff.
2017-11-06 00:27:51 +01:00
Henrik Rydgård
0b68130968
Merge pull request #10057 from unknownbrackets/vulkan-minor
...
Fix framebuffer leak in Vulkan
2017-11-05 23:38:35 +01:00
Unknown W. Brackets
b2039bd14f
Vulkan: Fix leak in WipeQueue().
2017-11-05 14:22:09 -08:00
Henrik Rydgård
f16d11a43b
Turn on multithreaded vulkan
2017-11-05 23:21:54 +01:00
Henrik Rydgård
9e35144b96
Remove/deprecate GPU tick sync
2017-11-05 23:21:53 +01:00
Henrik Rydgård
8c69be9bfa
Get rid of GPUCommon's "Internal" functions.
2017-11-05 23:21:52 +01:00
Henrik Rydgård
bb68906d88
Delete ProcessEvent and the GPUEvent enum
2017-11-05 23:21:51 +01:00
Henrik Rydgård
6680e787de
Delete GPUCommon::ScheduleEvent
2017-11-05 23:21:50 +01:00
Henrik Rydgård
26e52ca5e8
Get rid of a bunch of sync stuff that's no longer needed.
2017-11-05 23:21:49 +01:00
Henrik Rydgård
5e63f0700e
Get rid of the sync around curTickEst
2017-11-05 23:21:48 +01:00
Henrik Rydgård
4d9c571bf4
Delete the mutex in GPUCommon.
2017-11-05 23:21:47 +01:00
Unknown W. Brackets
63e78ef3e8
Vulkan: Fix framebuffer leak.
...
Evident in God of War.
2017-11-05 14:21:41 -08:00
Henrik Rydgård
be2ba4ffb3
Remove the setting to run the display list interpreter on a separate thread.
2017-11-05 23:21:26 +01:00
Henrik Rydgård
3c591ad9ca
Merge pull request #10052 from unknownbrackets/savestate-oom
...
Avoid Android OOM crashes on save state
2017-11-05 22:50:19 +01:00
Henrik Rydgård
79208f105c
Merge pull request #10055 from unknownbrackets/vulkan-minor
...
Vulkan: Correct logicop dirtying
2017-11-05 22:41:11 +01:00
Unknown W. Brackets
ef55cf1e74
Vulkan: Correct logicop dirtying.
...
Needs to be under blend state.
2017-11-05 13:26:18 -08:00
Henrik Rydgård
efdd7b3729
Merge pull request #10054 from unknownbrackets/birdbrawl
...
TexCache: Detect textures in FBO gutters
2017-11-05 22:20:19 +01:00
Henrik Rydgård
702e354a6a
Vulkan multithread: Fix race condition.
2017-11-05 22:18:28 +01:00
Unknown W. Brackets
7ae451db1f
TexCache: Detect textures in FBO gutters.
...
If it's not even within the framebuffer's bufferWidth, we can just go to
the RAM as normal and skip the FBO.
Fixes #10045 .
2017-11-05 13:03:09 -08:00
Unknown W. Brackets
78b5565035
GPU: Properly Release() FBOs.
...
In case we end up wanting to use those reference counts, let's use the
right API.
2017-11-05 12:45:02 -08:00
Henrik Rydgård
2f305f9841
Merge pull request #10049 from unknownbrackets/vulkan-minor
...
Vulkan threading tweaks and minor
2017-11-05 19:39:43 +01:00
Unknown W. Brackets
349b36f000
SaveState: Correct free on error and uncomp format.
...
The uncompressed path had diverged, so refactor to avoid this in the
future. Also, some errors weren't freeing all buffers.
2017-11-05 10:19:09 -08:00
Unknown W. Brackets
66ddf592b4
SaveState: Use malloc to avoid Android OOM crash.
...
We have exceptions disabled on Android, which is exactly where we need the
OOM check most.
2017-11-05 10:04:22 -08:00
Unknown W. Brackets
ead4c5f9a8
Vulkan: Make sure backbuffer is bound for UI.
...
Fixes #10048 .
2017-11-05 09:22:14 -08:00
Unknown W. Brackets
56d34402ff
Vulkan: Resignal unexecuted fences on thread stop.
...
When resizing or similar, we may end up with frames we never ran. This
also happens on startup.
We need them signaled at start so we can wait on them, or we may deadlock.
2017-11-05 09:22:14 -08:00
Unknown W. Brackets
ebe9dcafde
Vulkan: Wait for queue idle in DestroyBackbuffers.
...
Otherwise it's only done after destroying Draw, so no need to mutex.
2017-11-05 08:44:14 -08:00
Unknown W. Brackets
efbba31608
GPU: Restore initial readback on output.
...
Needed when the last rendered FB needs to be downloaded.
2017-11-05 08:44:13 -08:00
Unknown W. Brackets
2ad9eb047e
Vulkan: Refcount framebuffer deletes.
...
Fixes crash in GoW when using a thread.
2017-11-05 08:44:12 -08:00
Henrik Rydgård
d30520a43c
Merge pull request #10050 from Orphis/gradle-google-maven
...
Add missing Google Maven repository
2017-11-05 16:38:35 +01:00