summaryrefslogtreecommitdiff
path: root/src/core/core.cpp
diff options
context:
space:
mode:
authorGravatar bunnei2019-03-07 10:41:53 -0500
committerGravatar GitHub2019-03-07 10:41:53 -0500
commit4f352833a5b94e900ed7afb3b84eeda1bb5fab3d (patch)
tree48af4d722e551f55a117244f986c11e47e7b27e5 /src/core/core.cpp
parentMerge pull request #2149 from ReinUsesLisp/decoders-style (diff)
parentgpu_thread: Fix deadlock with threading idle state check. (diff)
downloadyuzu-4f352833a5b94e900ed7afb3b84eeda1bb5fab3d.tar.gz
yuzu-4f352833a5b94e900ed7afb3b84eeda1bb5fab3d.tar.xz
yuzu-4f352833a5b94e900ed7afb3b84eeda1bb5fab3d.zip
Merge pull request #2055 from bunnei/gpu-thread
Asynchronous GPU command processing
Diffstat (limited to 'src/core/core.cpp')
-rw-r--r--src/core/core.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp
index d741ef90d..eba2177d1 100644
--- a/src/core/core.cpp
+++ b/src/core/core.cpp
@@ -36,7 +36,8 @@
36#include "frontend/applets/software_keyboard.h" 36#include "frontend/applets/software_keyboard.h"
37#include "frontend/applets/web_browser.h" 37#include "frontend/applets/web_browser.h"
38#include "video_core/debug_utils/debug_utils.h" 38#include "video_core/debug_utils/debug_utils.h"
39#include "video_core/gpu.h" 39#include "video_core/gpu_asynch.h"
40#include "video_core/gpu_synch.h"
40#include "video_core/renderer_base.h" 41#include "video_core/renderer_base.h"
41#include "video_core/video_core.h" 42#include "video_core/video_core.h"
42 43
@@ -129,10 +130,16 @@ struct System::Impl {
129 return ResultStatus::ErrorVideoCore; 130 return ResultStatus::ErrorVideoCore;
130 } 131 }
131 132
132 gpu_core = std::make_unique<Tegra::GPU>(system, renderer->Rasterizer()); 133 is_powered_on = true;
134
135 if (Settings::values.use_asynchronous_gpu_emulation) {
136 gpu_core = std::make_unique<VideoCommon::GPUAsynch>(system, *renderer);
137 } else {
138 gpu_core = std::make_unique<VideoCommon::GPUSynch>(system, *renderer);
139 }
133 140
134 cpu_core_manager.Initialize(system); 141 cpu_core_manager.Initialize(system);
135 is_powered_on = true; 142
136 LOG_DEBUG(Core, "Initialized OK"); 143 LOG_DEBUG(Core, "Initialized OK");
137 144
138 // Reset counters and set time origin to current frame 145 // Reset counters and set time origin to current frame