1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-03-02 04:29:14 +01:00

[dxvk] Add option to enable or disable the transfer queue

This commit is contained in:
Philip Rebohle 2019-06-28 04:24:26 +02:00
parent 191bba660b
commit d2d11bf995
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
4 changed files with 17 additions and 1 deletions

View File

@ -150,6 +150,17 @@
# d3d11.zeroWorkgroupMemory = False # d3d11.zeroWorkgroupMemory = False
# Enables the dedicated transfer queue if available
#
# If enabled, resource uploads will be performed on the
# transfer queue rather than the graphics queue. This
# may improve texture streaming performance.
#
# Supported values: True, False
# dxvk.enableTransferQueue = True
# Sets number of pipeline compiler threads. # Sets number of pipeline compiler threads.
# #
# Supported values: # Supported values:

View File

@ -98,7 +98,8 @@ namespace dxvk {
VK_QUEUE_GRAPHICS_BIT | VK_QUEUE_COMPUTE_BIT | VK_QUEUE_TRANSFER_BIT, VK_QUEUE_GRAPHICS_BIT | VK_QUEUE_COMPUTE_BIT | VK_QUEUE_TRANSFER_BIT,
VK_QUEUE_TRANSFER_BIT); VK_QUEUE_TRANSFER_BIT);
if (transferQueue == VK_QUEUE_FAMILY_IGNORED) if (transferQueue == VK_QUEUE_FAMILY_IGNORED
|| !m_instance->options().enableTransferQueue)
transferQueue = graphicsQueue; transferQueue = graphicsQueue;
DxvkAdapterQueueIndices queues; DxvkAdapterQueueIndices queues;

View File

@ -4,6 +4,7 @@ namespace dxvk {
DxvkOptions::DxvkOptions(const Config& config) { DxvkOptions::DxvkOptions(const Config& config) {
enableStateCache = config.getOption<bool> ("dxvk.enableStateCache", true); enableStateCache = config.getOption<bool> ("dxvk.enableStateCache", true);
enableTransferQueue = config.getOption<bool> ("dxvk.enableTransferQueue", true);
numCompilerThreads = config.getOption<int32_t> ("dxvk.numCompilerThreads", 0); numCompilerThreads = config.getOption<int32_t> ("dxvk.numCompilerThreads", 0);
useRawSsbo = config.getOption<Tristate>("dxvk.useRawSsbo", Tristate::Auto); useRawSsbo = config.getOption<Tristate>("dxvk.useRawSsbo", Tristate::Auto);
useEarlyDiscard = config.getOption<Tristate>("dxvk.useEarlyDiscard", Tristate::Auto); useEarlyDiscard = config.getOption<Tristate>("dxvk.useEarlyDiscard", Tristate::Auto);

View File

@ -11,6 +11,9 @@ namespace dxvk {
/// Enable state cache /// Enable state cache
bool enableStateCache; bool enableStateCache;
/// Use transfer queue if available
bool enableTransferQueue;
/// Number of compiler threads /// Number of compiler threads
/// when using the state cache /// when using the state cache
int32_t numCompilerThreads; int32_t numCompilerThreads;