1

インストールしました: CUDA sdk 4.2 64、CUDA ツールキット 4.2 64、CUDA devdriver 4.2 64、

\windows ですべての nvcuda.dll を確認しました - それらはすべて 4.2 バージョンですが、ドライバー API でコンテキストを作成し、cuCtxGetApiVersion でバージョンを確認すると、「3010」と表示されます

そのバージョンはあまり気にしませんが、そのコンテキストでランタイム API を使用しようとすると (それらを混在させる必要があります)、エラー 49(cudaErrorIncompatibleDriverContext) が表示されます。

何が起こっているのか、それを連携させる方法はありますか?

Windows の問題ではないようです。Linux で同じプロジェクトを実行すると、同じ 3010 API バージョンになります。

4

1 に答える 1

0

私は問題を解決しました-実行中に「cuCtxCreate」関数を直接エクスポートしていました(これは他の言語です-cuda.hはありません)。オリジナルのcuda.hiを調べたところ、ある種のsmartassの定義に基づいて、その関数の別の名前が定義されていることがわかりました。そして、その新しい関数「cuCtxCreate_v2」は適切なコンテキストを作成します。

/ facepalm

于 2012-07-31T11:23:58.490 に答える