Go to file
Vladislav Yarmak 241a8aa81a
Merge pull request #46 from keylase/upstream_linux_418.30
support for linux driver version 418.30
2019-02-05 18:27:07 +02:00
.github/ISSUE_TEMPLATE request more info in issue templates to distinct quadro drivers 2019-01-11 11:24:07 +02:00
win support for windows driver version 418.81 2019-02-05 17:39:07 +02:00
FFMPEG-with-NVIDIA-Acceleration-on-Ubuntu_UG_v01.pdf add doc 2016-11-16 13:37:39 +03:00
patch.sh support for linux driver version 418.30 2019-02-05 18:22:48 +02:00
PULL_REQUEST_TEMPLATE.md Add PR template 2018-12-26 18:43:19 +02:00
README.md support for linux driver version 418.30 2019-02-05 18:22:48 +02:00

nvidia-patch

This patch removes restriction on maximum number of simultaneous NVENC video encoding sessions imposed by Nvidia to consumer-grade GPUs.

Main target operating system is GNU/Linux, but for experimental Windows support see win.

Requirements:

Tested on Ubuntu 18.04 LTS (GNU/Linux 4.15.0-23-generic x86_64)

Synopsis

# bash ./patch.sh -h

SYNOPSIS
       patch.sh [OPTION]...

DESCRIPTION
       The patch for Nvidia drivers to increase encoder sessions

       -s    Silent mode (No output)
       -r    Rollback to original (Restore lib from backup)
       -h    Print this help message

Step-by-Step guide

Examples are provided for driver version 410.78. All commands are runned as root.

Download driver

https://download.nvidia.com/XFree86/Linux-x86_64/410.78/NVIDIA-Linux-x86_64-410.78.run

Install driver

mkdir /opt/nvidia && cd /opt/nvidia
wget https://download.nvidia.com/XFree86/Linux-x86_64/410.78/NVIDIA-Linux-x86_64-410.78.run
chmod +x ./NVIDIA-Linux-x86_64-410.78.run
./NVIDIA-Linux-x86_64-410.78.run

Check driver

nvidia-smi

Output should show no errors and details about your driver and GPU.

Patch driver

This patch performs backup of original file prior to making changes.

bash ./patch.sh

You're all set!

Rollback

If something got broken you may restore patched driver from backup:

bash ./patch.sh -r

See also

https://habr.com/post/262563/

If you experience CreateBitstreamBuffer failed: out of memory (10), then you have to lower buffers number used for every encoding session. If you are using ffmpeg, see option -surfaces ("Number of concurrent surfaces") and try value near -surfaces 8.