問題タブ [tesla]

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 に答える
904 参照

memory - cuMemGetInfo() と size_t の制限

関数 cuMemGetInfo() のおかげで、GPU デバイスの空きメモリと合計メモリを知りたいです。

私は結果を得ています:

64 ビットの Windows 7 で 6 GB のメモリを搭載した Tesla C2070 を使用しています。ただし、アプリケーションは 32 ビットで実行されています。私のコードは私に次のようなものを与えるはずです:

I 4095*1024*1024 = 4293918720 は約 2^32 (丸め後) です。実際、size_t は unsigned int (4 バイト) へのポインターです。

だからここに私の質問があります。たとえば、unsigned long を指すように size_t の定義を変更することは可能ですか?

ありがとう

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

python - PyCUDA test_cumath.py が cosh で失敗する

TESLA C2075 を搭載したマシンに pycuda をインストールしました。CUDA-6.0コンパイラがインストールされたUbuntu 14.04で実行しています。

Python 2.7.9 (anaconda ディストリビューション経由) と numpy 1.9.0 を使用して、Andreas Kloeckner が彼の Web サイトで提供している ZIP ファイルから pycuda 2014.1 をインストールしました。( http://mathema.tician.de/software/pycuda/ )

その ZIP ファイルによって提供されるテストを実行すると、ファイルを除いてすべてうまくいきtest_cumath.pyます。次のエラーが表示されます。

この GPU と CPU の cosh の結果の不一致がどこから来るのか、誰か提案がありますか? 2.38e-6 の測定値で 2e-6 の許容範囲をわずかに超えていることは、私には少し奇妙に見えます。特に、他のテストは成功するので…?

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

c - Tesla K20 での CUDA プログラムの実行は GTX 965 よりも遅い

パフォーマンス分析のためにさまざまな GPU カードを比較する必要があるプロジェクトを行っています。

両方の GPU で Canny Edge Detection に同じ cuda コードを実行したところ、gtx 965 が Tesla K20 よりもはるかに高速 (200%) であることがわかりました。また、テスラ C2075 がテスラ K20 と同じように動作していることもわかりました。

私の知る限り、K20 には 2496 コア、965 には 1024 コア、C2075 には 448 コアがあります。K20 と C2075 は NVIDIA Kepler アーキテクチャで、965 は Maxwell アーキテクチャです。

私が間違っているのは何ですか、またはこの問題を引き起こしているハードウェア部分に違いがありますか?

また、グラフィックカードの消費電力をプログラムや理論計算で確認することはできますか?

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

c++ - ブロックで 128 スレッドを使用した後、cuda プログラムが遅くなったのはなぜですか?

次のコードを使用した単純な cuda アプリケーションがあります。

gpu カーネル呼び出しは次のdaxpy<<<1, 512>>>(n, a, dx, dy)とおりで、さまざまなブロック サイズを使用していくつかのテストを実行しました。

  • daxpy<<<1, 32>>>(n, a, dx, dy)
  • daxpy<<<1, 64>>>(n, a, dx, dy)
  • daxpy<<<1, 128>>>(n, a, dx, dy)
  • daxpy<<<1, 129>>>(n, a, dx, dy)
  • daxpy<<<1, 512>>>(n, a, dx, dy)

...そして、次の観察を行いました。

  • 3264、および128ブロックサイズの実行時間は同じです。
  • 128実行時間は、ブロック サイズとによって異なります129。特に:
    • 128実行時間は280msなので、
    • 129実行時間は 386ms です。

128ブロック サイズとの実行時間の違いの原因をお聞きしたいと思い129ます。

私の GPU は tesla K80 です:

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

cuda - Direct3D 11 との Tesla k20m の相互運用性

Nvidia Tesla K20 と Direct3D 11 を使用できるかどうかを知りたいですか?

Direct3D を使用して画像をレンダリングしたいのですが、レンダリングした画像を CUDA で処理します [CUDA の相互運用性を実現する方法を知っています]。

Tesla k20 にはディスプレイ アダプターがありません (物理的にリモート アダプター)

Tesla C2075 ではなんとかできましたが、K20 ではデバイス アダプタを受信できません ( EnumAdapters コマンド )。

Tesla K20 と Direct3D を使用することは可能ですか?

率直に言って、このコードはメモ帳で書かれました

ありがとう

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

concurrency - Tesla K20 を共有する 2 つのプロセスの同時実行

GPU リソースを共有しながら同時に実行するためにカーネルの 2 つのインスタンスを起動すると、奇妙な動作が発生します。

スレッドが (ループを使用して) 操作を数回実行する単一の SM (マルチプロセッサ) で実行することを目的とした CUDA カーネルを開発しました。

カーネルはブロックのみを作成する準備ができているため、1 つの SM のみを使用します。

シンプル.cu

したがって、カーネルを実行すると:

time ./simple

私は得る

real 0m36.659s user 0m4.033s sys 0m1.124s

それ以外の場合、2 つのインスタンスを実行すると:

time ./simple & time ./simple

プロセスごとに取得します:

real 1m12.417s user 0m29.494s sys 0m42.721s

real 1m12.440s user 0m36.387s sys 0m8.820s

私の知る限り、実行は同時に実行され、1 つ (約 36 秒) 続く必要があります。ただし、それらは基本時間の 2 倍続きます。GPU には 13 の SM があり、それぞれが 1 つのブロックを実行する必要があることがわかっているため、カーネルは 1 つのブロックのみを作成します。

それらは同じ SM で実行されていますか?

異なる SM で同時に実行するべきではありませんか?

編集済み

わかりやすくするために、nvprof から取得した同時実行のプロファイルを添付します。

プロファイル、最初のインスタンス simple.cu プロファイル、最初のインスタンス

プロファイル、2 番目のインスタンス simple.cu プロファイル、2 番目のインスタンス

ここで、同じシナリオの動作を示したいと思いますが、matrixMul サンプルの 2 つのインスタンスを同時に実行します。

プロファイル、最初のインスタンス ここに画像の説明を入力

プロファイル、2 番目のインスタンス ここに画像の説明を入力

ご覧のとおり、最初のシナリオでは、カーネルが他のカーネルの終了を待ちます。一方、2 番目のシナリオ (matrixMul) では、両方のコンテキストのカーネルが同時に実行されます。

ありがとうございました。