Linux를 실행하는 N 시리즈 VM의 NVIDIA GPU 드라이버 설치Install NVIDIA GPU drivers on N-series VMs running Linux

Linux를 실행하는 Azure N 시리즈 VM의 GPU 기능을 최대한 활용하려면 NVIDIA GPU 드라이버를 설치해야 합니다.To take advantage of the GPU capabilities of Azure N-series VMs running Linux, NVIDIA GPU drivers must be installed. NVIDIA GPU 드라이버 확장은 N 시리즈 VM에 적절한 NVIDIA CUDA 또는 GRID 드라이버를 설치합니다.The NVIDIA GPU Driver Extension installs appropriate NVIDIA CUDA or GRID drivers on an N-series VM. Azure CLI 또는 Azure Resource Manager 템플릿과 같은 도구나 Azure Portal을 사용하여 확장을 설치 또는 관리합니다.Install or manage the extension using the Azure portal or tools such as the Azure CLI or Azure Resource Manager templates. 지원되는 배포판 및 배포 단계는 NVIDIA GPU 드라이버 확장 설명서를 참조하세요.See the NVIDIA GPU Driver Extension documentation for supported distributions and deployment steps.

GPU 드라이버를 수동으로 설치하려는 경우 이 문서는 지원되는 배포판, 드라이버 및 설치 및 확인 단계를 제공합니다.If you choose to install GPU drivers manually, this article provides supported distributions, drivers, and installation and verification steps. Windows VM에 대한 드라이버 수동 설치 정보도 제공합니다.Manual driver setup information is also available for Windows VMs.

N 시리즈 VM 사양, 스토리지 용량 및 디스크 세부 정보는 GPU Linux VM 크기를 참조하세요.For N-series VM specs, storage capacities, and disk details, see GPU Linux VM sizes.

지원되는 배포판 및 버전Supported distributions and drivers

NVIDIA CUDA 드라이버NVIDIA CUDA drivers

NC, NCv2, NCv3, ND 및 NDv2 시리즈 VM(NV 시리즈의 경우 선택적임)용 NVIDIA CUDA 드라이버는 다음 표에 나와 있는 Linux 배포판에서만 사용할 수 있습니다.NVIDIA CUDA drivers for NC, NCv2, NCv3, ND, and NDv2-series VMs (optional for NV-series) are supported only on the Linux distributions listed in the following table. CUDA 드라이버 정보는 게시 시점의 최신 정보입니다.CUDA driver information is current at time of publication. 최신 CUDA 드라이버에 대해서는 NVIDIA 웹 사이트를 참조하세요.For the latest CUDA drivers, visit the NVIDIA website. 배포에 필요한 최신 CUDA 드라이버를 설치 또는 업그레이드해야 합니다.Ensure that you install or upgrade to the latest CUDA drivers for your distribution.

Linux VM에서 수동 CUDA 드라이버를 설치하는 대신, Azure Data Science Virtual Machine 이미지를 배포할 수 있습니다.As an alternative to manual CUDA driver installation on a Linux VM, you can deploy an Azure Data Science Virtual Machine image. Ubuntu 16.04 LTS 또는 CentOS 7.4용 DSVM 에디션은 NVIDIA CUDA 드라이버, CUDA 심층 신경망 네트워크 라이브러리 및 기타 도구를 사전 설치합니다.The DSVM editions for Ubuntu 16.04 LTS or CentOS 7.4 pre-install NVIDIA CUDA drivers, the CUDA Deep Neural Network Library, and other tools.

배포Distribution 드라이버Driver
Ubuntu 16.04 LTS, 18.04 LTSUbuntu 16.04 LTS, 18.04 LTS

Red Hat Enterprise Linux 7.3, 7.4, 7.5, 7.6Red Hat Enterprise Linux 7.3, 7.4, 7.5, 7.6

