CUDA8.0とCUDA9.0はUbuntu16.04で共存します

CUDA8.0とCUDA9.0はUbuntu16.04で共存します

序文

Github にある以前のコードには、CUDA 8.0 環境が必要なものもあります。初心者の場合、環境設定には最新バージョンを選択するのが一般的です。ここでは、コンピューティングに GPU を使用する場合に CUDA 8.0 と CUDA 9.0 の共存を解決する方法について簡単に説明します。

1. 設置前の検査

次のコマンドを実行して、コンピュータの現在のCUDAバージョンを確認します。

nvcc --バージョン

私のコンピュータでは次のように表示されます: (CUDA 9.0 が現在コンピュータにインストールされています)

2. 適切なCUDA 8.0バージョンをダウンロードする

CUDA 8.0 バージョンを選択するときは、お使いのコンピュータ システムと対応する環境に応じて選択する必要があります。ダウンロード リンクは対応するダウンロード リンク インターフェイスにあり、次の手順に従ってください: (私の場合は Ubuntu サーバー、16.04 です。ここでは、runfile インストール方法を選択します)



ヒント: 私はサーバー側でインストールしているので、誰かがサーバー側でインストールする場合は、ダウンロードしたファイルを最初にサーバーにアップロードすることを忘れないでください。

3. 対応するインストールを実行する

ダウンロードしたフォルダーで、次の操作を行います。

cd CUDA8 # 上記のダウンロードしたファイルを含むフォルダーに移動します sudo chmod 777 cuda_8.0.61_375.26_linux.run ## ファイルに特定の権限を与えます ./cuda_8.0.61_375.26_linux.run ## インストールを開始します

インストール手順を実行すると、以下に示すような Nvidia からの紹介ドキュメントが表示されます。


最も重要な点は、導入ドキュメントではユーザー側でいくつかのアクションが必要であり、そうしないとインストール プロセスを続行できないということです。導入ドキュメントをスキップするには、次の 2 つの方法があります。

  • YまたはNを入力する必要があるオプションが表示されるまでEnterキーを押し続けます。
  • 紹介文書を終了するにはEscキーを押してください

紹介文書をスキップすると、選択できるいくつかのオプションが表示されます: (各ステップの入力は、下の図で赤い丸でマークされています。説明は次のとおりです: CUDA 9.0 をサポートするドライバーがすでにインストールされているため、ドライバーを n に設定する必要があります。新しいドライバーをインストールする必要はありません)

4. 対応する環境設定を実行する

次のインストールパスを入力し、bashrcファイルを開いて、一番下に移動します(操作手順については下の図を参照してください)


ご覧のとおり、私のコンピューターでは、インポートされたパスはすべて cuda9.0 です。


ここで、先ほどインストールした CUDA 8.0 を使用する場合は、次の操作を行うだけです。
次の図に示すように、対応する cuda-9.0 を cuda-8.0 に置き換えます (保存して終了します)


次に、ターミナルで次のコマンドを実行してソースを取得します。

ソース ~/.bashrc 


次に、対応する検証を実行します。(下の図に示すように、CUDA 8.0 バージョンが正常にインストールされていることがわかります)

5. 複数のcudaバージョンを切り替える

上記の説明は、どちらか一方だけを使いたい場合です。頻繁にバージョンを切り替えたい場合は、次の方法をお勧めします。
~/.bashrc 内のすべての cuda 関連のパスを、/usr/local/cuda-8.0/ または /usr/local/cuda-9.0/ ではなく、/usr/local/cuda/ に変更します。

 #cuda バージョンを切り替える場合 rm -rf /usr/local/cuda# 以前に作成したソフトリンクを削除します sudo ln -s /usr/local/cuda-8.0 /usr/local/cuda
  nvcc --version # 現在の Cuda バージョンを表示します nvcc: NVIDIA (R) Cuda コンパイラ ドライバー
  著作権 (c) 2005-2016 NVIDIA Corporation
  Mon_Jan_23_12:24:11_CST_2017 に作成
  Cuda コンパイル ツール、リリース 8.0、V8.0.62
  
  #cuda8.0 から cuda9.0 への切り替え 
  rm -rf /usr/local/cuda
  sudo ln -s /usr/local/cuda-9.0 /usr/local/cuda
  nvcc --バージョン

