ffmpeg nvenc GPU 内存使用情况

标签 ffmpeg gpu nvidia transcoding nvenc

我在 Ubuntu 中的 NVIDIA QUADRO K4200 上对视频进行转码(ffmpeg 版本为 2.7.1,NVENC SDK 5.0.1)。一个流的 GPU 内存使用量为 100 MB。请查看 nvidia-smi 命令的输出: enter image description here

但是当我在另一台具有 NVIDIA GTX 980 TI 的计算机上使用相同的 ffmpeg 参数运行相同的转码过程时(ffmpeg 版本为 3.0,NVENC SDK 5.0.1)那么一个流的 GPU 内存使用量为 170 MB。请看下面的截图: enter image description here

为什么内存使用情况有如此大的差异?我可以像 QUADRO K4000 上那样将 GTX 980 TI 上的一个转码过程的 GPU 内存使用量减少到 100MB 吗?

最佳答案

您的答案:

在 Quadro 和 Tesla GPU 上,最大同时 NVENC session 数量是无限的,因此,这些平台通常会为同一工作单元带来较低的驱动程序开销。

考虑到与 NVCUVENC(使用 CUDA 核心对基本视频流进行编码)不同,NVENC 是一个专用的基于硬件的硅知识产权核心 (SIP),如果您要比较不同的驱动程序和平台版本不同,所有其他因素保持不变,您的里程总是会有所不同。

感谢和问候,

Brainiarc7。

关于ffmpeg nvenc GPU 内存使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35791604/

相关文章:

audio - 优化的 FFMPEG 参数

python - 通过 WMI 确定正在运行的 GPU

opencl - 如何为 ATI 和 NVIDIA 开发 OpenCL 代码?

python - 使用 SLURM 请求 2 个 GPU 并运行 1 个 python 脚本

cuda - 如何修改 xorg.conf 文件以强制 X 服务器在特定 GPU 上运行? (我使用多个 GPU)

c++ - libmediainfo 有替代方案吗?

php - 制作 FFmpeg 缩略图?

.net - 从托管代码执行CPU/GPU指令

python - 有没有办法将参数传递给 optuna 中的多个工作?

PHP FFmpeg 无法在 windowsxp 和实时网站上运行,在 ubuntu 中运行相同的代码