2017-02-22 10 views
4

nvccを実行しようとすると、この警告が表示されます。nvcc warning in cuda 8.0

私はcuda toolket 8.0を持っています。私のシステムにはNvidia GTX 480があります。

nvcc warning : The 'compute_20', 'sm_20', and 'sm_21' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning). 

誰もこの警告を説明できますか?

詳細情報が必要な場合はお知らせください。

答えて

11

CUDA開発チーム(つまりNVIDIA)が、コンピューティング能力(cc)2.xデバイスがこれ以上サポートされないことをCUDA開発者に知らせる方法です。

それは次のメジャーCUDAリリースがしたがって、あなたのGTX 480を含む、コンピューティング能力の2.xデバイスのためのサポートをドロップすると仮定するのが妥当だ、CUDA 8.0には、そのデバイスをサポートする最後のCUDAツールキット可能性が高いです。

CUDA 8のデフォルトのターゲットアーキテクチャがcc 2.0であるため、ターゲットアーキテクチャが指定されていなくても警告が表示されます。

cc3.0以降のデバイスをターゲットにする場合は、デバイスに合った適切なアーキテクチャを指定することで、コンパイル出力から警告を取り除くことができます。

nvcc -arch=sm_30 ... 

たとえば、cc 3.0以上のデバイスをターゲットにする。警告メッセージ自体に示されているように、警告を抑制するコマンドラインスイッチを指定することもできます。

cc 1.xデバイスのサポートが廃止されたCUDA 6.xのタイムフレームでも同様のことが起こりました。 CUDA 7.0ではサポートが中止されました。

+0

ありがとうございました。 –

+0

どのsm_xxを設定すればよいでしょうか?私はGTX 1070を所有しており、このエラーも発生しています... CUDA 8を使用する – bluesummers

+0

あなたのデバイスの計算機能を見つけてください。あなたはそれを行う方法がわからない場合は、Googleが助けることができます。デバイスのコンピューティング機能を発見したら、スイッチでその機能を使用します。たとえば、GTX 1070の計算機能がcc6.1であることが判明した場合は、 '-arch = sm_61'を使用します –