CentOS 기반 7.3, 7.4, 7.5, 7.6, CentOS 기반 7.4 HPCCentOS-based 7.3, 7.4, 7.5, 7.6, CentOS-based 7.4 HPC
엔비디아 CUDA 10.1, 드라이버 지점 R418NVIDIA CUDA 10.1, driver branch R418

NVIDIA GRID 드라이버NVIDIA GRID drivers

Microsoft는 가상 워크스테이션 또는 가상 응용 프로그램에 사용되는 NV 및 NVv3 시리즈 VM용 NVIDIA GRID 드라이버 설치 프로그램을 재배포합니다.Microsoft redistributes NVIDIA GRID driver installers for NV and NVv3-series VMs used as virtual workstations or for virtual applications. Azure NV VM에서 다음 표에 나열된 운영 체제에만 이러한 GRID 드라이버를 설치합니다.Install only these GRID drivers on Azure NV VMs, only on the operating systems listed in the following table. 이 드라이버에는 Azure의 GRID 가상 GPU 소프트웨어에 대한 라이선스가 포함됩니다.These drivers include licensing for GRID Virtual GPU Software in Azure. NVIDIA vGPU 소프트웨어 라이선스 서버를 설정할 필요는 없습니다.You do not need to set up an NVIDIA vGPU software license server.

배포Distribution 드라이버Driver
Ubuntu 18.04 LTSUbuntu 18.04 LTS

Ubuntu 16.04 LTSUbuntu 16.04 LTS

레드 햇 엔터프라이즈 리눅스 7.0 받는 번째 7.6Red Hat Enterprise Linux 7.0 to 7.6

센트OS 기반 7.0 ~ 7.6CentOS-based 7.0 to 7.6

수지 리눅스 엔터프라이즈 서버 12 SP2SUSE Linux Enterprise Server 12 SP2
엔비디아 그리드 10.1, 드라이버 지점 R440NVIDIA GRID 10.1, driver branch R440

경고

Red Hat 제품에 대한 타사 소프트웨어 설치는 Red Hat 지원 조건에 영향을 줄 수 있습니다.Installation of third-party software on Red Hat products can affect the Red Hat support terms. Red Hat 기술 자료 문서를 참조하세요.See the Red Hat Knowledgebase article.

N 시리즈 VM에 CUDA 드라이버 설치Install CUDA drivers on N-series VMs

N 시리즈 VM의 NVIDIA CUDA 도구 키트에서 CUDA 드라이버를 설치하는 단계는 다음과 같습니다.Here are steps to install CUDA drivers from the NVIDIA CUDA Toolkit on N-series VMs.

경우에 따라 C 및 C++ 개발자는 GPU 가속 애플리케이션을 빌드하기 위해 전체 도구 키트를 설치할 수도 있습니다.C and C++ developers can optionally install the full Toolkit to build GPU-accelerated applications. 자세한 내용은 CUDA 설치 가이드를 참조하세요.For more information, see the CUDA Installation Guide.

CUDA 드라이버를 설치하려면 각 VM에 SSH 연결을 설정합니다.To install CUDA drivers, make an SSH connection to each VM. 시스템에 CUDA 호환 GPU가 있는지 확인하려면 다음 명령을 실행합니다.To verify that the system has a CUDA-capable GPU, run the following command:

lspci | grep -i NVIDIA

다음 예제와 비슷한 출력이 표시됩니다(NVIDIA Tesla K80 카드 표시).You will see output similar to the following example (showing an NVIDIA Tesla K80 card):

lspci 명령 출력

그런 다음 배포 관련 특정 설치 명령을 실행합니다.Then run installation commands specific for your distribution.

