ホームページ >バックエンド開発 >Python チュートリアル >PythonでGPUアクセラレーションを使用する方法

PythonでGPUアクセラレーションを使用する方法

(*-*)浩
(*-*)浩オリジナル
2019-05-29 15:33:2113211ブラウズ

多くのチュートリアルを読み、os.environ["CUDA_VISIBLE_DEVICES"] = "1" または export CUDA_VISIBLE_DEVICES=1

を使用することについて言及しましたが、コードに追加しても速度は向上しませんでした。問題は、上記の 2 行のコードは、コンピューターに 3 つ以上の GPU が搭載されている場合にのみ機能することです。

PythonでGPUアクセラレーションを使用する方法

私のコンピューターには GPU が 1 つしかないため、パラメーター「1」を「0」に変更する必要があります。そうしないと、デバイス「1」が見つかりません。CPU は、デフォルトで使用されるため、速度は向上しません。

ターミナルで Python プログラムを実行している場合は、次のコマンドを使用します: CUDA_VISIBLE_DEVICES=0 python filename.py

複数のカードがあり、複数の GPU トレーニングを指定したい場合は、次のように設定できます。次のようになります:

def set_gpus(gpu_index):
    if type(gpu_index) == list:
        gpu_index = ','.join(str(_) for _ in gpu_index)
    if type(gpu_index) ==int:
        gpu_index = str(gpu_index)
    os.environ["CUDA_VISIBLE_DEVICES"] = gpu_index

これは、set_gpu 関数を呼び出すことで実現できます。

CUDA_VISIBLE_DEVICES はすべてであることに注意してください。 1つ!個性的!キャラクター!母親!完全に正しく書かれている必要があります。誤って CUDA_VISIBLE_DIVICES または CUDA_VISIABLE_DEVICES を書いた場合、コードはエラーを報告しませんが、GPU 呼び出しは成功しません。

以上がPythonでGPUアクセラレーションを使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。