質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
CUDA

CUDAは並列計算プラットフォームであり、Nvidia GPU(Graphics Processing Units)向けのプログラミングモデルです。CUDAは様々なプログラミング言語、ライブラリ、APIを通してNvidiaにインターフェイスを提供します。

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

解決済

AnacondaのGPU環境再構築で、CUDAをダウングレードできない

Sparrow42
Sparrow42

総合スコア36

CUDA

CUDAは並列計算プラットフォームであり、Nvidia GPU(Graphics Processing Units)向けのプログラミングモデルです。CUDAは様々なプログラミング言語、ライブラリ、APIを通してNvidiaにインターフェイスを提供します。

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

1回答

0評価

1クリップ

1551閲覧

投稿2020/12/08 07:38

前提・実現したいこと

1週間ほど前にAnacondaのGPUが効かなくなったため、環境構築のやり直しを試みています。
その中で、CUDAをバージョン10.1から10.0にダウングレードしたところ、CUDA自体が反応しなくなってしまいました。ダウングレードの仕方が適切でなかった可能性があります。
原因にお心当たりのある方にご教授いただければ幸いです。

実行環境

Windows 10
NVIDIA GeForce GTX 1050

発生している問題・エラーメッセージ

CUDAのインストール確認のメッセージは以下のようになっています。

(keras-gpu7) C:\Users\furu>nvcc -V 'nvcc' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。

問題発生までに行ったこと

##CUDAダウングレードに至った経緯
GPUが効かなくなってから改めてtensorflowが公表しているGPU環境のバージョン対応を調べたところ、誤ってLinuxのバージョン対応表に準拠していたことが判明しました。次の画像の選択部分が構築していたバージョンです。

Linuxのバージョン対応表
windowsのバージョン対応表は次の通りでした。選択部分が今回構築しようとしているバージョンです。
windowsのバージョン対応表
元々、1つ上のtensorflow-gpu2.1.0で検討していたのですが、cuDNN7.4にCUDA10.1に対応するバージョンが存在しなかったため、2.0.0で行いました。

バージョン変更方法

変更したのは、MSVC2019→1017、CUDA10.1→10.0です。(CUDAが不具合のため、cuDNN・Python・tensorflowはまだです。)

MSVC2019→1017

2019は消さずに2017を追加する形で変更しました。

CUDA10.1→10.0

アンインストールとインストールの作業の流れは以下の通りです。

  1. 10.0をインストール →しかし10.1と共存してしまう。CUDAも動作せず
  2. 10.1をアンインストール(方法は後に説明)→CUDA動作せず
  3. 10.0もアンインストール
  4. 10.0をインストール →CUDA動作せず

アンインストールは2つの方法で行いました。

  • コントロールパネルからNVIDIA関連のプログラムを消去

(具体的には、NVIDIA関連の中でもインストール日が構築した日になっているものを消しました。消去したプログラム名は忘れてしまいました。メモしておくべきでした。。)

  • NVIDIA GPU Computing Toolkitからv10.〇フォルダを消去

これらの方法は、こちらのサイトを参考にしました。

(※4について、正確には10.0をインストールしてからv10.1のフォルダを消去しました。)

現在のプログラム構成は次の通りです。並び順はインストール日順です。
プログラム構成

試したこと

これ以上触るのが怖くて、試していません。。
バージョン対応の問題が解決できるなら、CUDA10.1に戻すという選択肢もありかと考えています。現状、その他の選択肢は思いついていないです。

どなたか何卒よろしくお願いします。

良い質問の評価を上げる

以下のような質問は評価を上げましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

  • プログラミングに関係のない質問
  • やってほしいことだけを記載した丸投げの質問
  • 問題・課題が含まれていない質問
  • 意図的に内容が抹消された質問
  • 過去に投稿した質問と同じ内容の質問
  • 広告と受け取られるような投稿

評価を下げると、トップページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

jbpb0

2020/12/08 09:17

> 1つ上のtensorflow-gpu2.1.0で検討していたのですが、cuDNN7.4にCUDA10.1に対応するバージョンが存在しなかったため、2.0.0で行いました。 英語のページには、違うこと書いてあります https://www.tensorflow.org/install/source_windows?hl=us#gpu 日本語ページは間違ってるけど英語ページは正しいのか、というと、それの保証もありませんよね 日本語ページが間違っているなら、英語ページも間違ってるのかもしれません ちゃんと更新されてないんですよ、たぶん それに、上記ページは、あくまでもGoogleがテスト済みっていうだけで、それじゃないとダメってわけでもない エラーが出ずに動くのなら、あんまり気にしなくてもいいのかもしれませんよ
Sparrow42

2020/12/08 10:52

回答いただきありがとうございます! 英語ページだと違ったのですね。。正しいかは分からないですが、一旦CUDA10.1でも試してみます。
jbpb0

2020/12/08 12:19

> 'nvcc' は、内部コマンドまたは外部コマンド、 > 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 CUDAのインストール時に、必要なフォルダが環境変数Pathに追加されなかったのかもしれません インストールがエラーが出ず正常に終了したら、インストール先に指定した場所に必要なファイル(nvcc.exeとか)があるか確認して、ちゃんとあればPathに追加したらいいと思います 下記Webページの一番下も参考に https://www.tensorflow.org/install/gpu#windows_setup
Sparrow42

2020/12/08 12:35

承知しました! なるほど、パスがそもそも追加できていない可能性ですね。 CUDA10.1変更の前にパスの確認をしてみます!
Sparrow42

2020/12/08 12:56

パスを確認したところ、v10.1のままになっていました! システムの環境変数では10.0になっているのに、コマンド上でPathを打つとv10.1になっていました。 多分更新されていないだけかと思うので修正してみます!
Sparrow42

2020/12/08 13:11

Anacondaを再起動したところ、無事nvccコマンドが通りました! CUDAの問題は解決とさせていただきます。ご丁寧に回答していただきありがとうございました! ただ、GPU構築までできるか自信がないので、また質問する機会があれば是非お願いします!

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

CUDA

CUDAは並列計算プラットフォームであり、Nvidia GPU(Graphics Processing Units)向けのプログラミングモデルです。CUDAは様々なプログラミング言語、ライブラリ、APIを通してNvidiaにインターフェイスを提供します。

Anaconda

Anacondaは、Python本体とPythonで利用されるライブラリを一括でインストールできるパッケージです。環境構築が容易になるため、Python開発者間ではよく利用されており、商用目的としても利用できます。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。