UbuntuUbuntu

  1. NVIDIA 웹 사이트에서 CUDA 드라이버를 다운로드하여 설치합니다.Download and install the CUDA drivers from the NVIDIA website. 예를 들면 Ubuntu 16.04 LTS의 경우 다음과 같습니다.For example, for Ubuntu 16.04 LTS:

    CUDA_REPO_PKG=cuda-repo-ubuntu1604_10.0.130-1_amd64.deb
    
    wget -O /tmp/${CUDA_REPO_PKG} http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/${CUDA_REPO_PKG} 
    
    sudo dpkg -i /tmp/${CUDA_REPO_PKG}
    
    sudo apt-key adv --fetch-keys https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub 
    
    rm -f /tmp/${CUDA_REPO_PKG}
    
    sudo apt-get update
    
    sudo apt-get install cuda-drivers
    
    

    설치에는 몇 분 정도 걸릴 수 있습니다.The installation can take several minutes.

  2. 필요에 따라 전체 CUDA 도구 키트를 설치하려면 다음을 입력합니다.To optionally install the complete CUDA toolkit, type:

    sudo apt-get install cuda
    
  3. VM 다시 부팅하고 계속해서 설치를 확인합니다.Reboot the VM and proceed to verify the installation.

CUDA 드라이버 업데이트CUDA driver updates

배포 후에 CUDA 드라이버를 정기적으로 업데이트하는 것이 좋습니다.We recommend that you periodically update CUDA drivers after deployment.

sudo apt-get update

sudo apt-get upgrade -y

sudo apt-get dist-upgrade -y

sudo apt-get install cuda-drivers

sudo reboot

CentOS 또는 Red Hat Enterprise LinuxCentOS or Red Hat Enterprise Linux

  1. 커널을 업데이트합니다(권장).Update the kernel (recommended). 커널을 업데이트하지 않도록 선택하는 경우 kernel-develdkms의 버전이 커널에 적합한지 확인하세요.If you choose not to update the kernel, ensure that the versions of kernel-devel and dkms are appropriate for your kernel.

    sudo yum install kernel kernel-tools kernel-headers kernel-devel
    
    sudo reboot
    
    
  2. Install the latest Linux Integration Services for Hyper-V and Azure.

    wget https://aka.ms/lis
    
    tar xvzf lis
    
    cd LISISO
    
    sudo ./install.sh
    
    sudo reboot
    
  3. VM에 다시 연결하고 다음 명령을 사용하여 설치를 계속합니다.Reconnect to the VM and continue installation with the following commands:

    sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    
    sudo yum install dkms
    
    CUDA_REPO_PKG=cuda-repo-rhel7-10.0.130-1.x86_64.rpm
    
    wget http://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/${CUDA_REPO_PKG} -O /tmp/${CUDA_REPO_PKG}
    
    sudo rpm -ivh /tmp/${CUDA_REPO_PKG}
    
    rm -f /tmp/${CUDA_REPO_PKG}
    
    sudo yum install cuda-drivers
    

    설치에는 몇 분 정도 걸릴 수 있습니다.The installation can take several minutes.

  4. 필요에 따라 전체 CUDA 도구 키트를 설치하려면 다음을 입력합니다.To optionally install the complete CUDA toolkit, type:

    sudo yum install cuda
    
  5. VM 다시 부팅하고 계속해서 설치를 확인합니다.Reboot the VM and proceed to verify the installation.

드라이버 설치 확인Verify driver installation

GPU 디바이스 상태를 쿼리하려면 VM에 대해 SSH를 실행하고 드라이버와 설치된 nvidia-smi 명령줄 유틸리티를 실행합니다.To query the GPU device state, SSH to the VM and run the nvidia-smi command-line utility installed with the driver.

드라이버가 설치된 경우 다음과 유사한 출력이 표시됩니다.If the driver is installed, you will see output similar to the following. 현재 VM에서 GPU 워크로드를 실행 중이지 않으면 GPU-Util에 0%가 표시됩니다.Note that GPU-Util shows 0% unless you are currently running a GPU workload on the VM. 드라이버 버전 및 GPU 세부 정보는 표시된 것과 다를 수 있습니다.Your driver version and GPU details may be different from the ones shown.

