gpgpu

    0

    1答えて

    サブバッファであるconstant引数を取るOpenCL(1.2)カーネルがあります。このカーネルを実行すると、代わりに親バッファが使用されているようです。 global const引数を使用すると、期待どおりに動作します。 私はインテル(Linux、beignet git)とnVidia(Linux、367.44-3)の実装を別々のマシンで再現できる点を除いて、これをドライバのバグに入れます。ど

    0

    1答えて

    サイズ2^Lの未ソート1D配列の特定の値を検索するためにGPUを使用したいとします(Lは正の偶数です)。配列内のすべての値はユニークです。 パラレルリダクション(ピンポン技術)を使用して検索結果を1つの番号に減らすことはできますか? 私の直感はそれが可能であると言いますが、私はどのように起動するのか分かりません。誰か助けてくれますか?私は数日間それに固執しています!どんな提案も歓迎です、ありがとう

    1

    1答えて

    2次元の大きさがM×Nであり、Nは2以上の累乗であり、Mは2の累乗ではない任意の整数です。例えば、配列Aのサイズは200x32です。 配列の行全体でreduce(add)操作を行うことで、配列Aをサイズ1x32に縮小したいと考えています。 Blelloch/Hillisスキャンアルゴリズムを使用して連続する要素を追加することで、私がやってきた削減の大半は配列を単一の値に減らします。しかし私の場合、

    0

    1答えて

    ハッシュを実行するためのCUDAカーネルを作成しています。入力を取得したら、まず定義済みのハッシュバケットサイズでハッシュしてみてください。オーバーフローが発生した場合は、より大きなバケットサイズを使用してハッシュを再実行する必要があります。だから私はバケットのオーバーフローが発生した場合、私はホストコードにエラーを報告することができますビルドされたcuda関数があるかどうか疑問に思っています。私

    1

    1答えて

    融合していないメモリアクセスを結合したものに簡単に変換する方法があるかどうかは疑問でした。のは、この配列の例を見てみましょう:今 dW[[w0,w1,w2][w3,w4,w5][w6,w7][w8,w9]] 、私はその後、ブロック0アクセスdW[0]でのスレッド0とブロック0アクセスdw[1]に1スレッドならば、それはグローバルメモリ内の合体アクセスだということを知っています。問題は、私は2つ

    0

    1答えて

    私は現在問題に直面しており、正しい解決策が何であるか分かりません。私はそれを説明しようとし、誰かが私のための良い解決策を持っていることを願っています: 私は2つの大きなデータ配列を持っています。私が閲覧しているものは、50^3〜150^3のデータサンプル(通常50〜100、まれな最悪ケースのシナリオ150)です。 すべてのサンプルについて、同じサイズの別の構造体に対してクエリを作成したい(合計の膨

    0

    1答えて

    私は現在、PGI(15.10)コンパイラでOpenACCを使用して、ほとんどのルーチンをGPGPUに移植することによって、スペクトル要素流体ソルバーを加速しようとしています。ソースコードはOO-Fortranで書かれています。このソフトウェアには、他の関数やサブルーチンを呼び出すサブルーチンの「レイヤー」があります。 openaccを使ってGPUにコードを渡すには、移植する必要がある各ルーチンに

    -1

    1答えて

    ワープ中のスレッド数が32以上になることがあります。何故ですか?スレッド数が32スレッド未満の場合、リソースが十分に活用されない、またはメモリのレイテンシを許容できないことを意味しますか?

    1

    1答えて

    浮動小数点テクスチャについて多くの人が議論していないようです。私はそれらを使っていくつかの計算を行い、結果を別のサーフェスシェーダに転送します(特定の変形を得るために)。それはクールです。シェーダで結果をダイジェストすると、私は常にうまくいきます。私は浮動小数点テクスチャを塗りつぶしたGraphics.Blitを呼び出した直後に結果をfloat []配列にします。これはどのように達成できますか?