diff options
| author | Fernando Sahmkow <fsahmkow27@gmail.com> | 2020-06-30 14:36:51 -0400 | 
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-30 14:36:51 -0400 | 
| commit | 977a3ab3521d59c6a9642285d840ff3360887d13 (patch) | |
| tree | 7bc86fcc19f0d8c6c1d2352f06cf924f9c81464e /src/video_core | |
| parent | d217017c9e4e39aa154da7b23aa633754c4c1b83 (diff) | |
| parent | bc8d3b8f82c06e5d0b5a7c1640ef00b83e826dbf (diff) | |
Merge pull request #4157 from ReinUsesLisp/unified-turing
gl_device: Enable NV_vertex_buffer_unified_memory on Turing devices
Diffstat (limited to 'src/video_core')
| -rw-r--r-- | src/video_core/renderer_opengl/gl_device.cpp | 20 | 
1 files changed, 1 insertions, 19 deletions
| diff --git a/src/video_core/renderer_opengl/gl_device.cpp b/src/video_core/renderer_opengl/gl_device.cpp index b6b6659c1..208fc6167 100644 --- a/src/video_core/renderer_opengl/gl_device.cpp +++ b/src/video_core/renderer_opengl/gl_device.cpp @@ -188,20 +188,6 @@ bool IsASTCSupported() {      return true;  } -/// @brief Returns true when a GL_RENDERER is a Turing GPU -/// @param renderer GL_RENDERER string -bool IsTuring(std::string_view renderer) { -    static constexpr std::array<std::string_view, 12> TURING_GPUS = { -        "GTX 1650",        "GTX 1660",        "RTX 2060",        "RTX 2070", -        "RTX 2080",        "TITAN RTX",       "Quadro RTX 3000", "Quadro RTX 4000", -        "Quadro RTX 5000", "Quadro RTX 6000", "Quadro RTX 8000", "Tesla T4", -    }; -    return std::any_of(TURING_GPUS.begin(), TURING_GPUS.end(), -                       [renderer](std::string_view candidate) { -                           return renderer.find(candidate) != std::string_view::npos; -                       }); -} -  } // Anonymous namespace  Device::Device() @@ -213,7 +199,6 @@ Device::Device()      const bool is_nvidia = vendor == "NVIDIA Corporation";      const bool is_amd = vendor == "ATI Technologies Inc."; -    const bool is_turing = is_nvidia && IsTuring(renderer);      bool disable_fast_buffer_sub_data = false;      if (is_nvidia && version == "4.6.0 NVIDIA 443.24") { @@ -238,15 +223,12 @@ Device::Device()      has_component_indexing_bug = is_amd;      has_precise_bug = TestPreciseBug();      has_nv_viewport_array2 = GLAD_GL_NV_viewport_array2; +    has_vertex_buffer_unified_memory = GLAD_GL_NV_vertex_buffer_unified_memory;      // At the moment of writing this, only Nvidia's driver optimizes BufferSubData on exclusive      // uniform buffers as "push constants"      has_fast_buffer_sub_data = is_nvidia && !disable_fast_buffer_sub_data; -    // Nvidia's driver on Turing GPUs randomly crashes when the buffer is made resident, or on -    // DeleteBuffers. Disable unified memory on these devices. -    has_vertex_buffer_unified_memory = GLAD_GL_NV_vertex_buffer_unified_memory && !is_turing; -      use_assembly_shaders = Settings::values.use_assembly_shaders && GLAD_GL_NV_gpu_program5 &&                             GLAD_GL_NV_compute_program5 && GLAD_GL_NV_transform_feedback &&                             GLAD_GL_NV_transform_feedback2; | 