NVIDIA 디바이스 상태

RDMA 네트워크 연결RDMA network connectivity

동일한 가용성 집합 또는 VM 확장 집합의 단일 배치 그룹에 배포된 NC24r과 같은 RDMA 지원 N 시리즈 VM에서 RDMA 네트워크 연결을 사용할 수 있습니다.RDMA network connectivity can be enabled on RDMA-capable N-series VMs such as NC24r deployed in the same availability set or in a single placement group in a VM scale set. RDMA 네트워크는 Intel MPI 5.x 이상 버전을 사용하여 실행되는 애플리케이션에 대한 MPI(Message Passing Interface) 트래픽을 지원합니다.The RDMA network supports Message Passing Interface (MPI) traffic for applications running with Intel MPI 5.x or a later version. 추가 요구 사항은 다음과 같습니다.Additional requirements follow:

배포Distributions

N 시리즈 VM에서 RDMA 연결을 지원하는 Azure Marketplace의 이미지 중 하나에서 RDMA 지원 N 시리즈 VM을 배포합니다.Deploy RDMA-capable N-series VMs from one of the images in the Azure Marketplace that supports RDMA connectivity on N-series VMs:

  • Ubuntu 16.04 LTS - Intel MPI를 다운로드하도록 VM에서 RDMA 드라이버를 구성하고 Intel에 등록합니다.Ubuntu 16.04 LTS - Configure RDMA drivers on the VM and register with Intel to download Intel MPI:

    1. Dapl, rdmacm, ibverbs 및 mlx4 설치Install dapl, rdmacm, ibverbs, and mlx4

      sudo apt-get update
      
      sudo apt-get install libdapl2 libmlx4-1
      
      
    2. /etc/waagent.conf에서 다음 구성 줄의 주석 처리를 해제하여 RDMA를 사용하도록 설정합니다.In /etc/waagent.conf, enable RDMA by uncommenting the following configuration lines. 이 파일을 편집하려면 루트 액세스가 필요합니다.You need root access to edit this file.

      OS.EnableRDMA=y
      
      OS.UpdateRdmaDriver=y
      
    3. /etc/security/limits.conf 파일에서 다음 메모리 설정(KB)을 추가하거나 변경합니다.Add or change the following memory settings in KB in the /etc/security/limits.conf file. 이 파일을 편집하려면 루트 액세스가 필요합니다.You need root access to edit this file. 테스트를 위해 memlock을 unlimited로 설정할 수 있습니다.For testing purposes you can set memlock to unlimited. 예: <User or group name> hard memlock unlimitedFor example: <User or group name> hard memlock unlimited.

      <User or group name> hard    memlock <memory required for your application in KB>
      
      <User or group name> soft    memlock <memory required for your application in KB>
      
    4. Intel MPI Library를 설치합니다.Install Intel MPI Library. Intel에서 이 라이브러리를 구입 및 다운로드하거나 평가판을 다운로드합니다.Either purchase and download the library from Intel or download the free evaluation version.

      wget http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/9278/l_mpi_p_5.1.3.223.tgz
      

      Intel MPI 5.x 런타임만 지원됩니다.Only Intel MPI 5.x runtimes are supported.

      설치 단계에 대해서는 Intel MPI Library 설치 가이드를 참조하세요.For installation steps, see the Intel MPI Library Installation Guide.

    5. 루트가 아닌 비디버거 프로세스에 대해 ptrace를 사용하도록 설정합니다(가장 최신 버전의 Intel MPI에 필요).Enable ptrace for non-root non-debugger processes (needed for the most recent versions of Intel MPI).

      echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope
      
  • CentOS 기반 7.4 HPC - RDMA 드라이버 및 Intel MPI 5.1은 VM에 설치됩니다.CentOS-based 7.4 HPC - RDMA drivers and Intel MPI 5.1 are installed on the VM.

