ここで検索しましたが、古い投稿しか見つかりませんでした。
GPUでトレーニングを実行したい。いくつかのフォーラムで、CUDAを使用したいものに.cuda()
を適用する必要があることがわかりました(プログラムをクラッシュさせることなく、可能な限りすべてに適用しました)驚くことに、これによりトレーニングがさらに遅くなります。
次に、このtorch.set_default_tensor_type('torch.cuda.FloatTensor')
を使用してCUDAを使用できることがわかりました。両方を有効にしても、何も変わりません。何が起こっている?
モデル全体でCUDAを確実に有効にする方法はありますか?
編集:これは重複として報告されました。そうではありません。私がリンクされた投稿は私の質問のすべてに答えたわけではありません。
また、MyModel()
はどういう意味ですか?コードの例など、もっと具体的な例が必要です。 (これは私が言及している投稿です)
tensor.to(device)
コマンドを使用して、テンソルをデバイスに移動できます。
.to()
コマンドは、リンク先の投稿のように、モデル全体をデバイスに移動するためにも使用されます。
もう1つの可能性は、t = torch.tensor(some_list, device=device)
のように、_device=
_キーワード引数を使用して作成中にテンソルのデバイスを設定することです
コードでデバイスを動的に設定するには、device = torch.device("cuda" if torch.cuda.is_available() else "cpu")
を使用して、可能であればcudaをデバイスとして設定できます。
PyTorch Tutorials と上記のリンク先のドキュメントには、役立つ可能性のあるさまざまなコード例があります。