このトピックでは、GRIDドライバーと以前のバージョンのCUDAがインストールされているvGPUアクセラレーションLinuxインスタンスで、新しいバージョンのCompute Unified Device Architecture (CUDA) を必要とするアプリケーションを実行するときにエラーが発生する問題の原因と解決策について説明します。 この問題は、以前のCUDAバージョンと互換性があるが、アプリケーションと互換性がないGPUドライバーバージョンが原因で発生する可能性があります。
問題の説明
GRIDドライバーと以前のバージョンのCUDAがインストールされているvGPUアクセラレーションLinuxインスタンスで、新しいバージョンのCUDAを必要とするアプリケーションを実行すると、エラーが発生します。 次の例では、以前のCUDAバージョンが11.4で、matrixMulアプリケーションにはCUDA 12.2が必要です。 次の図に、エラーメッセージを示します。

原因
上記の問題は、以前のCUDAバージョンと互換性があるが、アプリケーションと互換性がないGPUドライバーバージョンが原因で発生する可能性があります。 各CUDAバージョンと互換性のあるGPUドライバーのバージョンについては、「CUDA Toolkit Major Component versions」をご参照ください。 CUDA 12.2など、新しいバージョンのCUDAを必要とするアプリケーションは、CUDA 11.4環境では実行できません。 このトピックでは、CUDA compatパッケージを更新して上記の問題を解決する方法について説明します。
解決策
このセクションでは、Ubuntu 20.04を実行するvGPUアクセラレーションLinuxインスタンスを使用して上記の問題を解決する方法について説明します。
vGPU高速化Linuxインスタンスに接続します。
詳細については、「パスワードまたはキーを使用したLinuxインスタンスへの接続」をご参照ください。
次のコマンドを実行して、CUDA 12.2 compatパッケージをダウンロードします。
この例では、X86_64アーキテクチャ用のUbuntu 20.04のCUDA 12.2 compatパッケージがダウンロードされます。 vGPUアクセラレーションLinuxインスタンスのオペレーティングシステムのバージョンとアーキテクチャに基づいて、CUDA compat package download URLから一致するCompatパッケージをダウンロードできます。
sudo wget https://developer.download.nvidia.cn/compute/cuda/repos/ubuntu2004/x86_64/cuda-compat-12-2_535.104.05-1_amd64.deb次のコマンドを実行して、
. debファイルを指定したディレクトリに重要この例では、ファイルは
/homeディレクトリに抽出されます。 ディレクトリを実際のディレクトリに置き換えます。sudo dpkg -x cuda-compat-12-2_535.104.05-1_amd64.deb /home次のコマンドを順番に実行して、新しいバージョンのCUDA環境を設定します。
sudo echo "export LD_LIBRARY_PATH=/home/usr/local/cuda-12.2/compat:$LD_LIBRARY_PATH" >> ~/.bashrc source ~/.bashrcアプリケーションを実行して、アプリケーションが期待どおりに実行されるかどうかを確認します。
この例では、
matrixMulアプリケーションが実行されます。 次の図は、アプリケーションが期待どおりに実行されることを示しています。