NV 또는 NVv3 시리즈 VM에 그리드 드라이버 설치Install GRID drivers on NV or NVv3-series VMs

NV 또는 NVv3 시리즈 VM에 NVIDIA GRID 드라이버를 설치하려면 각 VM에 SSH 연결을 만들고 Linux 배포판의 단계를 따릅니다.To install NVIDIA GRID drivers on NV or NVv3-series VMs, make an SSH connection to each VM and follow the steps for your Linux distribution.

UbuntuUbuntu

  1. lspci 명령을 실행합니다.Run the lspci command. NVIDIA M60 카드가 PCI 디바이스로 표시되는지 확인합니다.Verify that the NVIDIA M60 card or cards are visible as PCI devices.

  2. 업데이트를 설치합니다.Install updates.

    sudo apt-get update
    
    sudo apt-get upgrade -y
    
    sudo apt-get dist-upgrade -y
    
    sudo apt-get install build-essential ubuntu-desktop -y
    
    sudo apt-get install linux-azure -y
    
  3. NVIDIA 드라이버와 호환되지 않는 Nouveau 커널 드라이버를 사용하지 않도록 설정합니다.Disable the Nouveau kernel driver, which is incompatible with the NVIDIA driver. (NV 또는 NVv2 VM에서만 NVIDIA 드라이버를 사용하십시오.) 이렇게 하려면 다음 내용으로 /etc/modprobe.d nouveau.conf 명명된 파일을 만듭니다.(Only use the NVIDIA driver on NV or NVv2 VMs.) To do this, create a file in /etc/modprobe.d named nouveau.conf with the following contents:

    blacklist nouveau
    
    blacklist lbm-nouveau
    
  4. VM을 다시 부팅하고 다시 연결합니다.Reboot the VM and reconnect. X 서버를 종료합니다.Exit X server:

    sudo systemctl stop lightdm.service
    
  5. GRID 드라이버를 다운로드하여 설치합니다.Download and install the GRID driver:

    wget -O NVIDIA-Linux-x86_64-grid.run https://go.microsoft.com/fwlink/?linkid=874272  
    
    chmod +x NVIDIA-Linux-x86_64-grid.run
    
    sudo ./NVIDIA-Linux-x86_64-grid.run
    
  6. X 구성 파일을 업데이트할 nvidia-xconfig 유틸리티를 실행할 것인지 여부를 묻는 메시지가 표시되면 를 선택합니다.When you're asked whether you want to run the nvidia-xconfig utility to update your X configuration file, select Yes.

  7. 설치가 완료되면 /etc/nvidia/gridd.conf.template을 /etc/nvidia/ 위치의 새 파일 gridd.conf에 복사합니다.After installation completes, copy /etc/nvidia/gridd.conf.template to a new file gridd.conf at location /etc/nvidia/

    sudo cp /etc/nvidia/gridd.conf.template /etc/nvidia/gridd.conf
    
  8. 다음 줄을 /etc/nvidia/gridd.conf에 추가합니다.Add the following to /etc/nvidia/gridd.conf:

    IgnoreSP=FALSE
    EnableUI=FALSE
    
  9. 다음이 있는 /etc/nvidia/gridd.conf 경우 제거합니다.Remove the following from /etc/nvidia/gridd.conf if it is present:

    FeatureType=0
    
  10. VM 다시 부팅하고 계속해서 설치를 확인합니다.Reboot the VM and proceed to verify the installation.