~/.bahsrc ファイルの変更方法は上記と同じです。

6. まとめ

上記では、CUDA9.0 から CUDA8.0 に変換する方法についてのみ説明しています。CUDA9.0 に戻す場合は、逆のプロセスを実行し、bashrc ファイル内の cuda-8.0 を cuda-9.0 に置き換えてから、ソースを実行します。

Ubuntu16.04でのCUDA8.0とCUDA9.0の共存についての記事はこれで終わりです。CUDA8.0とCUDA9.0の共存についての詳細は、123WORDPRESS.COMの過去記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • UbuntuはCUDAの複数のバージョンをインストールし、いつでも切り替えることができます
  • Ubuntu での CUDA と CUDNN のインストールとアンインストールの実装
  • Ubuntu16.04にCUDA9.0をインストールするための詳細なチュートリアル
  • Ubuntu 20.04 に cuda10.1 をインストールする手順 (グラフィック チュートリアル)
  • Ubuntu インストール cuda10.1 ドライバ実装手順
  • Ubuntu 20.04 CUDA & cuDNN のインストール方法 (グラフィカル チュートリアル)
  • Ubuntu 16.04 に nvidia ドライバー + CUDA + cuDNN をインストールする詳細なチュートリアル
  • ubuntu16.04 に複数のバージョンの CUDA をインストールする方法

<<:  Vue.js スロットにおけるスコープ付きスロットの使用法の詳細な説明

>>:  node_modulesを削除して再インストールする方法

推薦する

HTML iframe と frameset の違い_PowerNode Java Academy

導入1.<iframe> タグ: iframe は、ページ内に内部フレームを生成するイン...

ウェブデザインのためのオンライン開発ツール10選の紹介

1. オンラインテキストジェネレーターBlindTextGenerator: デザイナーにとって、こ...

Nginx 仮想ホストの詳細な分析

目次1. 仮想ホスト1.1 仮想ホストの概念1.2 仮想ホストタイプ2. IP仮想ホストに基づく2....

Docker で MySQL データベースを使用して LAN アクセスを実現する

1. MySQLイメージを取得する docker pull mysql:5.6注: mysql5.7...

HTML に画像が存在しない場合にデフォルトの画像を表示する方法の例

画像リンク <img src="" /> jsを使用してURLが有効...

Vue.jsは画像切り替え機能を実装する

この記事では、画像切り替え機能を実装するためのVue.jsの具体的なコードを参考までに共有します。具...

Vue 開発プロジェクトで Font Awesome 5 を使用する方法

目次依存関係をインストールする構成使用1.アイコン検索ページに入る2. 使用したいアイコンの英語名を...

Vue はモバイル端末にマルチグリッド入力ボックスを実装

最近、同社は、下図に示すように、h5 ページ操作を完了するという要件を提示しました。 ネットで入手で...

JavaScript のカンマ式が含まれている場合について

JavaScript の if ステートメントで英語のカンマ「,」が表示されることがあります。これは...

CentOS7 構成 Alibaba Cloud yum ソースメソッドコード

Centos yumフォルダを開くコマンドcd /etc/yum.repos.d/を入力します。 w...

MySQL の乗算と除算の精度の不一致の問題 (除算後の小数点以下 4 桁)

質問今日、プロジェクト関数を書いていたとき、金額の統計計算を行い、単位を変換する必要がありました。そ...

HTML テーブルの行間隔を変更する方法の例

HTML テーブルを使用する場合、行間隔を変更する必要がある場合がありますが、余白、パディング、折り...

ul リスト タグ デザイン ウェブ ページ 複数列レイアウト

数日前、CSS で 3 列レイアウトを書いていたときに、突然この方法を思いつきました。このアイデアは...

XHTML 入門チュートリアル: XHTML タグ

XHTML タグの紹介<br />おそらく、前のセクションで、XHTML ファイルと通常...

mysql エラー 1045 (28000) - ユーザーへのアクセスが拒否される問題を解決する方法

問題の説明 (以下の説明は Windows 環境に限定されます): D:\develop\ide\m...