ESXI 6.7 环境 16.04虚拟机安装tesla k80 一切正常,但虚拟机重装了centos7.6后,驱动一直安装失败,报错如下:

换了多个驱动版本,问题依然存在。安装时指定 --no-kernel-module-source选项,仍然找不到显卡,不能和显卡通信。

后来解决方法如下      :

按常规设置新建虚拟机,添加PCI设备,如下图

坑1:无法打开虚拟机 CentOS 7 K80 的电源。内存设置无效: 内存预留 (sched.mem.min) 应该等于内存大小 (16384)。 单击此处了解更多详细信息。

解决方法:打勾☑️ 预留所有客户机内存(全部锁定)即可

 
坑2:无法打开虚拟机 CentOS 7 K80 的电源。模块“DevicePowerOn”打开电源失败。 单击此处了解更多详细信息。

这个问题折腾了我一阵子,有几个地方要改:

    1、物理机 (Dell R710) BIOS 中启用大于4G的内存映射 (Memory Mapped IO >4GB),这里就不弄图了,搜一下吧!
    2、 编辑虚拟机 - 虚拟机选项 - 引导选项 - 固件 - EFI (默认为 BIOS),此处一定注意!!
    3、编辑虚拟机 - 虚拟机选项 - 高级 - 配置参数 - 编辑配置... -- 点2次左上角的 [添加参数],此时会在列表的尾部会出现 2 条显示为 “单击以编辑键” 条目,如图:

   4、 配置hypervisor.cpuid.v0健值为 FALSE
   5、 配置 pciPassthru.use64bitMMIO 健值为 TRUE
   6、配置 pciPassthru.64bitMMIOSizeGB 键值为 48 ,这里的数值需要用GPU内存进行计算,我大致理解为 直通GPU的内存乘以四,我的卡为 双路12G ,映射一路,12*4 = 48,所以这里我写了48,如果理解有误,请大家联系我更正。
   7、 以上配置参考来源于 https://octo.vmware.com/enable-compute-accelerators-vsphere-6-5-machine-learning-hpc-workloads/
   8、 配好后像这样

 

经过以上配置,成功配置Nvidia Tesla K80 的直通

下面开始安装 显卡驱动。

    安装依赖库

    yum -y install gcc
    yum -y install epel-release
    yum -y install --enablerepo=epel dkms

     
    安装kernel-devel

    yum install kernel-devel
    yum install kernel-headers

系统名

uname -r

对应版本

yum list | grep kernel-devel

    检查nouveau驱动

lsmod | grep nouveau

    禁用nouveau驱动

修改/usr/lib/modprobe.d/dist-blacklist.conf文件,加入一行并保存

    #nvidia driver
     
    blacklist nouveau
    options nouveau modeset=0

    备份\重建原来的镜像文件

    mv     /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
     
    dracut /boot/initramfs-$(uname -r).img $(uname -r)

    重启

    安装NVIDIA驱动

    ./NVIDIA-Linux-x86_64-440.82.run --no-opengl-files --kernel-source-path=/usr/src/kernels/3.10.0-1160.2.2.el7.x86_64
  • 检查驱动情况
nvidia-smi

 一切正常 !!!

 

安装cuda10.1
sudo ./cuda_10.1.105_418.39_linux.run
不要安装driver
打开主目录下的 .bashrc文件添加如下路径
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda-10.1/lib64
export PATH=$PATH:/usr/local/cuda-10.1/bin
export CUDA_HOME=$CUDA_HOME:/usr/local/cuda-10.1
source ~/.bashrc

安装cudnn7.6.5
sudo cp cuda/include/cudnn.h /usr/local/cuda/include/ 
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64/ 
sudo chmod a+r /usr/local/cuda/include/cudnn.h 
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
sudo ln -sf /usr/local/cuda-10.1/lib64/libcudnn.so.7.6.5 /usr/local/cuda-10.1/lib64/libcudnn.so.7

 

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