aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Graphics.OpenGL/Renderer.cs
diff options
context:
space:
mode:
authorEmulationFanatic <62343878+EmulationFanatic@users.noreply.github.com>2021-05-19 11:39:19 -0700
committerGitHub <noreply@github.com>2021-05-19 11:39:19 -0700
commitb5c72b44dee2fd977d7cca5aa3c29ef1e2286aa7 (patch)
treeae064aca256cb6193f6908cc9698660043754008 /Ryujinx.Graphics.OpenGL/Renderer.cs
parent0129250c2e169c7386f7e2868cc055f8ec55c005 (diff)
parent778011c12ae7905173e02665f397a96686863b89 (diff)
Merge pull request #2177 from riperiperi/feature/parallel-shader-cache
Allow parallel shader compilation when loading a shader cache
Diffstat (limited to 'Ryujinx.Graphics.OpenGL/Renderer.cs')
-rw-r--r--Ryujinx.Graphics.OpenGL/Renderer.cs16
1 files changed, 6 insertions, 10 deletions
diff --git a/Ryujinx.Graphics.OpenGL/Renderer.cs b/Ryujinx.Graphics.OpenGL/Renderer.cs
index b909f792..7416cdd7 100644
--- a/Ryujinx.Graphics.OpenGL/Renderer.cs
+++ b/Ryujinx.Graphics.OpenGL/Renderer.cs
@@ -131,6 +131,11 @@ namespace Ryujinx.Graphics.OpenGL
PrintGpuInformation();
+ if (HwCapabilities.SupportsParallelShaderCompile)
+ {
+ GL.Arb.MaxShaderCompilerThreads(Math.Min(Environment.ProcessorCount, 8));
+ }
+
_counters.Initialize();
}
@@ -178,16 +183,7 @@ namespace Ryujinx.Graphics.OpenGL
public IProgram LoadProgramBinary(byte[] programBinary)
{
- Program program = new Program(programBinary);
-
- if (program.IsLinked)
- {
- return program;
- }
-
- program.Dispose();
-
- return null;
+ return new Program(programBinary);
}
public void CreateSync(ulong id)