CentOS 또는 Red Hat Enterprise LinuxCentOS or Red Hat Enterprise Linux

  1. 커널 및 DKMS를 업데이트합니다(권장).Update the kernel and DKMS (recommended). 커널을 업데이트하지 않도록 선택하는 경우 kernel-develdkms의 버전이 커널에 적합한지 확인하세요.If you choose not to update the kernel, ensure that the versions of kernel-devel and dkms are appropriate for your kernel.

    sudo yum update
    
    sudo yum install kernel-devel
    
    sudo rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    
    sudo yum install dkms
    
    sudo yum install hyperv-daemons
    
  2. NVIDIA 드라이버와 호환되지 않는 Nouveau 커널 드라이버를 사용하지 않도록 설정합니다.Disable the Nouveau kernel driver, which is incompatible with the NVIDIA driver. (NV 또는 NV2 VM에서만 NVIDIA 드라이버를 사용하십시오.) 이렇게 하려면 다음 내용으로 /etc/modprobe.d nouveau.conf 명명된 파일을 만듭니다.(Only use the NVIDIA driver on NV or NV2 VMs.) To do this, create a file in /etc/modprobe.d named nouveau.conf with the following contents:

    blacklist nouveau
    
    blacklist lbm-nouveau
    
  3. VM을 다시 부팅하고 다시 연결한 후 Hyper-V 및 Azure에 대한 최신 Linux 통합 서비스를 설치합니다.Reboot the VM, reconnect, and install the latest Linux Integration Services for Hyper-V and Azure.

    wget https://aka.ms/lis
    
    tar xvzf lis
    
    cd LISISO
    
    sudo ./install.sh
    
    sudo reboot
    
    
  4. VM에 다시 연결하고 lspci 명령을 실행합니다.Reconnect to the VM and run the lspci command. NVIDIA M60 카드가 PCI 디바이스로 표시되는지 확인합니다.Verify that the NVIDIA M60 card or cards are visible as PCI devices.

  5. GRID 드라이버를 다운로드하여 설치합니다.Download and install the GRID driver:

    wget -O NVIDIA-Linux-x86_64-grid.run https://go.microsoft.com/fwlink/?linkid=874272  
    
    chmod +x NVIDIA-Linux-x86_64-grid.run
    
    sudo ./NVIDIA-Linux-x86_64-grid.run
    
  6. X 구성 파일을 업데이트할 nvidia-xconfig 유틸리티를 실행할 것인지 여부를 묻는 메시지가 표시되면 를 선택합니다.When you're asked whether you want to run the nvidia-xconfig utility to update your X configuration file, select Yes.

  7. 설치가 완료되면 /etc/nvidia/gridd.conf.template을 /etc/nvidia/ 위치의 새 파일 gridd.conf에 복사합니다.After installation completes, copy /etc/nvidia/gridd.conf.template to a new file gridd.conf at location /etc/nvidia/

    sudo cp /etc/nvidia/gridd.conf.template /etc/nvidia/gridd.conf
    
  8. 다음 줄을 /etc/nvidia/gridd.conf에 추가합니다.Add the following to /etc/nvidia/gridd.conf:

    IgnoreSP=FALSE
    EnableUI=FALSE 
    
  9. 다음이 있는 /etc/nvidia/gridd.conf 경우 제거합니다.Remove the following from /etc/nvidia/gridd.conf if it is present:

    FeatureType=0
    
  10. VM 다시 부팅하고 계속해서 설치를 확인합니다.Reboot the VM and proceed to verify the installation.

드라이버 설치 확인Verify driver installation

GPU 디바이스 상태를 쿼리하려면 VM에 대해 SSH를 실행하고 드라이버와 설치된 nvidia-smi 명령줄 유틸리티를 실행합니다.To query the GPU device state, SSH to the VM and run the nvidia-smi command-line utility installed with the driver.

드라이버가 설치된 경우 다음과 유사한 출력이 표시됩니다.If the driver is installed, you will see output similar to the following. 현재 VM에서 GPU 워크로드를 실행 중이지 않으면 GPU-Util에 0%가 표시됩니다.Note that GPU-Util shows 0% unless you are currently running a GPU workload on the VM. 드라이버 버전 및 GPU 세부 정보는 표시된 것과 다를 수 있습니다.Your driver version and GPU details may be different from the ones shown.

NVIDIA 디바이스 상태

