1

私はしばらくCUDA 4.0を使用しています。最近、CUDA 4.1 の新しい API をダウンロードしてコピーしました (Thrust のラムダ式のサポートが必要です) が、私のソリューションのプロパティはまだ古い 4.0 API にリンクされています。動的に変更するにはどうすればよいですか? $(CudaToolkitLibDir)変数を変更する必要があると思いますが、正確にはどうすればよいでしょうか?

編集:私は推力::プレースホルダーを使用しようとしているので、私はこれを求めています

4

1 に答える 1

2

特定の質問に答えるには:

  • VS2005 または VS2008 の場合、カスタム ビルド ルールを変更して、4.0 ではなく CUDA 4.1 ルールを選択する必要があります。詳細については、この投稿を参照してください。
  • VS2010 の場合、ビルドのカスタマイズを変更して、代わりに CUDA 4.1 を選択する必要があります。詳細については、この投稿を参照してください。

コメントを見ると、 NVIDIA Web サイトからダウンロードできる CUDA 4.1 ドライバーをインストールする必要があることも明らかです。4.1 にアップデートしたときに最初にプログラムがクラッシュしたとおっしゃいましたがcudaMalloc()、エラー メッセージを確認する必要があります (通常、すべての API 呼び出しでエラーを確認する必要があります)。ドライバーが最新でない場合、最初の CUDA API 呼び出しで「ドライバーのバージョンが不十分です」というメッセージが返されます。

于 2012-03-14T10:00:24.300 に答える