PR渲染只使用核显,不使用独显的解决方法

  • Post author:
  • Post category:其他




学习记录



环境

  1. Win 10
  2. Premiere Pro cc2019
  3. NVIDIA GeForce 940MX
  4. 导出视频大小53M,格式MP4



起源

在使用PR导出视频时,意外发现,CPU和核显的占用率都是100%,但独显占用率几乎为0,只有微小的跳动。也就是说独显虽然能工作,但是对视频渲染没有起到作用。

虽然说NVIDIA GeForce 940MX只是笔记本的入门显卡,甚至有的网友评论“关闭独显以提高性能”,但是,独显也应该起到一定的作用。

在后面的百度中,我了解到PR的渲染有3种不同的模式。

  • Mercury Playback Engine GPU加速(CUDA)
  • Mercury Playback Engine GPU加速(OpenCL)
  • 仅Mercury Playback Engine软件

    OpenCL是使用CPU+核显的模式。

    CUDA是有独显时的模式。

    仅软件是没有显卡的默认模式选项。

    在这里插入图片描述

    我的PR中只用OpenCL和仅软件两个选项。

    我对两种模式进行对比,同一个视频OpenCL需要7m的时间,而仅软件却预计30m多(时间过长,没有实测)。

    这就更加令我好奇CUDA模式下的速度了。



尝试的过程

  • 首先,我怀疑是因为NVIDIA的设置有问题,所以我使用NVIDIA的控制面板,将PR的3D设置都打开。重启PR没有作用。
  • 其次,我怀疑是由于核显屏蔽了独显,于是我在设备管理器中将核显禁用,结果连OpenCL都没有了。
  • 再次,使用NVIDIA Experience软件更新驱动程序,显示驱动已是最新版本。
  • 使用PR的

    GPUSniffer.exe

    嗅探GPU,得到独显没有工作的原因。


    * Not chosen because of old driver.


    在这里插入图片描述

    输出内容的查看见另一篇文章。

    阻止exe命令行文件执行完自动关闭

    .
  • 考虑到显卡的性能弱,是不是对CUDA的功能并不支持,查阅了NVIDIA的官网,明确显示支持CUDA。

    在这里插入图片描述


    图片来源

    .
  • 同时查阅了CUDA的支持设备。

    在这里插入图片描述


    图片来源

    .

    支持940M,940MX是940的升级版,理论上也应该支持。
  • 在NVIDIA的官网上查询了驱动,940MX的Game Driver有422的版本,而Studio Driver的最新版本缺失。
  • 在设备管理器中查看了NVIDIA的驱动,版本是2017年的。估计原因在驱动太老。更新了NVIDIA Experience,在NVIDIA Experience中将驱动更新为最新版本,成功。

总结上面的废话,


更新驱动




效果

项目设置中的CUDA选项出来了。

在这里插入图片描述

选中并导出视频。

预计时间 3m30s,实际使用时间5m45s。

因为这个时间不是逐秒递减的,有时候还不断增加。

在这里插入图片描述

通过任务管理器的性能可以看到,核显、独显和CPU都在工作。核显占用率约50%,独显占用率几乎100%,CPU占用率不是很高,只用百分之三十多。但这些数据不是保持不变的,CPU最高时也会达到100%,有部分时间占用率达80%以上。

在这里插入图片描述



总结

对比3种不同模式。

效果 仅软件 OpenCL CUDA
时间 30m(预计) 7m 5m40s
设备占用 CPU(100%) CPU(100%)+核显(100%) CPU(30%-80%大幅波动)+核显(50%波动)+独显(100%)

总的来说,有加速比仅软件要好,OpenCL对CPU的占用率很高,而CUDA能释放CPU的一部分工作,同时能充分利用独显的性能。


当然,在中间的过程中,并没有严格的控制变量,所以对问题只是定性分析,并非定量分析。



很多概念我也不是特别清楚,如有错误,欢迎指正。



版权声明:本文为I_LOVE_MCU原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。