問題タブ [cuda]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
2171 参照

memory - CUDAとCuBlasのメモリ管理

cudamalloc()またはcublasalloc()関数を使用して割り当てられた行列にメモリブロックを使用して、cublas関数を呼び出すことができることに気付きました。cudamalloc()を使用して配列を使用することには他の利点もありますが、cublasalloc()ではなくcudamalloc()を使用して割り当てられた配列の場合、行列の転送速度と計算は遅くなります。なぜそうなのですか?いくつかのコメントを聞くのは素晴らしいことです。

0 投票する
1 に答える
1180 参照

cuda - 同じグラフィックカードでOpenGLを使用してグラフィックをレンダリングするアプリケーションを使用したCUDAホストからデバイス(またはデバイスからホスト)のmemcpy操作

私は自分の問題をCUDAフォーラムに投稿しましたが、2つのフォーラムの間にかなりの数の異なる聴衆がいる場合に備えて、ここにリンクを投稿してより多くのアイデアを得ることが適切かどうかわかりません。リンクはこちらです。特定のCUDAメモリアクセスと管理の問題の詳細についてはまだ返信がないため、ご不便をおかけして申し訳ありません。この質問に対するコメントに感謝します。前もって感謝します。

0 投票する
2 に答える
1115 参照

cuda - CUDA、実行時にカーネル内のレジスタの数を調べます

実行時にcudaカーネルが使用しているレジスタの数を確認するにはどうすればよいですか?コンパイル中に情報を見つける方法は知っていますが、数値をハードコーディングしたくありません

ありがとう

0 投票する
3 に答える
3335 参照

memory-management - ホストとデバイスの両方からアクセス可能な CUDA メモリ割り当て

ホスト (CPU) とデバイス (GPU) の両方からアクセスできるメモリ ブロックを割り当てる方法を見つけようとしています。cudaHostAlloc() 関数を使用して、CPU と GPU の両方にアクセスできるページロック メモリを割り当てる以外に、そのようなメモリ ブロックを割り当てる方法はありますか? コメントありがとうございます。

0 投票する
3 に答える
14414 参照

cuda - ソフトウェア実装を使用して GPU なしで CUDA を実行する方法は?

私のラップトップには nVidia グラフィック カードがなく、CUDA で作業したいと考えています。Web サイトによると、CUDA は cuda 以外のハードウェアでもエミュレーション モードで使用できます。しかし、Web サイトからダウンロードした CUDA ドライバーをインストールしようとすると、「現在のハードウェアと互換性のあるドライバーが見つかりませんでした。セットアップは終了します」というエラーが表示されます。

また、Visual Studio 2008 で SDK からサンプル コードを実行しようとすると、.obj ファイルが見つからないというエラーが発生します。

0 投票する
3 に答える
6455 参照

cuda - CUDA コンパイルのエラー

CUDA SDK でサンプル コードを実行しようとすると、このエラーが発生します。私はCUDA 2.3とVisual Studio 2008を持っています

リンク: 致命的なエラー LNK1181: 入力ファイル 'cutil32D.lib' を開けません

これを解決する方法はありますか?

0 投票する
2 に答える
1455 参照

arrays - 多くの小さい、不均等なサイズのアレイのCUDA削減

CUDAで比較的小さいがサイズが異なる多数のアレイの平均/標準偏差を計算するための最良のアプローチを誰かが提案できるかどうか疑問に思っていますか?

SDKの並列削減の例は、単一の非常に大きなアレイで機能し、サイズはブロックあたりのスレッド数の倍数であると便利なようですが、私の場合はかなり異なります。

ただし、概念的には、それぞれに2つのコンポーネントが含まれるオブジェクトが多数あり、これらの各コンポーネントにはupperと座標があります。すなわちlowerxy

これらの配列のそれぞれの800長さはおおよそですが、オブジェクト間で異なります(オブジェクト内ではありません)。

上記は配列を表すための私の方法であり、私のデータはC構造体などに格納されていないことに注意してください。データは必要な方法で整理できます。重要なのは、各配列について、平均、標準偏差、そして最終的にはヒストグラムを計算する必要があり、1つの特定のオブジェクト内で、配列間の比率と差を計算する必要があるということです。

このデータをGPUデバイスに送信し、スレッドブロック階層を整理するにはどうすればよいですか?私が持っていたアイデアの1つは、すべての配列をゼロパッドして同じ長さにし、各オブジェクトでブロックのグループが機能するようにすることでしたが、このメソッドが機能する場合は、さまざまな問題があるようです。

前もって感謝します

0 投票する
2 に答える
369 参照

multithreading - MFC アプリケーションのクリーンアップのためのスレッドの切り替え

特定のスレッドによって作成された特定のメモリ オブジェクトをクリーンアップしようとしています (したがって、そのスレッドにのみアクセスできます)。私がそれを達成する唯一の方法は、そのメモリブロックを解放するときにその特定のスレッドに切り替えることです。

これは、特定のメモリ コンテキストを割り当てる方法です: http://imagebin.ca/img/S6mwZBFu.jpg

これは私がやろうとしたことです:

代替テキスト http://imagebin.ca/img/DeTe9Z6h.jpg

私は元々、次のような方法でメモリ コンテキストの作成と破棄を追加しました。

ただし、このアプローチはうまく機能していません。つまり、「delete theCudaObj;」をクリーンアップしているときにプログラムがクラッシュします。ライン。クリーンアップ時にアクティブなスレッドを切り替えるか、CUDA コンテキストを両方のスレッドからアクセスできるように割り当てて、両方のスレッドから簡単にクリーンアップしてアクセスできるようにすることができるかどうか疑問に思っています。提案をお寄せいただきありがとうございます。

0 投票する
2 に答える
679 参照

c - 括弧のあるループとないループはCで異なる方法で処理されますか?

デバッガーでC/CUDAコードをステップスルーしていました。

そして、出力は正しいのに、デバッガーが1つのステップでそれを通過していたので、私は完全に混乱しました。次のスニペットのようにループを中かっこで囲むと、デバッガーで期待どおりに動作することに気付きました。

したがって、Cまたはデバッガーで異なる方法で処理されるループの括弧はありません。または、おそらくCUDAに固有です。

ありがとう

0 投票する
2 に答える
1855 参照

cryptography - CUDA__device__カーネル内でchar配列のすべての組み合わせを生成します

助けが必要です。私はCUDA(2.3 / 3.0beta)で一般的なブルートフォーサー/パスワード推測をプログラムし始めました。定義されたASCII文字セットのすべての可能なプレーンテキスト「候補」を生成するために、さまざまな方法を試しました。

このサンプルコードでは、74 ^ 4の可能なすべての組み合わせを生成します(そして結果をhost / stdoutに出力します)。

CUDAコード(2.3および3.0bでコンパイル-sm_10)-combinaions.cu:

コードは問題なくコンパイルされるはずですが、出力は私が期待したものではありません。

エミュレーションモードの場合:

リリースモードの場合:

また、コードのさまざまな行で__threadfence()または__syncthreads()を使用しましたが、成功しませんでした...

ps。可能であれば、カーネル関数内のすべてを生成したいと思います。また、ホストのメイン関数内で可能なプレーンテキスト候補とデバイスへのmemcpyの「事前」生成を試みました。これは、非常に限られた文字セットサイズでのみ機能します(デバイスメモリが限られているため)。

  • 出力についてのアイデア、なぜ繰り返すのか(__threadfence()または__syncthreads()でも)?

  • CUDAカーネル内でプレーンテキスト(候補)を高速に生成する他の方法:-)(〜75 ^ 8)?

どうもありがとう

ジャンに挨拶