Add max SPURS threads to settings

This commit is contained in:
msuih 2019-05-17 13:00:02 +03:00 committed by Ivan
parent e3f68c66d8
commit 164a7636bf
4 changed files with 27 additions and 1 deletions

View file

@ -65,7 +65,8 @@
"disableVulkanMemAllocator": "Disables the custom Vulkan memory allocator and reverts to direct calls to VkAllocateMemory/VkFreeMemory.",
"disableFIFOReordering": "Disables RSX FIFO optimizations completely. Draws are processed as they are received by the DMA puller.",
"gpuTextureScaling": "Force all texture transfer, scaling and conversion operations on the GPU.\nMay cause texture corruption in some cases.",
"strictTextureFlushing": "Forces texture flushing even in situations where it is not necessary/correct. Known to cause visual artifacts, but useful for debugging certain texture cache issues."
"strictTextureFlushing": "Forces texture flushing even in situations where it is not necessary/correct. Known to cause visual artifacts, but useful for debugging certain texture cache issues.",
"maxSPURSThreads": "Limits the maximum number of SPURS threads in each thread group.\nMay improve performance in some cases, especially on systems with limited number of hardware threads.\nLimiting the number of threads is likely to cause crashes; it's recommended to keep this at default value."
},
"emulator": {
"misc": {

View file

@ -47,6 +47,7 @@ public:
SPUCache,
SPUVerification,
DebugConsoleMode,
MaxSPURSThreads,
// Graphics
Renderer,
@ -256,6 +257,7 @@ private:
{ SPUCache, { "Core", "SPU Cache"}},
{ SPUVerification, { "Core", "SPU Verification"}},
{ DebugConsoleMode, { "Core", "Debug Console Mode"}},
{ MaxSPURSThreads, { "Core", "Max SPURS Threads"}},
// Graphics Tab
{ Renderer, { "Video", "Renderer"}},

View file

@ -1364,6 +1364,11 @@ settings_dialog::settings_dialog(std::shared_ptr<gui_settings> guiSettings, std:
xemu_settings->EnhanceCheckBox(ui->debugConsoleMode, emu_settings::DebugConsoleMode);
SubscribeTooltip(ui->debugConsoleMode, json_debug["debugConsoleMode"].toString());
// Comboboxes
xemu_settings->EnhanceComboBox(ui->maxSPURSThreads, emu_settings::MaxSPURSThreads, true);
ui->maxSPURSThreads->setItemText(ui->maxSPURSThreads->findData("6"), tr("Unlimited (Default)"));
SubscribeTooltip(ui->maxSPURSThreads, json_debug["maxSPURSThreads"].toString());
// Layout fix for High Dpi
layout()->setSizeConstraint(QLayout::SetFixedSize);
}

View file

@ -2336,6 +2336,24 @@
</property>
</spacer>
</item>
<item>
<widget class="QGroupBox" name="gb_max_spurs_threads">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="title">
<string>Maximum Number of SPURS Threads</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout_76">
<item>
<widget class="QComboBox" name="maxSPURSThreads"/>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>