問題タブ [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.
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 の定義を変更することは可能ですか?
ありがとう
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 の許容範囲をわずかに超えていることは、私には少し奇妙に見えます。特に、他のテストは成功するので…?
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 アーキテクチャです。
私が間違っているのは何ですか、またはこの問題を引き起こしているハードウェア部分に違いがありますか?
また、グラフィックカードの消費電力をプログラムや理論計算で確認することはできますか?
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)
...そして、次の観察を行いました。
32
、64
、および128
ブロックサイズの実行時間は同じです。128
実行時間は、ブロック サイズとによって異なります129
。特に:128
実行時間は280msなので、129
実行時間は 386ms です。
128
ブロック サイズとの実行時間の違いの原因をお聞きしたいと思い129
ます。
私の GPU は tesla K80 です:
cuda - Direct3D 11 との Tesla k20m の相互運用性
Nvidia Tesla K20 と Direct3D 11 を使用できるかどうかを知りたいですか?
Direct3D を使用して画像をレンダリングしたいのですが、レンダリングした画像を CUDA で処理します [CUDA の相互運用性を実現する方法を知っています]。
Tesla k20 にはディスプレイ アダプターがありません (物理的にリモート アダプター)
Tesla C2075 ではなんとかできましたが、K20 ではデバイス アダプタを受信できません ( EnumAdapters コマンド )。
Tesla K20 と Direct3D を使用することは可能ですか?
率直に言って、このコードはメモ帳で書かれました
ありがとう
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 から取得した同時実行のプロファイルを添付します。
ここで、同じシナリオの動作を示したいと思いますが、matrixMul サンプルの 2 つのインスタンスを同時に実行します。
ご覧のとおり、最初のシナリオでは、カーネルが他のカーネルの終了を待ちます。一方、2 番目のシナリオ (matrixMul) では、両方のコンテキストのカーネルが同時に実行されます。
ありがとうございました。