問題タブ [gpgpu]

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 投票する
3 に答える
764 参照

.net-4.0 - .net 4.0のparallel-forはGPUコンピューティングの特権を自動的に取得しますか?

.net 4.0のparallel-forはGPUコンピューティングの特権を自動的に取得しますか?または、GPUを使用するようにいくつかのドライバーで構成する必要があります。

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

cuda - Cuda 最適化手法

NP-Complete の問題を解決するために CUDA コードを作成しましたが、パフォーマンスは思ったほどではありませんでした。

「いくつかの」最適化手法について知っています(共有メモリ、テクスチャ、ゼロコピーを使用...)

CUDA プログラマーが知っておくべき最も重要な最適化手法は何ですか?

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

matrix - グローバル ワーク サイズは OpenCL のワーク グループ サイズの倍数である必要がありますか?

こんにちは: グローバル ワーク サイズ (ディメンション) は、OpenCL のワーク グループ サイズ (ディメンション) の倍数である必要がありますか?

もしそうなら、作業グループの次元の倍数ではなく、マトリックスを処理する標準的な方法はありますか? 次の 2 つの可能性が考えられます。

作業グループ ディメンションのサイズをグローバル作業ディメンションの係数に動的に設定します。(これにより、要素を見つけるオーバーヘッドが発生し、ワーク グループが最適でないサイズに設定される可能性があります。)

グローバル作業の次元を作業グループの次元の最も近い倍数に増やし、すべての入力および出力バッファーを同じに保ちますが、セグメンテーション違反を回避するためにカーネルの境界をチェックします。つまり、目的の出力の境界外の作業項目に対しては何もしません。 . (これはより良い方法のようです。)

2番目の方法は機能しますか?より良い方法はありますか?(または、作業グループのディメンションはグローバルな作業ディメンションを分割する必要がないため、必要ないのでしょうか?)

ありがとう!

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

frameworks - CUDAおよびOpenCLの前のGPGPU

私はCUDAとOpenCLについて読んでいて、これらのフレームワークが登場する前は、開発者はOPENGLやD3Dなどの低レベルのAPIしか使用できなかったことを学びました。残念ながら、私はそれについて多くの情報を見つけることができませんでした。

それは広く普及した、または商業的な慣行でしたか、それとも彼らが研究室や軍事研究所で使用したものでしたか?ここの誰かが以前のGPGPUプログラミングの経験があると確信しています。

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

cuda - How can I programmatically determine a GPU's memory bus width and clock rate?

How can I programmatically determine a GPU's memory bus width and memory clock rate? I want to use these numbers to compute the maximum theoretical memory bandwidth. I'm mostly interested in NVIDIA GPUs.

0 投票する
4 に答える
1755 参照

opencl - CPU と GPU で同時に実行するために OpenCL カーネルをスパンすることが可能

マルチコア プロセッサと GPU を搭載したコンピュータを使用しているとします。プラットフォームのすべてのコアで実行される OpenCL プログラムを作成したいと考えています。これは可能ですか、それともカーネルを実行する単一のデバイスを選択する必要がありますか?

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

string - GPU の文字列の配列を並べ替えるアルゴリズムはありますか?

並べ替える配列には約 100 万個の文字列があり、各文字列の長さは最大 100 万文字です。

GPU の並べ替えアルゴリズムの実装を探しています。

サイズが約 1MB のデータ ブロックがあり、サフィックス arrayを構築する必要があります。これで、非常に少量のメモリ内に 100 万個の文字列を格納できることがわかりました。

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

php - WAMPを介したGPGPUプログラムの実行

特定の計算を実行するためにGPUを使用するプログラムがあります。コマンドラインを使用してプログラムを正しく実行することができます。しかし、PHPを介して同じステートメントを実行しようとすると、問題が発生します。

私はwamp2.0を使用しており、exec関数とproc_open関数を使用してプログラムを実行しようとしましたが、プロセスが正しく開始されていても、GPU部分に関しては、プログラム自体でエラーが発生します。シェーダーはハードウェアでサポートされていません。」プログラムは、使用されているグラフィックカードの種類も最初に検出しますが、これも発生していません。

明確にするために、私はGPUプログラムを作成していません。また、同じステートメントをコマンドラインから直接実行できますが、phpを介して実行することはできません。直接ではなくphpからコマンドを実行することの違いは何ですか?

NVIDIAGT8600グラフィックカードを使用しています。どんな助けでも素晴らしいでしょう。

プログラムでは、glGetString(GL_VENDOR)を使用してグラフィックカードベンダーをチェックすると、NVIDIAではなくMicrosoftCorporationを取得します。これがすべての問題を引き起こしていますが、phpから実行した場合にのみ問題が発生する理由はまだわかりません。

また、コマンドラインからスタンドアロンでphpスクリプトを実行しようとしましたが、この場合、グラフィックカードが正しく検出され、すべてが正常に機能します。ブラウザを使用した場合にのみ機能しません。

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

c - CUDA __global__ 関数からヘッダー ファイル内の「関数のようなマクロ」を呼び出すことはできますか?

これは私のヘッダーファイルの一部ですaes_locl.h:

ファイルから関数.cuを宣言し、__ global__次のようなヘッダー ファイルをインクルードしました。

これにより、次のエラーメッセージが表示されます。

エラー: __ device__/__ global__ 関数からのホスト関数の呼び出しは、デバイス エミュレーション モードでのみ許可されます

プログラマーがその方法でマクロを正確に呼び出すサンプル コードがあります。

このように呼び出すことはできますか、それともまったく不可能ですか? そうでない場合は、マクロを書き直して目的の値を に割り当てる最善の方法についてのヒントをいただければ幸いS0です。

事前にどうもありがとうございました!!!

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

opengl - DirectX/Cuda/OpenGL による合計/テクスチャ アクセス可能なメモリ

DirectX のコンテキストで使用されるテクスチャ メモリとは対照的に、Cuda のコンテキストで使用されるテクスチャ メモリの違いを説明してください。グラフィックス カードに 512 MB のアドバタイズ メモリがあるとします。定数メモリ/テクスチャ メモリとグローバル メモリにどのように分割されますか。

たとえば、totalConstMem が 64KB、totalGlobalMem が 4GB の tesla カードを cudaGetDeviceProperties でクエリしたところ、必要なテクスチャ メモリの量を示す変数がありません。

また、DirectX などのグラフィックス API 経由でアクセスした場合の「テクスチャ メモリ」はどれくらいですか。私はこれらの API でプログラミングした経験がないので、どのようなメモリにどのようにアクセスできるのかわかりません。しかし、私の知る限り、すべてのメモリへのアクセスはハードウェアキャッシュです。私が間違っている場合は、私を修正してください。

KoppeKTop の回答の後:CUDA と DirectX の両方の場合、共有メモリはテクスチャ メモリの自動キャッシュとして機能しますか? とにかく、別のハードウェアキャッシュを持つことは意味がないと思います。また、カーネルで共有メモリ全体を使用している場合、テクスチャ メモリがキャッシュされないということですか?

ありがとう。