aboutsummaryrefslogtreecommitdiffhomepage
path: root/video/out/vulkan/context.c
diff options
context:
space:
mode:
authorGravatar Niklas Haas <git@haasn.xyz>2017-10-07 21:36:16 +0200
committerGravatar Martin Herkt <652892+lachs0r@users.noreply.github.com>2017-12-25 00:47:53 +0100
commit286d421666fd812dc4d01e580204cf63b49fec45 (patch)
treeb5fb0257aca4f56a62c0e9ae4211a95c01163214 /video/out/vulkan/context.c
parenta6aab5dfd6d94be4e2a07c2bf6044f621b28e631 (diff)
vo_gpu: vulkan: allow disabling async tf/comp
Async compute in particular seems to cause problems on some drivers, and even when supprted the benefits are not that massive from the tests I have seen, so it's probably safe to keep off by default. Async transfer on the other hand seems to work better and offers a more substantial improvement, so it's kept on.
Diffstat (limited to 'video/out/vulkan/context.c')
-rw-r--r--video/out/vulkan/context.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/video/out/vulkan/context.c b/video/out/vulkan/context.c
index 56bf496bb2..21ad5c30c7 100644
--- a/video/out/vulkan/context.c
+++ b/video/out/vulkan/context.c
@@ -104,9 +104,16 @@ const struct m_sub_options vulkan_conf = {
{"immediate", SWAP_IMMEDIATE})),
OPT_INTRANGE("vulkan-queue-count", dev_opts.queue_count, 0, 1, 8,
OPTDEF_INT(1)),
+ OPT_FLAG("vulkan-async-transfer", dev_opts.async_transfer, 0),
+ OPT_FLAG("vulkan-async-compute", dev_opts.async_compute, 0),
{0}
},
- .size = sizeof(struct vulkan_opts)
+ .size = sizeof(struct vulkan_opts),
+ .defaults = &(struct vulkan_opts) {
+ .dev_opts = {
+ .async_transfer = 1,
+ },
+ },
};
struct priv {