|
@@ -222,7 +222,9 @@ void RasterizerOpenGL::PrepareDraw(bool is_indexed, Func&& draw_func) {
|
|
|
gpu.TickWork();
|
|
gpu.TickWork();
|
|
|
|
|
|
|
|
std::scoped_lock lock{buffer_cache.mutex, texture_cache.mutex};
|
|
std::scoped_lock lock{buffer_cache.mutex, texture_cache.mutex};
|
|
|
- program_manager.LocalMemoryWarmup();
|
|
|
|
|
|
|
+ if (pipeline->UsesLocalMemory()) {
|
|
|
|
|
+ program_manager.LocalMemoryWarmup();
|
|
|
|
|
+ }
|
|
|
pipeline->SetEngine(maxwell3d, gpu_memory);
|
|
pipeline->SetEngine(maxwell3d, gpu_memory);
|
|
|
pipeline->Configure(is_indexed);
|
|
pipeline->Configure(is_indexed);
|
|
|
|
|
|
|
@@ -372,7 +374,9 @@ void RasterizerOpenGL::DispatchCompute() {
|
|
|
if (!pipeline) {
|
|
if (!pipeline) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
- program_manager.LocalMemoryWarmup();
|
|
|
|
|
|
|
+ if (pipeline->UsesLocalMemory()) {
|
|
|
|
|
+ program_manager.LocalMemoryWarmup();
|
|
|
|
|
+ }
|
|
|
pipeline->SetEngine(kepler_compute, gpu_memory);
|
|
pipeline->SetEngine(kepler_compute, gpu_memory);
|
|
|
pipeline->Configure();
|
|
pipeline->Configure();
|
|
|
const auto& qmd{kepler_compute->launch_description};
|
|
const auto& qmd{kepler_compute->launch_description};
|