X11 서버X11 server

NV 또는 NVv2 VM에 대한 원격 연결을 위해 X11 서버가 필요한 경우 그래픽의 하드웨어 가속화가 가능하기 때문에 x11vnc가 권장됩니다.If you need an X11 server for remote connections to an NV or NVv2 VM, x11vnc is recommended because it allows hardware acceleration of graphics. M60 디바이스의 BusID를 X11 구성 파일(일반적으로 etc/X11/xorg.conf)에 직접 추가해야 합니다.The BusID of the M60 device must be manually added to the X11 configuration file (usually, etc/X11/xorg.conf). 다음과 유사한 "Device" 섹션을 추가합니다.Add a "Device" section similar to the following:

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
    BoardName      "Tesla M60"
    BusID          "PCI:0@your-BusID:0:0"
EndSection

또한 "Screen" 섹션을 업데이트하여 이 디바이스를 사용합니다.Additionally, update your "Screen" section to use this device.

실행하여 소수점 BusID를 찾을 수 있음The decimal BusID can be found by running

nvidia-xconfig --query-gpu-info | awk '/PCI BusID/{print $4}'

BusID는 VM이 다시 할당되거나 다시 부팅될 때를 변경할 수 있습니다.The BusID can change when a VM gets reallocated or rebooted. 따라서 스크립트를 만들어서 VM이 다시 부팅될 때 X11 구성에서 BusID를 업데이트할 수도 있습니다.Therefore, you may want to create a script to update the BusID in the X11 configuration when a VM is rebooted. 예를 들어, 다음과 유사한 콘텐츠의 busidupdate.sh(또는 사용자가 선택한 다른 이름)라는 스크립트를 만듭니다.For example, create a script named busidupdate.sh (or another name you choose) with contents similar to the following:

#!/bin/bash
XCONFIG="/etc/X11/xorg.conf"
OLDBUSID=`awk '/BusID/{gsub(/"/, "", $2); print $2}' ${XCONFIG}`
NEWBUSID=`nvidia-xconfig --query-gpu-info | awk '/PCI BusID/{print $4}'`

if [[ "${OLDBUSID}" == "${NEWBUSID}" ]] ; then
        echo "NVIDIA BUSID not changed - nothing to do"
else
        echo "NVIDIA BUSID changed from \"${OLDBUSID}\" to \"${NEWBUSID}\": Updating ${XCONFIG}" 
        sed -e 's|BusID.*|BusID          '\"${NEWBUSID}\"'|' -i ${XCONFIG}
fi

그런 다음, 스크립트가 부팅 시 루트로 호출되도록 /etc/rc.d/rc3.d에 업데이트 스크립트에 대한 항목을 만듭니다.Then, create an entry for your update script in /etc/rc.d/rc3.d so the script is invoked as root on boot.

문제 해결Troubleshooting

  • nvidia-smi를 사용하여 지속성 모드를 설정할 수 있으므로 카드를 쿼리해야 할 때 명령 출력이 더 빠릅니다.You can set persistence mode using nvidia-smi so the output of the command is faster when you need to query cards. 지속성 모드를 설정하려면 nvidia-smi -pm 1을 실행합니다.To set persistence mode, execute nvidia-smi -pm 1. VM을 다시 시작하면 모드 설정이 사라집니다.Note that if the VM is restarted, the mode setting goes away. 모드 설정은 시작할 때 실행되도록 항상 스크립팅할 수 있습니다.You can always script the mode setting to execute upon startup.
  • NVIDIA CUDA 드라이버를 최신 버전으로 업데이트하고 RDMA 연결이 더 이상 작동하지 않는 경우 RDMA 드라이버를 다시 설치하여 해당 연결을 다시 확인합니다.If you updated the NVIDIA CUDA drivers to the latest version and find RDMA connectivcity is no longer working, reinstall the RDMA drivers to reistablish that connectivity.

다음 단계Next steps