C++ 我的Vulkan应用程序在Nvidia GPU上以每秒30帧的速度锁定,但在Intel iGPU上不锁定

C++ 我的Vulkan应用程序在Nvidia GPU上以每秒30帧的速度锁定,但在Intel iGPU上不锁定,c++,vulkan,vsync,C++,Vulkan,Vsync,我遵循了教程,在达到在3D空间中使用旋转正方形的程度后,我决定测量程序的性能。我正在使用一台笔记本电脑,它既有Nvidia GTX 1050 GPU,也有Intel UHD Graphics 620 GPU。我添加了手动选择程序应该使用的GPU的功能 当我选择1050时,我的4个顶点和6个索引得到了稳定的30fps。对我来说似乎表现不佳,所以我认为帧必须由Vsync锁定在30。我曾尝试在GeForce控制面板中禁用所有应用程序的Vsync,但仍锁定在每秒30帧。我还试图通过将当前模式更改为始终V

我遵循了教程,在达到在3D空间中使用旋转正方形的程度后,我决定测量程序的性能。我正在使用一台笔记本电脑,它既有Nvidia GTX 1050 GPU,也有Intel UHD Graphics 620 GPU。我添加了手动选择程序应该使用的GPU的功能

当我选择1050时,我的4个顶点和6个索引得到了稳定的30fps。对我来说似乎表现不佳,所以我认为帧必须由Vsync锁定在30。我曾尝试在GeForce控制面板中禁用所有应用程序的Vsync,但仍锁定在每秒30帧。我还试图通过将当前模式更改为始终
VK\u present\u mode\u IMMEDIATE\u KHR
来禁用应用程序中的Vsync,但仍然是30fps

当我选择Intel GPU时,无论是否启用Vsync,我都能获得3000fps以上的速度,没有问题

可以找到应用程序的.cpp文件、.h文件和要运行的主文件。着色器是

选择1050时的控制台输出:

选择iGPU时的控制台输出:

FIFO模式使用Vsync锁定演示文稿。我假设更改GeForce控制面板中的设置不会影响Vulkan应用程序。即时模式在显示图像后立即在屏幕上显示图像。它不等待Vsync信号。所以我假设图形驱动程序中可能有一个bug。FIFO模式用Vsync锁定表示。我假设更改GeForce控制面板中的设置不会影响Vulkan应用程序。即时模式在显示图像后立即在屏幕上显示图像。它不等待Vsync信号。所以我假设图形驱动程序中可能有一个bug。