Initial commit

This commit is contained in:
Gregory Lirent 2024-07-31 00:44:54 +03:00
commit e878e71e1e
Signed by: lirent
GPG Key ID: F616BE337EFFEE77
6 changed files with 1538317 additions and 0 deletions

10
README.md Normal file
View File

@ -0,0 +1,10 @@
# About
This project provides the patched nvidia driver, which unlock the access to vGPU functional of Pascal/Turing generation Nvidia GPU chips.
Detailed info can be found [here](https://gitlab.com/polloloco/vgpu-proxmox)
# Install
Just run install.sh. It can be neccessary to reboot the system.

File diff suppressed because one or more lines are too long

67
install.sh Executable file
View File

@ -0,0 +1,67 @@
#!/bin/bash
DIR="$(dirname $(readlink -f $0))"
NEED_REBOOT=0
# Check is IOMMU enabled
if [[ ! "$(find /sys | grep dmar)" ]]; then
echo "IOMMU is not enabled" >&2
if [[ "$(lscpu | grep intel)" ]]; then
if [[ -f /etc/default/grub ]]; then
echo "Trying to enable it..." >&2
echo "If this message would be repeated after system reboot, check your BIOS/UEFI settings." >&2
if [[ "$(cat /etc/default/grub | grep intel_iommu=on)"]]; then
cat /etc/default/grub | sed -re 's|(GRUB_CMDLINE_LINUX_DEFAULT.+)"|\1 intel_iommu=on"|g' > /etc/default/grub
update-grub
NEED_REBOOT=1
else
echo "Failed" >&2
echo "Check the https://gitlab.com/polloloco/vgpu-proxmox for detailed information." >&2
fi
else
echo "Auto enabling of the supporting IOMMU by kernel is supported for GRUB only" >&2
echo "Check the https://gitlab.com/polloloco/vgpu-proxmox for detailed information." >&2
fi
fi
fi
# Check is noveau enabled
if [[ "$(lsmod | grep nouveau)" ]]; then
echo "Nouveau module is enabled, NVIDIA driver cannot be installed" >&2
echo "Disabling it..." >&2
echo "blacklist nouveau" >> /etc/modprobe.d/blacklist.conf
NEED_REBOOT=1
fi
# Check modules
for module in vfio_iommu_type1 vfio_pci vfio_virqfd vfio; then
if [[ ! "$(lsmod | grep "${module}")" ]]; then
echo "Required module '${module}' is not enabled" >&2
echo "Enabling it..." >&2
echo "${module}" >> /etc/modules
NEED_REBOOT=1
fi
fi
if (( $NEED_REBOOT )); then
echo "System would be rebooted to apply required changes automatically" >&2
echo "Installation is not completed, please run '$0' again after reboot" >&2
for i in 10 9 8 7 6 5 4 3 2 1 "..."; then
echo -ne ' $i'
sleep 1;
fi
reboot now
fi
apt install linux-headers-$(uname -r) -y
$DIR/src/NVIDIA-Linux-x86_64-535.104.06-vgpu-kvm.run --apply-patch $DIR/src/535.104.06.patch
./NVIDIA-Linux-x86_64-535.104.06-vgpu-kvm-custom.run --dkms -m=kernel
echo "Check vGPU is install..." >&2
nvidia-smi

BIN
src/535.104.06.patch Normal file

Binary file not shown.

File diff suppressed because one or more lines are too long