gpt4 book ai didi

opengl - NVIDIA Optimus 卡无法在 OpenGL 下切换

转载 作者:行者123 更新时间:2023-12-01 07:26:59 26 4
gpt4 key购买 nike

当我使用“glGetString(GL_VERSION)”和“glGetString(GL_SHADING_LANGUAGE_VERSION)”来检查我电脑上的OpenGL版本时,我得到了以下信息:

3.1.0 - 为 GL_VERSION 构建 8.15.10.2538

1.40 - GL_SHADING_LANGUAGE_VERSION 的英特尔 Build 8.15.10.2538

当我运行“Geeks3D GPU Caps Viewer”时,它显示我的显卡(NVS 4200M)的OpenGL版本是

GL_VERSION:4.3.0

GLSL 版本:4.30 NVIDIA 通过 Cg 编译器

这是否意味着我的显卡仅支持部分 OpenGL 4.3.0 功能,而无法创建 4.3 上下文?

最佳答案

您的显卡是 NVIDIA Optimus卡片。这意味着它“自动”在集成的英特尔显卡和专用 GPU 之间进行选择。 Intel 显卡最高支持 3.1,而专用 GPU 支持 4.3。根据选择的哪个版本,您最多只能获得该版本的支持。 Optimus 的唯一问题是它只能自动选择 DirectX、CUDA、C++ AMP 和 OpenCL。

这引起了很多confusion and frustration .

有几种解决方案可以强制使用专用 GPU:

  • 最简单的方法是通过 NVIDIA 控制面板强制您的应用程序使用专用 GPU。这通常是一个权宜之计,因为它只适用于您的机器。
  • 在程序开始时调用一小部分(或链接到)CUDA 或 OpenCL,以使其触发切换到专用卡。但是,这会增加对 CUDA 或 OpenCL 的依赖。
  • 导出全局变量_declspec(dllexport) DWORD NvOptimusEnablement = 0x00000001; .这通常是最好的解决方案,但是,根据您使用的语言,您可能无法导出全局变量。

  • NVIDIA 发布了一份关于这样做的文件: http://developer.download.nvidia.com/devzone/devcenter/gamegraphics/files/OptimusRenderingPolicies.pdf

    关于opengl - NVIDIA Optimus 卡无法在 OpenGL 下切换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18071669/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com