如何使Nvidia成为默认显卡?

Posted

技术标签:

【中文标题】如何使Nvidia成为默认显卡?【英文标题】:How to make make Nvidia as the default graphics card? 【发布时间】:2020-06-27 12:05:20 【问题描述】:

2020 年 3 月 27 日:问题归结为如何在 Nvidia 显卡中运行应用程序。如果启用英特尔显卡,根据 GPU-Z 软件,Nvidia 和英特尔 GPU 的 OpenGL 版本都是 4.6。但是,如果禁用 Intel,使用 Nvidia 运行应用程序,应用程序会崩溃; GPU-Z 显示 OpenGL 版本 1.1。那么,如何使用 Nvidia 显卡运行应用程序?

注意事项: 1. 我尝试在图形设置中添加应用程序以使用高性能 GPU,但该应用程序使用的是 Intel GPU。 2.另外,尝试在Nvidia控制面板中添加应用程序,但没有成功。

2020 年 3 月 16 日:我在 Windows 10 的 NanoGUI 中执行 example1 代码。当我使用 HDMI 电缆(连接到主板)连接我的显示器时,该程序正在运行,但使用 DP 电缆(连接到英伟达显卡)。我的系统中有 Intel UHD Graphics 630 和 NVIDIA GeForce GT 730。 NVIDIA的驱动版本是26.21.14.4250。

我在调试模式下运行了一个简单的 OpenGL 代码,程序在 glfwInit() 函数处崩溃。 错误在

libEGL!eglDestroyImageKHR

这是一个与 DP 端口崩溃并与 HDMI 端口一起工作的示例代码。

// #include <glad/glad.h>
#include <GLFW/glfw3.h>

#include <iostream>

void framebuffer_size_callback(GLFWwindow* window, int width, int height);
void processInput(GLFWwindow *window);

// settings
const unsigned int SCR_WIDTH = 800;
const unsigned int SCR_HEIGHT = 600;

int main()

    // glfw: initialize and configure
    // ------------------------------
    glfwInit();

    // glfw window creation
    // --------------------
    GLFWwindow* window = glfwCreateWindow(SCR_WIDTH, SCR_HEIGHT, "LearnOpenGL", NULL, NULL);
    if (window == NULL)
    
        std::cout << "Failed to create GLFW window" << std::endl;
        glfwTerminate();
        return -1;
    
    glfwMakeContextCurrent(window);

    // render loop
    // -----------
    while (!glfwWindowShouldClose(window))
    

        // glfw: swap buffers and poll IO events (keys pressed/released, mouse moved etc.)
        // -------------------------------------------------------------------------------
        glfwSwapBuffers(window);
        glfwPollEvents();
    

    // glfw: terminate, clearing all previously allocated GLFW resources.
    // ------------------------------------------------------------------
    glfwTerminate();
    return 0;

【问题讨论】:

如果您有一段简单的崩溃代码,那么编辑您的问题以将该代码包含为您的minimal reproducible example 是有意义的。 您的驱动程序是最新的吗?在 nvidia 主页上的快速搜索显示,有一个 442.59 WHQL 版本的游戏就绪驱动程序可用并建议用于您的设备。我认为你有一个驱动程序问题,因为 glfwInit() 不应该失败,而且我之前遇到过与错误驱动程序安装类似的问题。 @OutOfBound 我检查了驱动程序版本,它是 442.50,这看起来是最新的。如何检查此驱动程序是否支持 OpenGL? 这个驱动应该支持 OpenGL 4.5。 @OutOfBound 我正在禁用英特尔显卡以强制代码使用 Nvidia,我读到这将禁用 Nvidia 的工作。有没有办法在应用程序上强制使用 Nvidia GPU? 【参考方案1】:

在将 Nvidia 驱动程序更新为 445.75 标准后,该问题已得到解决。

另外,我发现远程桌面存在 Nvidia 驱动程序问题。远程软件程序有时会安装自己的显示驱动程序。更多内容请关注here。

【讨论】:

以上是关于如何使Nvidia成为默认显卡?的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu用户怎样安装Nvidia最新显卡驱动

Debian10安装NVIDIA显卡驱动

NVIDIA 安装 CUDA

怎么更新NVIDIA

Linux下如何查看NVIDIA显卡信息

如何安装nvidia显卡驱动啊?