【GPGPU】くだすれCUDAスレ part7【NVIDIA】at TECH
【GPGPU】くだすれCUDAスレ part7【NVIDIA】 - 暇つぶし2ch1:デフォルトの名無しさん
14/11/20 23:14:46.66 jr3oZn27.net
このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。
CUDA使いが優しくコメントを返しますが、
お礼はCUDAの布教と初心者の救済をお願いします。

CUDA・HomePage
URLリンク(developer.nvidia.com)

関連スレ
GPGPU#5
スレリンク(tech板)l50

前スレ
【GPGPU】くだすれCUDAスレ【NVIDIA】
スレリンク(tech板)
【GPGPU】くだすれCUDAスレ pert2【NVIDIA】
スレリンク(tech板)
【GPGPU】くだすれCUDAスレ pert3【NVIDIA】
スレリンク(tech板)
【GPGPU】くだすれCUDAスレ pert4【NVIDIA】
スレリンク(tech板)
【GPGPU】くだすれCUDAスレ part5【NVIDIA】
スレリンク(tech板)
【GPGPU】くだすれCUDAスレ part6【NVIDIA】
スレリンク(tech板)

2:デフォルトの名無しさん
14/11/20 23:15:41.57 jr3oZn27.net
関連サイト
CUDA
URLリンク(www.nvidia.co.jp)

CUDAに触れてみる
URLリンク(chihara.naist.jp)

CUDA のインストール
URLリンク(blog.goo.ne.jp)

NVIDIAの「GeForce 8800 GT(G92)」と次に控える64-bit GPUアーキテクチャ
URLリンク(pc.watch.impress.co.jp)

CUDAを使う
URLリンク(tech.ckme.co.jp)

NVIDIA CUDAを弄ってみた その2
URLリンク(dvd-r.sblo.jp)

CUDAベンチ
URLリンク(wataco.air-nifty.com)


3:2/cuda_2044.html KNOPPIX for CUDA http://www.yasuoka.mech.keio.ac.jp/cuda/



4: 【東電 69.8 %】
14/11/21 00:13:37.04 kFWiXf0I.net
>>1
ああ、キミ!また会えたね。久しぶりだ。どうだいあの件は?どうなったか説明したまえな。

神戸市の東、芦屋西宮の知的障害者施設で未成年利用者に性的な行為をして淫行条例で逮捕された三田谷学園元職員の堂垣直人(西宮市老松町)は、結局どういう罪になったの?
被害者家族のケアを芦屋市役所と兵庫県警はちゃんとやったのか?
差別や虐待は環境を選べない子供には関係ない。

URLリンク(www.youtube.com)


まあ、こっちに座れよ。ゆっくり話そうじゃないか。

5:デフォルトの名無しさん
14/11/21 07:36:45.42 JsFj8Vej.net
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
URLリンク(i.imgur.com)
URLリンク(cisburger.com)
URLリンク(up.pangya.tv)

6:デフォルトの名無しさん
14/11/21 18:05:42.00 qiUQrZk/.net
syncthreadsとthreadfence_blockの違いが分かりません
syncthreadsだけで十分な気がしますが、どういう時に使い分けるのでしょうか?

7:デフォルトの名無しさん
14/11/22 13:34:27.11 Ke1g3qvZ.net
>>5
URLリンク(shobomaru.wordpress.com)

メモリの書き込み競合防止をするかどうかの違いみたいです。

これってatomic命令より軽いのか知らん?

8:デフォルトの名無しさん
14/11/22 13:48:05.92 S8C7U0PL.net
>>6
競合防止なんて書いてる?
複数のスレッドが同じメモリに書き込む時はatomicをsyncthreadsやthreadfenceと同時に使わないといけない気がする(誰か教えてください)

9:デフォルトの名無しさん
14/11/22 22:18:58.72 Ke1g3qvZ.net
すみません、誤読しました。
「同じブロック内の全スレッドがこの命令にたどり着く」
まで待つかどうかの違いですね。

10:デフォルトの名無しさん
14/11/24 04:18:18.83 qPQKDlD6.net
今一番コスパ高いカードってなに?

11:デフォルトの名無しさん
14/11/24 04:21:35.17 qPQKDlD6.net
謝罪文みても思い上がりが激しい

12:デフォルトの名無しさん
14/11/25 19:26:42.72 kFuypilU.net
プログラムのカーネル部分がどうしても実行されません(サンプルプログラムでは実行されていました)
どなたか原因に心当たりはありませんか?(私はありません)
ブレークポイントで確認したところカーネルの上下にあるクロックは実行されており、
カーネルだけが実行されていませんでした(カーネルの中へ入って行かないという意味です)

以下が呼び出しで、dim3はグローバルで定義してあります
dim3 blocks((num + max - 1) / max, (num + max - 1) / max);
dim3 threads(max, (1024 + max - 1) / max, 1);

void calculation(void)
{
clock_t start, end;
start = clock();
cal<<<blocks, threads>>>(con, num, points, data);
end = clock();
cout << double(end - start) / CLOCKS_PER_SEC << "\n";
}

13:デフォルトの名無しさん
14/11/25 21:02:59.83 N/U8okyJ.net
>>11
dim3構造体のメンバ変数をプリントしたらどうなりますか?

14:デフォルトの名無しさん
14/11/25 21:44:27.45 kFuypilU.net
>>12
>11のcalculation()の最後の行にプリントの一文を入れてみましたが
ブロックが(128,128)、スレッドが(128,8)と想定通りでした
(スレッドは1ブロック当たり1024個まで配置可能なのでギリギリセーフなはずです)

忘れていましたが、呼び出し先です
この中にブレークポイントを配置してもプログラムが止まらないという魔の領域となっています
(もちろんnsightのcuda debuggingでデバッグしています)
__global__ void cal(double con, int num, a_data *points, b_data *data)
{・・・}

15:デフォルトの名無しさん
14/11/26 18:34:20.92 cpKKMAIz.net
>>13
カーネルが実行されているかどうかはどうやって確認していますか?

16:デフォルトの名無しさん
14/11/26 19:30:35.81 mOjmGjn5.net
>>14
>>13に書いた通り、ブレークポイントをカーネルの中に入れて実行されているかどうかを確認しています
描画をするプログラムなので図形が動くか動かないかでも判断できます

17:デフォルトの名無しさん
14/11/26 20:04:14.26 qey6HT7s.net
おれもカーネルに入らないケース出たわ
原因調査中・・・

18:デフォルトの名無しさん
14/11/27 08:04:41.88 7alpN+o4.net
>>15
CUDAのデバッガ使った事がない(ひたすらprintf)ので
一般論的な事しか言えませんが、
怪しそうな処理をコメントアウトしていったらどうでしょう?
変なメモリアクセスで落ちるとか割とありがちな気が。

19:デフォルトの名無しさん
14/11/28 22:55:16.84 JeOcX4pA.net
おれもカーネルに入らない
ただなぜかcygwinでコンパイルするとカーネルが起動する
なんでじゃ・・・

例のvisual studio2013もインストールしてみたいな~

20:デフォルトの名無しさん
14/11/28 23:06:00.72 JeOcX4pA.net
>>18だけど
osはwindows8.1
コンパイラはcuda6.5+vs2013 express
カーネルは担当する要素を+1するだけのもの
これをコマンドプロンプトでコンパイルしてもカーネルは動かなかった(?)
動かないと判断したのは結果をmemcpyしてホスト側に返しても+1されてなかったから
もしかしたら正常にmemcpyされてないだけかもしれない

カーネルに入らない人はcygwin使ってみるといいかもね
本質的な解決にはならないけど・・・

21:デフォルトの名無しさん
14/11/30 20:47:05.05 NdicNENH.net
ビジュアルプロファイラー使ってみたら。

22:デフォルトの名無しさん
14/12/03 14:38:19.35 GXBajCbw.net
kernel実行後にcudaGetLastError()でRCを取得
そうするとkernel実行結果が分かる
RCの数値は自分で調べてね

23:16,21
14/12/04 22:23:47.78 EZ4odEf+.net
21の情報は役だったかな?
自分の場�


24:〟iLINUX)、RC=7(too many resources requested for launch)だったので コンパイルオプションに -Xptxas -vを追加して使用レジスタ数を確認。 結果ハードウェアのレジスタ数を超過したためにカーネルの処理が行われなかったことが判明。 スレッドサイズを小さくして問題解決。 因みに使用レジスタはハードウェアによって変わる。



25:デフォルトの名無しさん
14/12/05 14:06:24.56 +nFWXccn.net
>>22
ちょっと興味があるんですけれど、
カーネルのサイズは動的に決めてるんですか?

前にソースコードにブロック数とスレッド数をべた書きで
大きいサイズを指定したらコンパイルの段階ではじかれた事があったんで。

26:>>15
14/12/05 15:37:53.47 fpNGtjbn.net
>>21
ありがとうすごく役に立ったよ
ここ最近忙しくてpc触れなかったんだ
自分も同じく「error: too many resources requested for launch」だった
原因を調べてみるよ

あと、自動でエラー内容もだせるみたいだね
URLリンク(homepage2.nifty.com)

>>20
ビジュアルプロファイラーも便利そうだから調べてみるよ

27:デフォルトの名無しさん
14/12/07 18:17:39.03 g9DGYGEw.net
x,y,zの3つの変数から成る構造体配列A,B(同じサイズ)があったとして
BからAへそれぞれ対応するデータを転送する場合

Ax,Ay,Az,Bx,By,Bzという同じサイズの構造体でない配列が6つあったとして
BからAへそれぞれ対応するデータを転送する場合(BxからAxなど)

前者と後者では後者の方が転送速度は上がりますか?

28:デフォルトの名無しさん
14/12/08 12:53:10.47 JbpvX5Qi.net
>>25
一般論としてデータ量が同じなら一回にまとめてを転送した方が効率はよくなりますね。

29:デフォルトの名無しさん
14/12/11 11:46:54.75 kV0/O7vj.net
memcpyって同期とるもんね

30:デフォルトの名無しさん
14/12/12 21:54:58.15 PdQu+k/h.net
kernelの中で使えるタイマー関数はありますか?

31:デフォルトの名無しさん
14/12/12 23:43:18.27 q1FKM2bt.net
clock()関数が使えるよ。

32:名無しさん@そうだ選挙に行こう
14/12/13 22:02:15.64 B9P4oQcX.net
>>29
サンキュー
試してみるよ

33:デフォルトの名無しさん
14/12/16 21:07:44.74 6hyQD5WD.net
自分の持っていないGPUの共有メモリの量などの詳細を知ることはできますか?

34:デフォルトの名無しさん
14/12/17 08:36:19.04 0flByQKi.net
URLリンク(en.wikipedia.org)

Maximum amount of shared memory per multiprocessor
あたりかな。

35:デフォルトの名無しさん
14/12/17 20:16:42.59 D/43rANg.net
>>32
ありがとうございます
嬉しいことに5.0以降から容量が増えてるみたいですね

36:デフォルトの名無しさん
14/12/17 20:55:04.06 vfaS5qRM.net
なんでCCのバージョン3.5から5.0に飛んでるの?
SDKのバージョンと合わせたのか?

37:デフォルトの名無しさん
14/12/19 18:38:15.45 dxBCSCiu.net
二つ以上のGPUでVBOを使用する場合、データの流れはどうなっているのでしょう?
やはり一旦ディスプレイに接続側のGPU出力データが集められ出力されるのですか?

38:デフォルトの名無しさん
14/12/20 13:19:39.58 hlsDA/2


39:G.net



40:デフォルトの名無しさん
14/12/20 13:33:50.56 ARYnLzi0.net
>>34
ゲフォの800番台がスルーされたからかも?

41:デフォルトの名無しさん
14/12/20 14:31:13.88 NgIUM6cpA
メイン関数内でcudaMallocManagedを用いてユニファイドメモリを確保して
その後メイン関数内でデータを代入し、GPU関数へポインタを渡したのですが、
値を利用できません。

だれか詳しく解決方法を教えてください

42:デフォルトの名無しさん
14/12/20 14:34:48.04 NgIUM6cpA
38ですがこんな感じに参照してます
__global__ void check_mem(int *file_top,int *d_test){
  int x = blockIdx.x * blockDim.x + threadIdx.x;
  d_test[x] = *(file_top + x);
}

file_topに値が入っていることはメインで確認が取れてます

43:35
14/12/20 22:32:39.87 ovXiOWlC.net
>>36
少し気になって質問してみただけで今自分は一つしか持っていません!

もう一つGPUを購入した時の為にvisual profilerを使えるようになっておこうと思い
ビルドした実行ファイルでプロファイラを使用してみたところ「Warning: No CUDA application was profiled, exiting」とエラーが出てしまいました
6.5のツールキットを使用して新しいセッションを作成→ビルドした実行ファイルを選択→設定はデフォルト、としたのですが何がダメだったのでしょう?
nvidiaの説明書を見てもさっぱりです。ヒントだけでもいいので教えてください

44:デフォルトの名無しさん
14/12/21 10:11:52.91 aUL9MF/2V
cudaDeviceReset() が必要のはず。

Visual Studioで「CUDA X.X Runtime」のプロジェクトを作ったら、
kernel.cu の return 0; の直前のコードに、以下のように書いてある。

// cudaDeviceReset must be called before exiting in order for profiling and
// tracing tools such as Nsight and Visual Profiler to show complete traces.
cudaStatus = cudaDeviceReset();

45:デフォルトの名無しさん
14/12/21 12:30:22.37 C04pqXsd.net
>>40
cudaDeviceReset() が必要のはず。

Visual Studioで「CUDA X.X Runtime」のプロジェクトを作ったら、
kernel.cu の return 0; の直前のコードに、以下のように書いてある。

// cudaDeviceReset must be called before exiting in order for profiling and
// tracing tools such as Nsight and Visual Profiler to show complete traces.
cudaStatus = cudaDeviceReset();

46:35
14/12/21 22:57:23.15 McLr4XTH.net
>>42
ループしているプログラムなのでエスケープキーを押すと後処理関数をatexit関数で呼び出して終了するようになっています
その後処理関数の中にcudaDeviceReset();を入れているのですがこれではダメなようです
それともcudaError_t cudaStatus = cudaDeviceReset();としてcudaStatusをどこかへ渡すのでしょうか?

47:デフォルトの名無しさん
14/12/22 00:14:29.09 6pNe5aqW.net
>>43
とりあえず、>>42を新規プロジェクト作ってプロファイラの
動作を確かめてから、あらためて自分のソースコードに反映すれば?

48:デフォルトの名無しさん
14/12/23 10:16:58.70 rFJPpcq3i
玄人志向のPCI-Express x16→PCI-Express x1変換ケーブルキット
「PCIEX16-X1/KIT」を使ってcudaやってみた人いますか?

49:デフォルトの名無しさん
14/12/23 15:40:43.82 bsnZ8h6l.net
>>44
新規プロジェクトでサンプルプログラムが生成されるのを忘れていました
おそらくサンプルのプロファイルに成功したので自分のプログラムに反映させようと思います
ありがとうございました

50:42
14/12/24 18:51:30.92 /5m6EieY.net
一応書いておきます
調べてみた結果、必要なものはcudaDeviceReset();を呼び出すことのみでした
自分のプログラムがプロファイル出来なかった原因は.dllが.exeと同じ場所に無かったからでした

51:デフォルトの名無しさん
14/12/24 20:32:20.58 6fZpwBGv.net
並列化についての質問です
スレッドやブロックを増やしてもあまり計算速度に差が出ないのですがどのような理由が挙げられますか

52:デフォルトの名無しさん
14/12/24 20:59:33.63 SBHK+d/x.net
どう変わると思った?計算量自体は変わらんのだぞ。

53:デフォルトの名無しさん
14/12/24 21:07:44.58 6fZpwBGv.net
最初は一つのスレッドにつき4回ほどループさせ計算をしていました
その後、スレッド数を2倍にしてループ数を半分の2回しました
計算速度は2倍になるだろうと予想していましたが、あまり変わりませんでした

54:デフォルトの名無しさん
14/12/24 21:23:52.28 SBHK+d/x.net
ハード的に同時に実行できるスレッドは有限なんだから、それ以上スレッドを増やしても
物理的に速くなりようがない。

55:デフォルトの名無しさん
14/12/24 22:24:43.11 pbZqH+Xm.net
プログラム上のスレッド数とハード上のスレッド数は違うと言うことですか

56:デフォルトの名無しさん
14/12/24 22:50:48.00 3hqu78L7.net
スレッドが多ければ、メモリアクセスでスレッドが止まっている間
cudaコアは別のスレッドを実行できる

57:デフォルトの名無しさん
14/12/27 01:57:38.03 u9BI3CqV.net
基本的にはcudaコアの数だけしか並列計算出来ないのですか

だけしかと言ってもコアは何百もありますが

58:デフォルトの名無しさん
14/12/27 06:52:06.91 fxVjSbuk.net
ある瞬間、実際に並列に処理されているということと、理論上並列に扱われるということは別の話ですよ

上のレスにもありますが、計算速度的には実際に処理を行うヤツが足りていなければそこで頭打ちになるのは当然かと

59:デフォルトの名無しさん
14/12/27 10:09:35.39 W6Y2DM4+.net
cudaコアの数以上にスレッドを生成する利点は
メモリアクセスの遅延の隠蔽にある

60:デフォルトの名無しさん
14/12/28 20:39:13.97 52BL0aAq.net
550TIで使っていたプログラムを750TIで走らせて見たところ1.5倍ほど遅くなってしまいました
何故でしょうか?

61:デフォルトの名無しさん
14/12/29 02:19:31.23 YUQudPNs.net
腐ってやがる。早すぎたんだ

62:デフォルトの名無しさん
14/12/29 09:47:06.28 Sx0YYE+e.net
>>57
一度のカーネル実行で処理するデータ量を増やしたら改善しませんか?

63:デフォルトの名無しさん
14/12/29 09:51:11.07 Sx0YYE+e.net
>>57
maxwellは倍精度がそーとーしょぼいので、
cuda-zかなんかで性能をチェックした方がよいかもしれません。
URLリンク(sourceforge.jp)

64:デフォルトの名無しさん
14/12/29 12:03:33.25 oV4aoJAy.net
>>60
本当にしょぼかった。陽子ビームぶち込みたい。
どうやらマクスウェルさんは演算用には向いていないようですね

65:デフォルトの名無しさん
14/12/29 12:51:57.86 oV4aoJAy.net
コア数が3倍になっていることを考慮すればそれでも遅い気がしますね

66:デフォルトの名無しさん
14/12/31 21:08:03.80 3b0Wn462.net
CUDA初学者です
cudaBindTexture2D()のpitchとoffsetは何を表しているのですか?
手元の書籍のサンプルから推測するに
pitchは一次元の配列を二次元のテクスチャに入れる場合の折り返し地点のようなもの
でしょうか?それならwidthとhighだけでも十分ではないかと言う疑問も出てきます。

そして一番の疑問がテクスチャメモリの存在です。
いくら二次元、三次元配列が使えるとは言え512バイトしか容量のないテクスチャメモリは64キロバイトもあるコンスタントメモリに劣るのではないでしょうか?
長々と失礼いたしましたm(_ _)m

67:デフォルトの名無しさん
14/12/31 23:07:39.94 WrP28EMy.net
>>


68:56 それじゃあストリームは何のためにあるのさ?



69:デフォルトの名無しさん
15/01/01 12:48:51.81 82JnHkZd.net
>>64
どっちも使えるなら、実験して早い方を採用
同時に並んでいるスレッド数を増やしてcudaコアが遊ばない状況
を作り出すことが重要

ストリームの使い道は異なるカーネルの並列実行だと思ってる

70:デフォルトの名無しさん
15/01/02 01:42:39.20 aooXGYY5.net
>>65
なるほどね

71:デフォルトの名無しさん
15/01/02 10:40:26.85 2fT8SJ1Ez
>>65
「ストリームの使い道は異なるカーネルの並列実行」というのは
何が言いたいのか良くわからないが、捕捉すると、

ストリームはCPU-GPU間のデータ転送中(非同期のcudaMemcpy)に、GPUで演算(カーネル実行)させる為の仕組みだ。

「あるストリームがデータ転送待ち中に、別のストリームのカーネルを実行する。」
といった事を、賢くやってくれる。
(別のストリームが「異なるカーネル」でなく、「同じ関数のカーネル」でも良い。)
結果、「データ転送待ち」の時間を節約できる。

ストリームの詳細は、書籍に書いてあるが、
データ転送とカーネル実行をストリームに入れる「推奨の順番」が
cc3.5からは違うので、古い本の場合は読み替える必要あり。

72:67
15/01/02 11:01:01.35 2fT8SJ1Ez
まとめると、こんな感じ。
(※同じプログラムで、以下の両方を使う事も可能。)

・cudaコアの数以上にスレッドを生成する:「GPU」と「GPU側のDRAM」間のメモリアクセスの遅延の隠蔽が期待できる。

・ストリームを使う:「CPU側のDRAM」と「GPU側のDRAM」間のメモリアクセスの時間の節約が期待できる。

73:デフォルトの名無しさん
15/01/03 13:07:05.02 yWVdPt25.net
970/980は確かにゲームのパフォーマンスは上がってるが帯域減ってるから
GPGPU用途では微妙になってしまったな

74:デフォルトの名無しさん
15/01/09 00:33:57.02 Iq4Pw+IC.net
Toolkit 6.0 + VS 2008から
Toolkit 6.5 + VS 2013に移行したら
遅くなっちゃったんだけど、そういう人ほかにいる?

75:デフォルトの名無しさん
15/01/12 00:15:12.48 crrCnhEj.net
CUDAの日本語ページって4.0とかの古い情報ばっかりじゃね
6.0/6.5では全然仕様が違ってて全然使えない

76:デフォルトの名無しさん
15/01/16 07:53:04.52 IHSf0jGJ.net
CUDA7.0 RC

77:デフォルトの名無しさん
15/01/16 09:02:56.43 VQ2eHsT0.net
もうCUDAも成熟してしまった感があるなあ。

78:デフォルトの名無しさん
15/01/25 10:58:33.86 m2kue9j8.net
970の影響でGPUメモリテストが流行っているね。

79:デフォルトの名無しさん
15/02/06 21:35:53.90 72/Q/UeS.net
ここ何週間かデバッグを続けているのですが原因を突き止めることが出来ません
初学者がはまりやすいミスやデバッグのこつなんかを教えてもらえませんか?
明らかなバグなら原因を突き止めやすいのですが、かなり微妙なバグなのでなかなか見つけられず困っています

80:デフォルトの名無しさん
15/02/07 00:48:46.19 OS4q1AxS.net
printfとかで要素を表示してデバックしてみれば?

81:デフォルトの名無しさん
15/02/07 13:10:14.61 4cvxubK6.net
syncthreadとか?
if文の中に書いてたりすると同期ずれが起こったりするなー
他には確保してないメモリへのアクセスとか?
>>76の通り、printfとかで、配列の添字とか値を表示するしかないのかな?

82:デフォルトの名無しさん
15/02/08 15:23:01.85 E04CIgi2.net
>>76
>>77
ありがとうございます
1セットの計算量があまりにも多いのでprintfの方法は難しいです
シンクロや範囲外アクセスもありませんでした
原因が分かっちゃったかも知れないので質問です
中間計算結果→atomicAd


83:d 中間計算結果→配列→atomicAdd こんな風に同じ数値を使った計算でも一度配列を通してしまうとatomicAddによって追加された計算結果に差が出たりしますか?



84:デフォルトの名無しさん
15/02/08 15:48:00.96 E04CIgi2.net
変数に入れると精度は落ちますね
お騒がせしました

85:デフォルトの名無しさん
15/02/08 21:32:20.44 BpjOkBmf.net
>>78
ちょっと面倒だけど、要素が多い場合は減らしてやってみるとか、どうだろうか?
何はともあれ、原因判明したみたいで、おめでとう

86:デフォルトの名無しさん
15/02/08 22:56:08.44 KLuvC02r.net
>>80
それは意外な盲点でした
数を減らせば良かったのですね

87:デフォルトの名無しさん
15/02/09 10:20:08.08 pN+UjOmC.net
>>78
fpが(a+b)+c != a+(b+c)を知らないとかではないよね?

88:デフォルトの名無しさん
15/02/09 23:18:25.64 QR2S1do8.net
volatile使うとか?
変数の宣言とか関数の引数の型の前にvolatileをいれると・・・

89:デフォルトの名無しさん
15/02/17 21:40:32.15 K8c74Rhe.net
>>57
750TIでGPGPUって考えていたけど、750TIって2世代前の同ランクぐらいの550TIより性能悪いのか。
一般ゲーム用VGAではGPGPU能力ってたいして要らないから落としたのかな
いろいろなゲーム用VGAの単精度、倍精度の能力が載ったホームページ教えてください

90:undefined
15/02/19 11:23:20.97 aqLRWkl1.net
質問☆
cudaってドライバインストして、画像表示をcuda設定にするだけでは
効果ない?

91:デフォルトの名無しさん
15/02/19 14:30:54.02 iKdaAUCi.net
>>84
FP32とFP64の一覧表ならこれとか。
URLリンク(www.geeks3d.com)
ボトルネックになりうる点は他にもあるから、Compute Capability毎の仕様の違いも結構重要だと思う。

92:デフォルトの名無しさん
15/02/19 23:45:36.57 ngPIgbTR.net
maxwellさん自体にに倍精度が無いようだから
一世代前のkeplerさんか次世代のpascalさんを選べば良いんじゃないかな

93:デフォルトの名無しさん
15/02/19 23:54:19.28 Lt8lBsrZ.net
>>86
有難う。750TiのFP64悪すぎだな。
なんか大衆向け用でGPGPUするならFP32よ、FP64は使わないでだな。

94:デフォルトの名無しさん
15/02/20 04:05:21.12 fPdGyDpl.net
>>87
KeplerはMaxwell以上にピーキーだったような。
自分の用途がはっきりしていて、それがKeplerやMaxwellに向いているならありだろうけど。
64bit変数をほとんど使わなくても、不向きな処理ではGTX 680が570に惨敗したりする。
CUDAの開発環境とか情報量に魅力を感じて、あえて今から始めてみるという人に勧めるとすれば、個人的には
投げ売り続行中のGTX 570や580で、余裕があるなら型落ちCPU・マザボ・メモリのセット等と
組み合わせてCUDA専用マシンを用意かな。
>>88
それは差別化とか、グラフィック用途でのワットパフォーマンスとかで仕方がないかと。

95:デフォルトの名無しさん
15/02/20 08:52:57.87 xG3c1huj.net
keplerはinteger bit shiftが弱いGK110(tesla)以外は
maxwellはkepler比で2倍のスループットになってる

96:デフォルトの名無しさん
15/03/04 22:02:58.94 krHDLIbc3
コアレッシングて、なんでハーフワープじゃないとダメなのでありますか?
フルじゃダメなのでしょうか。
#deviceQuery:
# CUDA Capability Major/Minor version number: 3.2
# Warp size: 32

97:デフォルトの名無しさん
15/02/22 18:45:23.46 JhGx5uct.net
適当なプログラム作ってみても
maxwellの方がはやいね
shared memoryが倍になったのも大きいなぁ

98:名無し
15/03/07 10:52:38.85 UBzBpgz5.net
スレチなら申し訳ない
当方、モバイルでCUDAを使用したいけど
安い方法はどれが良いと思います?
(速度はそこそこで良く、外でテストして
 パワーがいる場合はデスクトップを使用するつもり)
モバイル用は安く上げたいので
Chromebookかタブレットで探した方が良いですかね?
奇をてらってJetsonのtk1にACアダプタ用のバッテリーを積むとか
(可能かどうかわからないですが)
ちなみにゲームはやるつもりありません。

99:デフォルトの名無しさん
15/03/07 20:42:36.10 CzdLWIdo.net
thinkpad w550sのquadro K620mはダメなの?
ノートパソコンだよ

100:デフォルトの名無しさん
15/03/08 10:25:35.13 TYY6zzsE.net
レスありがとうございます
安くあげたいので予算的に厳しいかと
最初だけ計算量は多いですけど
要所ごとに定数化すれば、その後は計算量がへるかと思っているので外での使用は少ないデータ量でプログラムチェックができればいいかなと考えています。
K1がのったタブレットも安いのでそこから考えてみようと思います
ありがとうございました

101:デフォルトの名無しさん
15/03/18 02:36:15.45 jKTvW/7W.net
うわ、titan xの倍精度、しょぼ過ぎ・・・。
URLリンク(twitter.com)

102:デフォルトの名無しさん
15/03/18 09:22:22.19 33RtPIwm.net
単精度が7TFLOPS、倍精度が0.2TFLOPSで良いんだよな??
詳しい事は良く分からないんだけど倍精度ってそんなに使わないものなの?
PhysXっていう物理エンジン使ったりするのに

103:デフォルトの名無しさん
15/03/18 10:23:22.30 C11qPS4w.net
>>97
ゲームだと単精度で十分だったりするからじゃない?
もともとゲームのために作られたような物だから、倍精度の性能なんかあまりこだわってないと思う

104:デフォルトの名無しさん
15/03/19 07:37:41.52 M0RYJxHF.net
URLリンク(developer.nvidia.com)
CUDA 7 Downloads

105:デフォルトの名無しさん
15/03/19 07:39:40.96 M0RYJxHF.net
Dear Developer,
The CUDA? 7.0 Production Release is now available to the public. Run your application faster with this latest version of the CUDA Toolkit. It features 64-bit ARM support and the simplified programming model enabled by Unified Memory. Highlights include:
New cuSOLVER library
? Accelerates key LAPACK routines, 12x faster direct sparse solvers
New C++11 language features
? Increases productivity with lambdas, auto, and more
Runtime Compilation
? Enables highly optimized kernels to be generated at runtime
Download the CUDA 7 Production Release at www.nvidia.com/getcuda
Learn more about CUDA 7 by attending these webinars:
CUDA 7 Feature Review
Date/Time: Friday, April 10th at 10:00 AM PDT
Register: URLリンク(cc.readytalk.com)
CUDA 7 Performance Overview
Date/Time: Wednesday, April 15th at 11:30 AM PDT
Register: URLリンク(cc.readytalk.com)
Best regards,
Nadeem Mohammad
NVIDIA Developer Relations Team

106:デフォルトの名無しさん
15/03/24 05:27:05.96 7oVKj7vD.net
CUDAがgcc4.8でうまく動かない問題ってもう解決したの?

107:デフォルトの名無しさん
15/03/25 15:16:29.51 9JMqB0KU.net
うん

108:デフォルトの名無しさん
15/03/25 21:19:25.13 WRhchtaz.net
Driver API使ってコンパイル済みのptxを実行するプログラムを作ろうとしているんだけど、
64bitのホストコードから32bitのptxを実行することってできるんだっけ?

109:デフォルトの名無しさん
15/04/10 02:15:05.70 C60yUXFO.net
nvidia-smiでutilizationやmemory usageを確認できると思うのですが、全てのパラメータを確認できるのはtesla、quadro、Titanです。
Geforce系のGPUで、utilization、各プロセスのmemory usage等を確認するにはどうすればいいでしょうか?

110:デフォルトの名無しさん
15/04/10 07:26:02.69 nzpIVsUT.net
>>104
nvapi
URLリンク(masafumi.cocolog-nifty.com)

111:デフォルトの名無しさん
15/04/12 23:53:21.24 g4+PudFo.net
古いGeforceでもOpenCL1.1のプログラムなら動くのでしょうか

112:デフォルトの名無しさん
15/04/13 00:39:39.73 NPPeHBbv.net
少なくともCUDA対応している必要があるが、基本的にGeForce8シリーズ以降で動くはず。
特定の機種について知りたいならGeeks3Dのデータベース検索してみるとか。
しかしスレチ。

113:デフォルトの名無しさん
15/04/13 16:29:29.85 EBHbrztF.net
thinkpadに入ってるquadro K620Mはcudaのサポート無いんだな
インストールしようとしてワラタ

114:デフォルトの名無しさん
15/04/14 18:39:28.21 hgZdA2dw.net
Linux(CentOS6)の環境でTITAN BLACKでCUDA(Ver.6.5 or 7.0)使ってるのだけど、計算走らせると
NVIDIA X Server SettingsのPerformance LevelsのLevelが3から2に落ちてMemory Transfer Rateが7000Mhzから6000Mhzに落ちてしまう。
で結果的にノーマルTITANと性能が同じになってしまう。このメモリクロックを固定させることはできませんかね?
ちなみにTelsa K20 での固定クロックの方法はnvidia-smiがTITANに対応してないらしくできなかった。
ちなみにPreferred Modeは「Prefer Maxmum Performance」になっていて、
CUDAで計算しなければLevel3でメモリクロックも7000Mhzとなっています。

115:デフォルトの名無しさん
15/04/14 21:44:04.71 frAktQrJ.net
空冷を見直す。

116:デフォルトの名無しさん
15/04/15 11:49:47.50 DmeNPmdM.net
>>109
何時間もフルで使ってるならまだしも、GPU叩いた瞬間に7000Mhzから6000Mhzに落ちるって、TITAN BLACKの公称メモリクロック「7GHz」ってのは詐欺にならないか?
これじゃノーマルTITANと同じ性能・・・

117:デフォルトの名無しさん
15/04/15 23:05:57.76 +7B/lj1n.net
環境がわからんからなんとも言えんが、
どうしても固定したければどっかからbiosを引っ張ってくるしかないね。

118:デフォルトの名無しさん
15/04/16 13:27:15.95 xeug049T.net
ん?TITANのクロック制御はマザーのBIOSが管理してるのか?

119:デフォルトの名無しさん
15/04/16 14:34:33.50 PYEjJT3R.net
VGAボード側のだよ。

120:デフォルトの名無しさん
15/04/20 17:42:38.58 uqjf4eEG3
>109

とりあえず自己解決
CUDA7のドライバーをそのまま使うとLevel3の7000MhzからLevel2の6000Mhzに落ちる。
Ver.6.5もVer.6.0のもの同様。
で、CUDA様でない少し古いドライバーを使うと、Level3が7000Mhzで設定され、Level2も7000Mhzのままのものがある。
それを何とかCUDAで使えるようにして、7000Mhzのままで計算できるようになった。

121:デフォルトの名無しさん
15/04/23 12:42:01.23 GK/TBYtY.net
pycudaで既存のコンパイル済みのオブジェクトとリンクして
実行さ�


122:ケるにはどうすればいいのでしょうか



123:デフォルトの名無しさん
15/04/23 18:12:10.80 GK/TBYtY.net
cmakeの自動configがGTX900シリーズなのにsm_20とか言ってくるのなんとかならないの?

124:デフォルトの名無しさん
15/04/27 00:54:11.64 XOkfLgXW.net
最近のマザーボードってビデオカード2枚刺して
両方に計算させることもできるの?
自分のcore2duoのパソコンだと1つしか刺す場所ないけど
最近のddr4を使うマザーみると
それらしき場所が3つぐらいあるから3並列計算できるってことかな?

125:デフォルトの名無しさん
15/04/29 08:43:39.45 2J/vCqrD.net
>>118
場合によっては、計算用のGPUと出力用のGPUで分けてたりする。少なくともNVIDIAはそういう方針

126:デフォルトの名無しさん
15/04/30 22:40:28.09 4E7PVA8Y.net
vexclのサンプルコードをcudaでコンパイルしようとしてるんだけど
エラーだらけ
何か依存パッケージが足りないのかな?

127:デフォルトの名無しさん
15/04/30 22:46:37.84 4E7PVA8Y.net
.bashrcに設定する変数名が
CUDA_PATH
だったり
CUDA_ROOT
だったりみんな違う
なんで統一しないのか

128:デフォルトの名無しさん
15/05/07 18:56:17.28 oEZIeMhu.net
vexclについてくるexampleプログラムの中のベンチマークってプログラムが面白い
このプログラムのベンチマークによると
GT430とかいう古いビデオカードなのに最近のCPUの10倍の計算速度でてる

129:デフォルトの名無しさん
15/05/08 17:34:25.55 8Z+VlnlSM
質問です。
Jetson TK1ってGPUは3.x世代だと思うんですが、
CUDA7/cuDNN(GTC2015で発表のあった正式版)には対応してないのでしょうか?
TK1はKepler世代なので大丈夫だと思ったのですが・・・。

130:101
15/05/13 12:03:41.64 3UCLt7KQ.net
thinkpad w550sのquadroでもcudaなんも問題なかった
やっと勉強できる

131:デフォルトの名無しさん
15/05/13 19:42:38.26 SKtXN3hT.net
3D映像でパストレーシングやモンテカルロ法を行いたい場合、光線とシーン中
のあらゆるポリゴンとの交差を判定し、条件分岐を行う必要があります。
しかし、GPGPUは条件分岐が遅いらしいので、もしかするとCPUと役割分担を
行うべきなのでしょうか?
例えば、シーン中のポリゴンとの交差判定はCPUでやった方が良いとか?

132:デフォルトの名無しさん
15/05/13 23:31:21.84 xMqj1fKt.net
if
  A
else
  B
end
のような文なら、AとBは逐次の処理になる
if
  A
end
なら、Aを行わないスレッドは待つだけだから問題ない
もし3項演算で解決できる条件分岐なら3項演算子を用いて書く

133:デフォルトの名無しさん
15/05/14 07:59:10.95 CyZl9DuQ.net
>>126
>AとBは逐次の処理になる
これはどういう意味でしょう?
AとBが内部的には必ず両方とも実行されてしまうと言うことでしょうか?

134:デフォルトの名無しさん
15/05/14 09:14:40.23 CyZl9DuQ.net
Intel系CPUの場合、確か cmov などという命令は、bool 値が1の時だけ
転送するのだったと思います。そういう命令は無いんでしょうか?
仮に何かあったとして、CUDA や OpenCL でどうやってそのような
「専用命令」を生成する事は可能でしょうか?

135:デフォルトの名無しさん
15/05/15 01:05:26.23 WYo5pZkW.net
分岐命令の代わりに使えるプレディケート付き命令があるかという話なら
それは存在するし、分岐のあるコードではコンパイラさんがよしなにやってくれる。
と、ヘネパタ本には書いてあった。

136:デフォルトの名無しさん
15/05/15 08:19:31.91 pyCNH+0F.net
>>129
ありがとうございます。
では、「>>127」の方はどうですか?

137:デフォルトの名無しさん
15/05/15 09:39:10.09 mDU8aVUi.net
>>130
warp divergenceの話じゃないの?

138:デフォルトの名無しさん
15/05/15 15:58:50.84 pyCNH+0F.net
>>131
習慣的に(?)「ウォープ・ダイバージェンス」と読み、
URLリンク(news.mynavi.jp)
のことのようですね。

139:デフォルトの名無しさん
15/05/17 10:18:02.33 R3tkd0Ad.net
>>130
AとB両方実行されるよ

140:デフォルトの名無しさん
15/05/19 21:33:47.52 spimwXxa.net
今まで一つのソースファイルで書いてきたのですが、いい加減見づらくなってきたのでソースファイルを分けてみたところエラーがでたので質問させてください
extern __constant__ unsigned short v[n]; //nは#defineで定義しています。
メインのソースファイルで
__constant__ unsigned short v[n];
と定義し、ビルドすると「メインの方で再定義されている」というエラーが出てしまいます
他にも、__device__ double atomicAdd の定義をサブのソースファイルに書くと
ptxas fatal : Unresolved extern function '_Z9atomicAddPdd'
とエラーが出てしまいます。どうか解決方法を教えてください。
環境は
NVIDIA Nsight Visual Studio Edition v.4.2
CUDA 7.0 Toolkit
のはずです

141:125
15/05/19 21:42:34.97 spimwXxa.net
×CUDA 7.0
○CUDA 6.5
でした

142:125
15/05/20 16:28:14.38 MP+tATlH.net
CUDA5.0以降ではrdcを「はい」にするとファイルの分割が出来るという情報を得たのでさっそく試してみたところ
>>134のエラーは無くなったのですが
1>sub.cu.obj : error LNK2005: "long __cdecl genrand_int31(void)" (?genrand_int31@@YAJXZ) は既に main.cu.obj で定義されています。
上記のような二重定義エラーがいくつか出てきました
また、ヘッダファイルの拡張子を.cuhとしている方を見かけたのですが、.hとの違いはあるのでしょうか?

143:デフォルトの名無しさん
15/05/20 22:26:00.46 tQNdJIhT.net
デバイス関数ってインライン展開されるんじゃなかったっけ。
でもって、他のファイルからは使えなかったのでは?

144:125
15/05/20 23:53:16.57 MP+tATlH.net
>>137
ファイルを分割出来ないとなるとすごく不便になので、何かしらの方法があるのでは?と思っています

145:デフォルトの名無しさん
15/05/21 04:25:30.08 Dige6mTv.net
とりあえずCUDAの日本語wikiがあるから、そこの分割コンパイルの項目をみたらどうかな?
OSによっては解決できるかも

146:デフォルトの名無しさん
15/05/21 09:09:27.02 BxelVpyp.net
cuファイルをcuファイルにインクルードしてみるとか。

147:125
15/05/21 17:23:47.43 25nDpRt2.net
レスありがとうございます
どうやら>>136のエラーはCUDAとは関係なさそうなのでC++のスレで聞いてきます

148:125
15/05/24 22:10:36.84 FupD4mQN.net
>>136の方法で分割コンパイルに一応成功しました!
一応と言ったのはrdcを「はい」にした場合と「いいえ」にした場合とでプログラムの挙動が少し変わってしまうのです
今書いているプログラムは何億回もの計算結果を足し合わせていくものなので、誤差の蓄積による影響を受けていると思います
コンパイルの方法を変えた(?)事で誤差の蓄積が変化(?)し、プログラムの挙動が変わったということなのでしょうか?
コンパイルと誤差がどう関係するのかは分かりませんが

149:125
15/05/24 22:19:49.55 FupD4mQN.net
>>「はい」にした場合と「いいえ」にした場合
ファイルを分割するともちろん「いいえ」では動かないので、一つのファイルで完結しているプログラムでの話です

150:デフォルトの名無しさん
15/05/26 06:54:20.42 VVQAbCqm.net
最適化の仕方が変わるのかもね
誤差が出て困るなら、なるべく誤差が少なくなるような組み方を考えるしかない

151:デフォルトの名無しさん
15/05/26 07:49:49.21 3GnQrGbV.net
誤差にも種類があるが・・・
浮動小数点演算等の誤差なのか
同期ミスによる誤差なのか・・・

152:デフォルトの名無しさん
15/05/26 22:03:46.38 f2qMZr+T.net
>>144 かもね 今はatomicAddをそのまま使っているので、情報落ちをなんとかして誤差は減らす予定です >>145 原因と結果の関係性が分からないのでなんとも言えないです ちなみに同期ミスによる誤差とは何でしょうか?



154:デフォルトの名無しさん
15/05/26 22:55:29.89 sIi3toQP.net
つうか最適化で結果が変わったら
それはバグ以外に無いけどねえ。

155:デフォルトの名無しさん
15/06/03 15:26:06.85 f+QtTKYD.net
URLリンク(www.geeks3d.com)
だれかこれの最新版を知らんかえ?

156:デフォルトの名無しさん
15/06/17 22:35:16.09 uTokHIG4.net
今年はGTC Japan開催のリリース出ないな
例年ならもう出ているのに
中止かもしくは時期がずれたのかな

157:デフォルトの名無しさん
15/06/18 12:56:34.78 0ZPzSsHT.net
>>149
今年は9月18日に虎ノ門ヒルズで開催、だったかと。

158:デフォルトの名無しさん
15/06/18 13:04:11.34 9mEYqdNq.net
Visual studioでCUDAプログラムを作成しています
Nsightでstart CUDA debuggingからプログラムを走らせた時だけプログラムが動かないんですが
どのような原因が考えられますか?
以下の条件ではすべて正常に動作・終了します
デバッグなしで開始(debug,release共に)
start CUDA debuggingでブレイクポイントを仕掛けて1スレッドずつ動かす

159:142
15/06/18 13:16:06.49 9mEYqdNq.net
追加です
プログラムの詳細ですが
ある無向グラフに対して,与えられた2点が連結かどうか調べるプログラム
枝重み0と仮定してダイクストラのアルゴリズムを用いて判定しています.
1ブロックにつき16スレッドが同時に走ります.
その判定関数をfoo()とすると
if( blockIdx.x == tmp )
foo();
というように一つのブロックのみで扱うようにすると
tmpがどのような値でも正常に動作するのですが
2ブロック以上でfooに行くようにすると動かなくなります
エラーがでないことと,printfによるチェックですが
配列のアドレスも問題ありません

160:デフォルトの名無しさん
15/06/19 21:29:02.20 tQGft1o9.net
>>152
何かスレッドの実行順序に依存した処理があるか、排他が必要な競合でもあるんじゃね?

161:デフォルトの名無しさん
15/06/19 22:01:43.75 FLqfhWNF.net
>>150情報感謝です

162:デフォルトの名無しさん
15/06/22 21:23:14.11 FYteK6ai.net
デバイスメモリの内容を一時的にホスト側からアクセスしたいんですが、OpenCLでいう
clEnqueueMapBufferに相当する機能はCUDAにあるんでしょうか?
ちょっと調べてみたんですが、cudaHostRegisterは方向が逆だし、cudaMallocManagedは
既にあるデバイスメモリにアクセスするものではなさそうなので。
cudaMemcpyで読み出して終わったらまた書き出すという方法しかないんでしょうか。

163:デフォルトの名無しさん
15/06/23 13:14:37.10 DUXK3D31.net
OpenCLを知らないので外してるかも知れないけど、
基本的にはcudamemcpyするしかない。
CUDA6.0からUnified Memoryっていう機能が入って、
GPU上のメモリをホストメモリと同じように読めて、
自動的に同期を取ってくれる機能。用途によっては使えるかも。

164:デフォルトの名無しさん
15/06/24 08:02:13.81 wFw+UOzE.net
>>156
ありがとう。やっぱりcudaMemcpyするしかないのか。

165:デフォルトの名無しさん
15/06/25 22:41:21.74 t3bjYB8L.net
今日はじめてCUDAを入れた者ですが、VS2013でサンプルをビルドするとerror MSB3721…\simpleTemplates.cu"" はコード 1 で終了しました
って出るんだが何か設定とか必要ですか?
あとインストールの確認(?)でコマンドプロンプトでnvcc -Vのコマンド入れてもアクセスが拒否されましたと出る…
これが原因ですかね?
いろいろ調べてみましたが、これといった解決方法はなかったので助けて下さい。
よろしくお願いします。

166:149
15/06/25 23:09:29.97 t3bjYB8L.net
>>158です。
すいません自己解決いたしました。
ウィルスソフトが邪魔をしていたようです・・・
スレ汚し申し訳ございませんでした。

167:デフォルトの名無しさん
15/06/26 01:26:56.82 f2ddT7MK.net
750Tiってあんまりいけてないのか…
CUDA試したくてあんまり調べずに衝動買いしてしまった
900台にした方が良かったのかなあ

168:デフォルトの名無しさん
15/06/26 08:33:52.91 h0LNB3lK.net
ゲームするならかなりいけてるが倍精度はしょぼいな
倍精度が欲しいならfermiかgk110コアのがいいのか?
ゲームしないならamdでopenCLの方がコスパ良さそうなんだがどうなの?

169:デフォルトの名無しさん
15/06/26 09:30:43.08 gBS6mhz7.net
>>159
ちゃんとアンチウイルス入れておけよ。

170:デフォルトの名無しさん
15/06/26 11:48:22.16 JVzNXP51.net
CUDA7入れたのですが、
cublas.hが見つからないと出てしまいました。
cublas使うには他に何か必要なのでしょうか?

171:デフォルトの名無しさん
15/06/26 12:57:38.26 1v0mrakI.net
>>163
C:> dir /s /b "%CUDA_PATH%\cublas.h"
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\include\cublas.h

172:デフォルトの名無しさん
15/06/26 13:07:12.91 JVzNXP51.net
ありがとうございます。
みつかりました

173:デフォルトの名無しさん
15/06/26 23:47:30.95 f2ddT7MK.net
>>161
>ゲームするならかなりいけてる
こういうのがイマイチよくわかりません
単純にFLOPSで性能を見ちゃいけないのでしょうか
ゲームやGPUプログラミングに向いてるかどうかってどうやって判断してるんでしょうか

174:デフォルトの名無しさん
15/06/27 03:38:35.85 y7j5+l1E.net
>>166
プロはGPGPUするのにゲーム用のGFやRadeonをはあんまり使わない
趣味レベルでOKのGPGPUならGPGPUがオマケであるゲーム用(ゲームドライバ)のVGAでも良いが。
Xeonが一般的な業務サーバーに普通のデスクトップPCをいっぱい使うなことは
しないのと同じ。あと、FLOPSは目的のGPGPUするのに必要なレベルあれあば良い。
低FLOPSでOKなGPGPU処理に超高FLOPSのものを使うって趣味だし

175:デフォルトの名無しさん
15/06/27 09:17:14.69 f1QkQQtg.net
プロだってコスパ考えるだろ。
倍精度演算性能と信頼性で妥協できるならゲーム用GPUの方が圧倒的に安いしな。

176:,,・´∀`・,,)っ-○○○
15/06/27 23:23:04.05 XHzW5ECE.net
まあ中国の天河1号はFireStreamですらないRadeonのデュアルGPUカードを大量搭載したが
結局実用にならなくて次の更新で全部Teslaに差し替えたからね
額面のFLOPS数だけで実用性は評価できない

177:デフォルトの名無しさん
15/06/28 09:51:05.56 MpgQMMEq.net
中国はスパコンにTESLAとか使えなくなったから、NVIDIAやインテルは大口顧客を失った。

178:デフォルトの名無しさん
15/06/28 16:33:48.10 zku7pwa+.net
>NVIDIAやインテルは大口顧客を失った。
その損失分は米国内の大型スパコンでの便宜をはかることで補填されてるから企業としては差し引きOKとなったはず

179:デフォルトの名無しさん
15/06/29 08:06:36.49 FIYCVjDt.net
windows7でchainer試そうとすると
pycudaでなんか不具合出る

180:デフォルトの名無しさん
15/06/29 08:13:35.83 FIYCVjDt.net
>>160
そうでもない
URLリンク(studylog.hateblo.jp)

181:デフォルトの名無しさん
15/06/29 09:25:13.60 uPSGGZxo.net
並列計算でGTX780Ti使ってるんだけどGTX980Tiにしたら倍精度の計算って遅くなる?

182:デフォルトの名無しさん
15/06/30 16:00:18.94 vWTsPJO/.net
cudaってMFCのcppから呼べますか?
サンプルで.cuから.cppを呼んでるのは見つけたんですが。

183:デフォルトの名無しさん
15/06/30 17:26:54.94 vWTsPJO/.net
あーexternで呼べました

184:デフォルトの名無しさん
15/07/02 01:47:05.99 cql5ELb9.net
>>174
単精度演算性能 コア数×クロック数×2
倍精度演算性能 単精度演算性能/24(Kepler), 単精度演算性能/32(Maxwell)
として計算すると、
780Tiが2880×875×2/24=205GFLOPS
980Tiが2816×1000×2/32=172GLOPS
だから、遅くなるんじゃね?

185:デフォルトの名無しさん
15/07/02 15:34:36.77 bfg1NSwR.net
CUDAって仕様上できないこともコンパイルとおるのか~

186:デフォルトの名無しさん
15/07/02 23:26:03.68 Pfy0Io9G.net
Nvはゲームにゲーム用VGAには倍精度演算イラネから省くって流れだから
ゲーム用VGAで倍精度演算性能ほしいならRadeにしたほうがいいよな

187:デフォルトの名無しさん
15/07/03 14:37:16.26 WUZUNux9.net
>>177
ありがとう
Teslaは高くて買えないからPascalまで待つか

188:デフォルトの名無しさん
15/07/03 23:30:48.50 dkeXuonA.net
TITANヤフオクで探すのはどうでしょ

189:デフォルトの名無しさん
15/07/05 22:31:36.27 tW1t1zZP.net
全く値段見ないでカンで言うけど
中古の無印TITANならウンコに混じったコーン位の値段で売ってんじゃないの?

190:デフォルトの名無しさん
15/07/07 16:43:12.64 y9jINuhY.net
CULAのエラーでpos 1022ってなんですか?
LAPACKドキュメントを見よとか書いてありますが、見当たりません

191:デフォルトの名無しさん
15/07/08 10:49:51.33 UJb9gmN3.net
CUDA7.5 RC

192:デフォルトの名無しさん
15/07/08 20:10:01.47 h2HOA+i0.net
最近始めたんだけどversionって無理して最新にする必要無いのかな
7入れるのに結構苦労したんであんまり変えたくない
みなさんはガンガン上げてく感じですか?

193:デフォルトの名無しさん
15/07/08 20:20:41.59 QsV0kvB4.net
共存できるやん

194:デフォルトの名無しさん
15/07/11 13:57:32.12 QRzfcgY3.net
困らなければ基本的に更新とかはしないと思うけど…

195:デフォルトの名無しさん
15/07/13 01:32:34.78 BK2wG7MT.net
でも最新のほうが速くなったりするかもしれないし

196:デフォルトの名無しさん
15/07/27 20:50:16.33 0YcBUgDv.net
分割コンパイルができないんだけど、どうしたらいいんだろ?
ビルドどころか1ファイルのコンパイルもエラーになる
vs2013ce, cuda7.0, fermi, debug,x64
D:\cuda_test\cuda_test>
"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\bin\nvcc.exe"
-gencode=arch=compute_20,code=\"sm_20,compute_20\" --use-local-env --cl-version 2013
-ccbin "C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\x86_amd64" -rdc=true
-I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\lib\x64"
-I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\include"
-I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v7.0\include"
-G --keep-dir x64\Debug -maxrregcount=0 --machine 64
--compile -cudart static -g -DWIN32 -DWIN64 -D_DEBUG -D_CONSOLE -D_UNICODE -DUNICODE
-Xcompiler "/EHsc /W3 /nologo /Od /Zi /RTC1 /MDd "/wd 4819""
-o x64\Debug\cuda_body.cu.obj "D:\cuda_test\cuda_test\cuda_body.cu"
1> nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified

197:デフォルトの名無しさん
15/07/27 20:55:02.52 0YcBUgDv.net
nvcc fatal : A single input file is required for a non-link phase when an outputfile is specified
コンパイルフェーズで出力ファイル指定するときは1ファイルでやれっていうけど、出力ファイル指定しないと何にも出力されないし、
cuda5.0以降は分割コンパイルは対応してるよね? rdcもdlinkも指定してるし何がいけないんだ

198:デフォルトの名無しさん
15/08/02 15:01:41.54 LFE7g0os.net
別にCUDAじゃなくても良いんですが、
GPUで直接JPEGを、DirectXのテクスチャに展開して、そのまま表示したいです。
そういったライブラリって無いですか?
かなり需要がありそうなんですが

199:デフォルトの名無しさん
15/09/07 00:27:30.12 nK71AIt7.net
ヘッダファイルで定義した定数は__device__内では使えないのでしょうか?

200:183
15/09/08 02:08:23.68 V+WRCKAL.net
少し分かったことがありました
グローバルで
const int i = 1;
const double d = 1;
と定義すると
__device__内でiは使えてdは使えませんでした
error: identifier "d" is undefined in device code
とエラーが出てしまいます
どうしてdouble型だとエラーになるのでしょうか?

201:デフォルトの名無しさん
15/09/11 23:39:48.38 myHMFCwl.net
floatやlongは?

202:デフォルトの名無しさん
15/09/14 22:17:35.79 2IqUP8/H.net
floatはダメでlong intはOK
だめならだめで引数とすれば良いんですけどね
整数だけというのはcudaの仕様ですかね?

203:デフォルトの名無しさん
15/09/15 09:01:24.15 10B5WSYL.net
なんでだろうな。全く調べていないので100%想像だけど、
GPU上にstatic変数が確保されているとは思えないから、
(無いとは言い切れないが)
コンパイル時に定数展開しているんだろうな。
C++の言語仕様としてconst intは定数展開していいし、
(厳密な言い方だと間違いかもしれん)
クラスのstaticメンバにしても宣言のみで定義が不要ってのがあるから、
それに則った処理なんじゃなかろうか。

204:デフォルトの名無しさん
15/09/15 14:26:04.38 8ArN6+Sd.net
Visual Studioでエラーでた
似たような状況の人いたら教えてほしいです
環境
CPU core i5 4570
GPU GTX 980
Visual Studio 2010 Ultimate
CUDA v7.0
NSIGHT v5.0
使用言語はC
エラーが起こる状況↓
__device__ function1(){
int array1[ 1000 ];
function2( array1 );
}
__device__ function2( int *array1 ){
int array2[ 1000 ];
for( int k = 0 ; k < 1000 ; k++ ){
array1[ k ] = rand(); // rand()は何らかの乱数を返す関数
array2[ k ] = rand();
}
}
function1を呼び出したとき,時折だがarray1の値がarray2の値と同じになってしまう
エラーが起きた状況で以下のことは確認済み
・array1,2ともにグローバルメモリに確保されている
・array1とarray2のポインタは異なっている
・rand()が異なる値を返している
また,array2の宣言をfunction1で行い,function2にarray2のポインタを返すことで回避ができる

205:デフォルトの名無しさん
15/09/15 14:29:46.25 JgRUCOJR.net
全然知らんけど、スタックオーバーフローじゃね?
static int array2[1000];にすれば解決

206:GPU太郎
15/09/16 01:21:13.95 6Rc88cmlK
>>179
>Nvはゲームにゲーム用VGAには倍精度演算イラネから省くって流れだか

結局その理由は、PS4/XBoxONEにGCN世代GPUを獲られたからだ
つまり言葉は悪いが「ゲーム機は(DX12世代を見据えた)実験台」
とAMDは割り切っていた

そのためにGPGPU市場を見据えた大胆な実験を特にPS4で実行している
PCもその流れを受けて、これから海外パブリッシャーがどんどん超大作をそちらに合わせて出していく

これからは、AMDのFirePROにシフトするべき

207:デフォルトの名無しさん
15/09/17 00:01:30.77 6wQsOGVx.net
>>193
device修飾してないだけとか馬鹿なおちはないよな?

208:デフォルトの名無しさん
15/09/27 11:58:09.30 X6SDQWu/.net
VS2013 cuda7.0で
intelisenseがcudaの関数やthreadIdxなんかに赤線つけるんだけど
intelisenseを無効化させる方法ではなく、対応させられない?

209:デフォルトの名無しさん
15/09/29 16:27:34.89 ++1fLQj6.net
CUDAって余計な決まり事が多くてGLSLよりわかりにくくなってると思うんだけど

210:デフォルトの名無しさん
15/09/30 06:44:35.73 OmftLuOo.net
>>201
#include<device_launch_parameters.h>
で消えない?

211:デフォルトの名無しさん
15/10/01 00:53:18.68 44xt2+tf.net
cuda_header.hに以下をまとめて、これを.cuでインクルードしてるんだけど、インテリセンスがエラーとして表示したままなんだ。
また従来のcutil系の代わりのhelper関数のヘッダが開けないともなぜか出る。(プロジェクトの追加のインクルードDirには指定してあるんだが・・)
でもコンパイルはされるんだよ・・・。インテリセンスのキャッシュクリアしようと考えたんだが2013のメニューにはないみたいだし・・。
#include <cuda.h>
#include <cuda_runtime.h>
#include <device_launch_parameters.h>
#include <device_functions.h>
#include <math_constants.h>
#include <helper_cuda.h>
#include <helper_math.h>

212:デフォルトの名無しさん
15/11/11 20:12:32.44 1VxiIponn
超初歩的な質問ですがよろしければお願いします
環境 windows7 64bit Visual Studio 2013 community CUDA7.5
CUDAインストール時にはVS2013をインストール済みと判定するものの
コマンドプロンプトからnvccでサンプルを実行させると
nvcc fatal  : nvcc cannot find a supported version of microsoft visual studio
とエラーが発生します
パスなどの設定の問題なのでしょうか?

213:デフォルトの名無しさん
15/11/11 20:55:36.03 FAkUvGGr.net
超初歩的な質問ですがよろしければお願いします
環境 windows7 64bit Visual Studio 2013 community CUDA7.5
CUDAインストール時にはVS2013をインストール済みと判定するものの
コマンドプロンプトからnvccでサンプルを実行させると
nvcc fatal : nvcc cannot find a supported version of microsoft visual studio
とエラーが発生します
パスなどの設定の問題なのでしょうか?

214:デフォルトの名無しさん
15/11/11 22:32:08.88 kzShUi9X.net
コマンドプロンプトからcl.exe叩くのと同じだろう。
VSの開発者コマンドプロンプトからやってみれば?

215:デフォルトの名無しさん
15/11/12 06:18:25.24 oFlt1n6m.net
Communityでもいけるんだ?
少し前に断念してProにした記憶がある

216:デフォルトの名無しさん
15/11/16 00:30:41.16 wFEoXPFZ.net
質問です
OpenGLとCUDAを使って流体のシミュレーションをしようと考えています
OpenGLの描画とCUDAの計算を別スレッドで行ってCUDAの計算の完了を待たずに描画をしようとするとプログラムが落ちてしまいます
そもそもこういう使い方は間違いですか?
GPUを二つ使わないと不可能なのでしょうか?

217:デフォルトの名無しさん
15/11/16 04:31:20.12 yRzaBdvH.net
CUDAを待たずにどういったデータで描画してるの?

218:デフォルトの名無しさん
15/11/16 11:12:07.65 wFEoXPFZ.net
正確には
      CUDAで計算
          ↓
計算用と描画用として二つのデータをメモリにコピー
     ↓        ↓
グラフィック描画  CUDAで計算  ←ここを並列化したい
               ↓
計算用と描画用として二つのデータをメモリにコピー
     ↓        ↓
グラフィック描画  CUDAで計算
               ↓
といった処理の流れです
描画と計算の処理の合計が少しでも速くなれば最終的には速くなる見込みなんですが、描画とCUDAは同時にはできないのでしょうか?

219:デフォルトの名無しさん
15/11/16 13:12:47.35 tPyDrti9.net
>>209
そういうのは環境、sdk、cc、計算モード、HWによっても違うと思うんだけど。
大前提として計算してる最中でも、描画分のリソースは残してるのかね?

220:デフォルトの名無しさん
15/11/16 18:15:47.96 wFEoXPFZ.net
すいません何故か解決しました
OpenGLによる描画をサブスレッドにしていたところメインスレッドにしたら問題なく実行できるようになりました

221:デフォルトの名無しさん
15/11/19 10:22:54.59 78JlLUmP.net
AMD、GPGPUの向けの取り組み「ボルツマンイニシアチブ」を発表。CUDAとの互換性も提供 | スラド
URLリンク(srad.jp)

222:デフォルトの名無しさん
15/11/19 18:31:49.90 xKyOvSDo.net
>>214
いまや一般向けプログラムですらGPUを使うことが普通になったから、
これがC++コンパイラーのデファクトになるだろうな。
DX12,VulkanでGPUするならAMDって流れにまってしまったからな

223:デフォルトの名無しさん
15/11/19 20:24:21.71 FjjW9TL1.net
え?
GPGPUの世界は圧倒的にNVIDIAなんだけど?

224:デフォルトの名無しさん
15/11/19 20:26:18.29 Zq45eYUV.net
PC用GPUでもAMDはシェア2割切ってるでしょ

225:デフォルトの名無しさん
15/11/19 21:33:26.48 ngiRjlY7.net
産業向けのガチのやつならNvidiaでくだ
カジュアルな一般向けならIntelをOpenCLでってとこかな

226:デフォルトの名無しさん
15/11/19 22:05:05.00 btQoS/xZ.net
開発の手間で言えばCUDAが一番楽。NV限定にできるなら趣味でやるにしてもそれが一番手軽。
OpenCLならせめてAMD。IntelはOpenCLの経験を積んだ苦労と向け。

227:デフォルトの名無しさん
15/11/19 22:09:50.57 ngiRjlY7.net
個人向けやオフィスPCでグラボ別にあるのって少数だから仕方ない。
数を優先するならむしろNvidia切ってIntelのみ対応という手もありうる。

228:デフォルトの名無しさん
15/11/19 22:10:45.45 ngiRjlY7.net
慣れてるし開発ツール揃ってるからNが一番楽なんだけど。

229:デフォルトの名無しさん
15/11/19 22:48:28.04 btQoS/xZ.net
HD GraphicsでOpenCLやってもCPUと大して性能変わらんぞ?
それに、オンボードグラフィックスのPC自体は多いだろうが、OpenCL1.0しか動かんとか
そもそもOpenCLが使えないのも少なくない。間口でいうならSSEでもやるほうがまし。
そうでなければAMDでOpenCL開発してNVとIntelで動作確認ってところだな。

230:デフォルトの名無しさん
15/11/19 23:05:53.48 ngiRjlY7.net
>>222
CPUの代わりというよりは少しでも計算パワーがほしい場合もあってさ。
GPU使ってる間CPU使えるなら2倍になるじゃん?
あるいはBGでうごかしてフロントでは通常のアプリ使えるじゃない?
絶対的なパワーというよりはそういう所に使いでを見出してる。
確かにOpenCLはHWアーキ変更激しいし世代でがらりと変えてくるからやりにくそうなんだけど。

231:デフォルトの名無しさん
15/11/19 23:06:47.02 ngiRjlY7.net
間違い。OpenCLではなくてIntelのGPUね

232:デフォルトの名無しさん
15/11/19 23:36:03.63 u4ZVkU4H.net
AMD関連使って良かったと思った印象が一度も無いから使いたくねえな

233:デフォルトの名無しさん
15/11/19 23:54:31.95 btQoS/xZ.net
>>223
つまり、少しでもパフォーマンスは欲しいけどdGPUほどの性能は必要なくて、
数を優先するけどオンボードグラフィックスでOpenCLが動く環境に限定していいと。
最初の「カジュアル」からは想像つかないピンポイントな要件だなw

234:デフォルトの名無しさん
15/11/20 00:37:51.03 XYOZ5eLO.net
カジュアルGPGPUなら内蔵GPUでOpenCL2確定
一方、外GPUを使う高性能GPGPUものは昔はNvidiaが圧倒していたけど、いまはAMDが圧倒しているんだろ?

235:デフォルトの名無しさん
15/11/20 00:49:06.07 H4wqwi3u.net
>>226
そうなのかなあ?自分の文章の書き方が良くないのかもしれないが
ほとんどは内蔵GPUしか期待できないから、
その範囲で少しでも計算パワー稼ごうと思ったらそれしかないように思うのだけど
dGPUほどの性能はいらないわけじゃなくて、ほとんど期待できないからしかたなくという感じ。

236:デフォルトの名無しさん
15/11/20 01:19:10.06 mr/p17yR.net
組み込みは知らないけど汎用PCでAMDが圧倒した話なんて聞いたことない

237:デフォルトの名無しさん
15/11/20 05:55:05.61 M/+Jbdu5.net
bitcoin マイニングでは AMD 一択だったようだが

238:デフォルトの名無しさん
15/11/20 07:13:28.40 08M9JH


239:WM.net



240:デフォルトの名無しさん
15/11/20 07:48:52.29 kIzUFPbb.net
bitcoinは専用ASICが開発されてとっくにそっちが主流になりました
GPGPUでやったところで、最早電気代のもとを取ることすらできない
GPGPUが最適といわれるのはASIC以前にFPGA化して売り出すほどの人気もない
マイナー暗号通貨くらいでそんなニーズが世界的な需要をけん引することなんて
ありうるわけがないのだ(需要が少ないからこそGPGPUでやってるわけだし)

241:デフォルトの名無しさん
15/11/20 07:54:46.98 h5Le2W6O.net
>>228
一般に配布するアプリでなるべく多くの環境で動かしたいというならOpenCLで、
内蔵GPUしかない人は動けば御の字、もっと速く動かしたければちゃんとしたGPU
買ってね、でいいと思うが。
社内ツールとかで外付けがほとんど期待できないのなら、たいして速くならない
割りに動かないリスクばかり大きいんで素直にCPUのがマシ。

242:デフォルトの名無しさん
15/11/20 08:15:06.13 lXZVvFkG.net
GPUばりばり使ってますってアピールしているプログラムで、avxもsseも使えないようなプログラミングしている例も多いからなぁ。

243:デフォルトの名無しさん
15/11/20 08:21:26.00 kIzUFPbb.net
内蔵GPUはどのみちメインメモリの帯域で頭打ちになるのでたいていの問題では
AVX使ったほうが速いんだよね
どっかのA社のはCPUコア側のメモリ帯域にリミッタがかかってて内蔵GPU側も使わないと
フルに帯域を使えないうえCPU側のAVX性能が残念だから
そもそもそれ専用にプログラム書くほどの市場がない
CUDAは一握りでもちゃんと労力に見合った金を払ってくれる法人ユーザーが一定数いるから
ビジネスとして成立するんだよ。その点法人皆無で貧乏人しかいないA社ユーザーじゃ無理

244:デフォルトの名無しさん
15/11/20 11:47:48.38 mr/p17yR.net
ビットコインマイニングとか普通じゃない使い方で普及してるかどうかはどうでもよくないか

245:デフォルトの名無しさん
15/11/27 23:57:44.09 tzomtYgx.net
内臓GPUにこだわるのはそもそもGPUに興味もない人が増えていて
そんな人までプログラム、GPGPUに参加したり利用する可能性が高いからなんだよな
GPU自体ニッチ向けの商売になりつつあるし

246:デフォルトの名無しさん
15/11/28 00:01:22.67 KoXr/JyJ.net
>>211
DX12でGeForce全般がAsync、非同期処理が苦手といった話があったけどそれとは関係ないよね?
自己解決ってことはやっぱ非同期で処理してたのが原因かもしれないけど
(サブで描画するのは普通にお行儀が悪いけど)

247:デフォルトの名無しさん
15/11/28 00:33:01.21 CG0HQ1xP.net
単にOpenGLの使い方の問題だろ。context作ったスレッドと別のスレッドからアクセスしようとした。

248:デフォルトの名無しさん
15/11/29 06:40:00.31 Ciaig/FJ.net
Win7PCに搭載されたQuadro4000とVC2012のC++AMPでfloatの計算をさせると「グラフィックスが応答しないのでリセットしました」とかメッセージをだしてプログラムが異常終了してしまう。
計算量はCPUを使った場合に8スレッド+AVX2で30分くらい。一枚のグラボで画面表示とGPGPU計算の両立は無理? CUDAを使えば可能なのだろうか?

249:デフォルトの名無しさん
15/11/29 06:56:59.57 PzHZjgEI.net
少し前のレス見てごらん

250:デフォルトの名無しさん
15/11/29 19:54:46.97 jxlspYCF.net
>>240
GPGPUではよくあること
そんなことがよくあるから一般PCでGPGPUが激活用されない
一般PCではGPGPUよりOSによる画面表示の方が大事だから、画面表示を激妨げるのものは殺す
GPGPUを必死したいならGPGPU用VGAと画面表示用VGAを搭載する
画面表示を激妨害しないようなゆとりGPGPUプログラムにする

251:デフォルトの名無しさん
15/11/29 22:14:39.86 Ciaig/FJ.net
>>231
レスありがとう。
やっぱ、無理なんだ。
動くのは、サンプルだけか。

252:デフォルトの名無しさん
15/11/29 22:41:35.63 eJ1soHzz.net
GPGPU始めたときに最初に引っかかるところだな。
これの一番下。
URLリンク(msdn.microsoft.com)

253:デフォルトの名無しさん
15/11/29 23:16:26.96 vsLNXKl8.net
QuadroってTCCモードにできなかったっけか?

254:デフォルトの名無しさん
15/12/02 07:09:10.66 REHK1l6p.net
Quadro自体結構前の世代のグラボじゃないっけ・・・

255:デフォルトの名無しさん
15/12/09 05:38:34.32 0m997ITy.net
2秒たったらハードウエア割り込みをかけて一瞬だけ画面表示させて、TDRが問題にならないように制御できないのかな?

256:デフォルトの名無しさん
15/12/09 16:39:41.14 OazooE89.net
あんたエンジニアに向いてないなw

257:デフォルトの名無しさん
15/12/09 19:33:54.62 wnEGaksG.net
いや、むしろ向いてるかも
デスマーチを突破するにはそれぐらいのやっつけ仕事が出来なきゃねw

258:デフォルトの名無しさん
15/12/10 02:04:50.93 0cE1JGhL.net
勢いでwindows10にしてからcudaが一切認識しなくなった・・・
version7.5、ドライバ最新版入れてGPU-ZでCUDAにチェック入っているのに初期化で失敗する。
付随してwaifu2x-caffeとかも動かなくなってるしもしかしてまだwin10には対応してなかったのか。

259:デフォルトの名無しさん
15/12/10 02:30:34.40 DGBX2/sF.net
>>250
URLリンク(docs.nvidia.com)
によるとサポートしてそうだけど

260:デフォルトの名無しさん
15/12/10 22:46:54.47 0cE1JGhL.net
>>251
だよね・・・
最新ドライバや少し古いバージョンを入れてみるとGPU-Zでチェックに入ってるんだが
cudaを使うソフトがことごとく検出できませんでしたと出てサンプルプロジェクトも強制終了する。
NVEncのためにCUDAが使えなくなったとかいう記事見たけど、まさかこれが理由ってわけではないよね

261:デフォルトの名無しさん
15/12/10 23:22:08.77 9vd2ccw+.net
>>252
win10のvs2013で7.5問題なく使えてる。ついてくるサンプル、ビルド・実行ともに。

262:デフォルトの名無しさん
15/12/10 23:59:35.52 Qmth+aWu.net
今のNvidiaはAMDに比べてかなり安定度低いからな

263:デフォルトの名無しさん
15/12/11 02:14:41.31 f48gwmmB.net
>>252
GPU-ZでCUDAが見えるのにアプリケーションが動かないってのはRuntime DLLが
見つからないんじゃないのか?
どっちにしても、CUDAのどの関数を呼んだときに落ちるのか、あるいはそもそも
最初から起動できないのか、どこで落ちているかくらい調べることはできるだろ。

264:デフォルトの名無しさん
15/12/26 22:42:40.07 Xbomr4ek.net
>>249
そんな態度でいるからデスマーチに陥るんじゃ?
いざとなった時の処世術は身につけておかなければいけないとは思うけど

265:デフォルトの名無しさん
16/01/10 19:11:06.55 EetmQxdp.net
おかげさまでCUDAでchainer使えるようになりました。
爆速で進捗状況見てるだけで嬉しいです。
本当にありがとうございました。

266:デフォルトの名無しさん
16/01/13 07:52:00.07 6qdfgrgw.net
使えなかった理由は何だったのかと

267:デフォルトの名無しさん
16/01/17 02:52:40.35 u0dhvow6W
教えていただきたいことがあります。
ubuntu14で、chainer1.5.1のmnistをGPUで計算できるか試行錯誤中です。
python train_mnist.py --gpu 0 #エラー 
sudo python train_mnist.py --gpu 0 #エラー
python train_mnist.py --gpu 0 #うまく動いた
と、sudoをつけて外しただけで、うまく動いた理由を知りたいのです。自分の操作が正しいのか間違ってるのかよくわからなくなってきました…
ログのリンクも添付しています。2つは同じファイルです(dotupはアップローダーの都合上zip圧縮しています)

事前の処理として、vgaのドライバ、cudaとcudnnを入れてパスを通しています。
またchainerのmnistも、cpuの処理ならエラーは出ずに動いていました。

操作は
python train_mnist.pyを実行してcrl+cで止めた。
python train_mnist.py --gpu 0を実行してエラーになった(30-38行目と同じエラー)。
その後、再起動
1行目:VGAの番号を取得した(GTX750tiのIDが0)
28行目:enter押しただけ
29行目:python train_mnist.py --gpu 1 なんとなくid1で動かしてみた。エラー
39行目:id2で動かしてみた。内蔵gpuを使うかも?と思ったがエラー
49行目:id0で試すもエラー
59行目:sudoつけてみてエラー。パスを引き継いでないからnvccがない(=CUDAが見つからない)、cudnnが無いというエラーが出ているのだと思います。
91行目:sudo外したら普通に動いた

URLリンク(www.dotup.org)
URLリンク(www1.axfc.net)

268:デフォルトの名無しさん
16/01/17 03:23:46.57 lMNqpq/q.net
教えていただきたいことがあります。
ubuntu14で、chainer1.5.1のmnistをGPUで計算できるか試行錯誤中です。
python train_mnist.py --gpu 0 #エラー 
sudo python train_mnist.py --gpu 0 #エラー
python train_mnist.py --gpu 0 #うまく動いた
と、sudoをつけて外しただけで、うまく動いた理由を知りたいのです。自分の操作が正しいのか間違ってるのかよくわからなくなってきました…
ログのリンクも添付しています。2つは同じファイルです(dotupはアップローダーの都合上zip圧縮しています)
事前の処理として、vgaのドライバ、cudaとcudnnを入れてパスを通しています。
またchainerのmnistも、cpuの処理ならエラーは出ずに動いていました。
操作は
python train_mnist.pyを実行してcrl+cで止めた。
python train_mnist.py --gpu 0を実行してエラーになった(30-38行目と同じエラー)。
その後、再起動
1行目:VGAの番号を取得した(GTX750tiのIDが0)
28行目:enter押しただけ
29行目:python train_mnist.py --gpu 1 なんとなくid1で動かしてみた。エラー
39行目:id2で動かしてみた。内蔵gpuを使うかも?と思ったがエラー
49行目:id0で試すもエラー
59行目:sudoつけてみてエラー。パスを引き継いでないからnvccがない(=CUDAが見つからない)、cudnnが無いというエラーが出ているのだと思います。
91行目:sudo外したら普通に動いた
URLリンク(www.dotup.org)
URLリンク(www1.axfc.net)

269:デフォルトの名無しさん
16/01/17 04:58:38.94 rTwmHzKS.net
普通にsudoユーザー環境でcudaにパスが通ってないだけ
パスの通し方がわからなかったらこのスレじゃなくてLinuxの初心者スレで

270:デフォルトの名無しさん
16/01/17 14:25:56.74 lMNqpq/q.net
>>261
ありがとうございました。

271:デフォルトの名無しさん
16/01/21 02:42:05.52 ZU2ddnih.net
素人な質問なんですがコア数×10スレッド立てたときとコア数と同じスレッド数で10ループした場合とでは前者の方が1.5倍くらい早かったんですけど何故でしょうか
物理的に真に並列で動作するのはコア数と同じスレッド数ではないのですか
最適なスレッド数が分からなくて困ってます

272:,,・´∀`・,,)っ-○○○
16/01/21 03:02:10.96 tV143knu.net
Core数ではなくWarp数に合わせるべし
Maxwellの場合はコア数とWarp数は一致してるけどね
コア数の倍以上のスレッド数を立ち上げるメリットは、ロード・ストアを含む命令間の
レイテンシが隠蔽されるのでパイプラインの充填率が上げやすくなる。
半面、1スレッドあたりで使えるレジスタ本数が少なくなるので
ロード・ストアを頻発するほどのレジスタ不足になるのは本末転倒なので
並列化は程々に。
これに特に明確な基準はない。最適なスレッド数はトライ&エラーで決める。
慣れてくるとPTXとかCUBINを逆アセンブルして決める場合もある
(昔、理研で重力を自在に操る高貴なる男性研究者がメールで教えてくれた方法)

273:デフォルトの名無しさん
16/01/21 03:04:52.51 l5HMGS+b.net
>>263
仮想コア等の技術などで、本来あるコア数以上の並列処理をするのが最新のcpuやGPU、そしてライブラリ
そのへんはあまり考えずにリファレンス通りに投げてしまう方がいいと思う。
ライブラリによっても日々変わるので、最適なスレッド数というのはわからない

274:デフォルトの名無しさん
16/01/21 03:07:26.03 UGOk39Ww.net
並列化のアレコレの時に気をつけるのは基本的にはオーバーヘッドやで
スレッド増やしたことで減るオーバーヘッドを考えてみなされ

275:デフォルトの名無しさん
16/01/21 03:12:33.48 RQbtFNgK.net
そんなもん処理にもよるわ
メモリアクセスがネックになることが多いから
物理的に真に並列で動作するなんてことの方がまれ

276:デフォルトの名無しさん
16/01/21 03:52:40.75 ZU2ddnih.net
>>264
時間のかかる処理を行っている間に別のワープへ命令を発行しているということなんですかね

277:デフォルトの名無しさん
16/01/22 08:29:36.48 3nKRZUCp.net
ECCにはこだわっても
マザーの品質にこだわらないならいいのではw

278:デフォルトの名無しさん
16/01/22 17:13:45.63 xiqoLqZ5.net
正直本格的な並列処理は非同期処理対応したGPUを待った方がよさそうなんだけどな

279:デフォルトの名無しさん
16/01/22 18:34:49.79 EJ7vldBc.net
別に待つ必要なくね?
乗り換えれば済むし

280:デフォルトの名無しさん
16/01/22 19:37:25.23 xiqoLqZ5.net
RadeonはCUDA対応してないじゃん
nvidia製の非同期処理に対応したCPUは実質的にはまだ出てない

281:デフォルトの名無しさん
16/01/22 22:55:19.34 XypiUmy6.net
>>272
>RadeonはCUDA対応してないじゃん
当たり前じゃんw
>nvidia製の非同期処理に対応したCPUは実質的にはまだ出てない
だからなに?
それまで待ってるの?
意味がわからない

282:デフォルトの名無しさん
16/01/22 23:25:50.64 t81Zesj8.net
落ち着けよ

283:デフォルトの名無しさん
16/01/22 23:38:58.19 /Be9v1kC.net
1.メモリ読みにいく
2.大きな遅延が発生するからレジスタ待避
3.別なスレッド立ち上げる
を繰り返し
レジスタがどんどん減っていく

284:デフォルトの名無しさん
16/01/22 23:48:18.02 xiqoLqZ5.net
>>275
これがあるから並列処理に制限がかかって
非同期処理はnvidiaがNG出す状況になってるんだろうなと思う

285:デフォルトの名無しさん
16/01/23 00:13:36.37 TXnGkntP.net
いや非同期かんけぇねぇし

286:デフォルトの名無しさん
16/01/23 00:24:57.37 NV47HivO.net
>>276
お前さっきからなに訳のわからない事言ってんだよ

287:デフォルトの名無しさん
16/01/23 02:41:31.78 qmdjqcBj.net
今あるもの使うしかないのに何が言いたいのかわからんぞ

288:デフォルトの名無しさん
16/01/28 12:46:52.07 6a4EL6WE.net
非同期処理はゲームで使うもの
GPGPUには関係ないよ

289:デフォルトの名無しさん
16/01/28 12:56:49.21 6a4EL6WE.net
むしろNVにとっての痛手は倍精度のGPUを作っちゃうと「ゲーム用」が完全にAMD天下になっちゃう事
その最大の理由が、SCEに吹っかけすぎて、NV切りを起こされた事
GCN世代GPUがゲーム機を総獲りし、ローレベルAPIで組まれるAAAタイトルが全てGCNに最適化
これを奇貨としたAMDがDirectX12を提唱→DirectX史上初めての互換切り→AMDデファクトスタンダードの流れ
そのために科学技術演算と言う市場を捨てないといけなくなった
VulkanもDX12に倣って完全にAMDに合わせてるからな
だからディープディープ連呼するんだよ
半精度でディープが出来るからな

290:デフォルトの名無しさん
16/01/28 15:37:41.52 GWvEyNte.net
カメラと連携してリアルタイムで判断をこなしながらってのは非同期処理無しでも大丈夫なのか?

291:デフォルトの名無しさん
16/01/28 17:48:40.92 nzOvC+QF.net
ばかがいる

292:デフォルトの名無しさん
16/01/28 20:21:46.33 EEHWgu+r.net
ああ、いつもの非同期君だよ
ほっとけ

293:デフォルトの名無しさん
16/01/29 01:29:29.84 q0fsZtFa.net
非同期はゲーム用って何度言えば

294:デフォルトの名無しさん
16/01/29 02:29:28.87 QU8XaCF4.net
非同期って何だよ

295:デフォルトの名無しさん
16/01/29 07:41:28.07 HGJh8rQ+.net
hyper-q

296:デフォルトの名無しさん
16/01/29 12:43:58.50 q0fsZtFa.net
多分非同期君はNV信者だと思う
そうでなければこんなところのこんなスレで五月蝿く連呼するか?
問題はなぜそうするのか、だ
俺なりに出した答えは、Pascal開発が暗礁に乗り上げてる所為だと思う
未だにモックしか出してないからな、Pascal

297:デフォルトの名無しさん
16/01/29 15:12:50.38 HGJh8rQ+.net
ばかがいる

298:デフォルトの名無しさん
16/01/29 17:56:14.69 q0fsZtFa.net
hyper-阿q HG

299:デフォルトの名無しさん
16/01/30 11:53:30.18 8faHSQBO.net
VulkanとDirectX12は殆どAMDのためにあるようなものだからな
ゲーム機を支配したAMDはローレベルAPIを支配し、ゲームコードは全てAMD基準になった
これはNVにとっては痛恨
倍精度GPUなんか出す余裕はないだろう

300:デフォルトの名無しさん
16/01/30 12:24:57.23 o5vi6iJ9.net
GPUのグローバルメモリのバンド幅計算で質問があります。
バンド幅(GB/s) = メモリのデータレート(MHz) * bit幅(bits) / 8(byte) / 1000
メモリのデータレート GDDR5の場合 clock * 4
           DDR3の場合 clock * 2
上記のようになると思うのですが、
DDR3は立ち上がり立ち下がりで情報を伝達するのでクロックの2倍になるのはわかったのですが
GDDR5がDDR3に比べなぜ2倍になるのでしょうか?

301:デフォルトの名無しさん
16/01/30 14:18:14.00 PJcKfdaW.net
クロック信号1周期に4回データ転送してるから4倍

302:デフォルトの名無しさん
16/01/30 16:35:02.53 o5vi6iJ9.net
>>293
回答ありがとうございます。
NVIDIAのスペックを見ていたのですが仕様値と計算があわず、わからなくなってしまいました。
URLリンク(www.nvidia.co.jp)
これによると、C2050は384bit, 1500MHz, で144GB/sとあるのですが、計算してみると
 384 * 1500 * 4 / 8 / 1000 = 288GB/s
になってしまうのです。仮に1500MHzがデータレートと仮定すると
 384 * 1500 / 8 / 1000 = 72GB/s
どちらも仕様値と違ってしまいます。もしかしてバンド幅はメモリのリードとライト
合わせての値なのでしょうか?

303:デフォルトの名無しさん
16/01/30 16:36:27.36 o5vi6iJ9.net
つまり上り72GB/s、下り72GB/sの合わせて144GB/sなのでしょうか?

304:デフォルトの名無しさん
16/01/30 16:59:32.46 8faHSQBO.net
NVはもう倍精度のGPUは造らないよ
ローレベルAPIをAMDに奪われた現在、半精度GPUで描画特化をせざるを得ない

305:デフォルトの名無しさん
16/01/30 18:25:46.28 ypcCS+Q8.net
CUDAスレで何言ってるんだかこのアホは

306:デフォルトの名無しさん
16/01/31 00:13:30.67 v07wXVxF.net
描画とかもうどうでも良い
時代はGPGPU

307:デフォルトの名無しさん
16/01/31 00:57:29.07 cNgLqKMa.net
GPGPUでは倍精度がものを言うが、NVはもう倍精度に手を出せないということ

308:デフォルトの名無しさん
16/01/31 01:06:55.62 V+Yf7lZI.net
単精度でも十分みたいな話じゃなかったの?
それでディープ・ラーニングを推し進めていると思ったんだけど

309:デフォルトの名無しさん
16/01/31 01:23:20.65 cNgLqKMa.net
深層学習とビッグデータは半精度(でも可)
しかしこのスレの関心はあくまでも倍精度、出来るならば倍々精度だろ?
しかしこの倍精度は、CS機の競争環境でオマケがつくか削られるか都合で決まる
そう言うわけでVoltaはアメリカ政府との契約違反に問われないように出荷するだろうけど、
これはカスタム
AMDにCS機が獲られた現在、NVのGPUは描画/ワットパフォーマンス特化路線に軸足を置いた
DirectX11まではハイレベルAPIだったから倍精度GPUを出す余地があり、同時に科学技術演算市場を狙う二兎を追う路線を
追求できた
しかしDirectX12は完全にAMDのGCN世代GPUのハード直叩き規格だから普通に戦ったらfps/解像度共に負けてしまう
だからこそ半精度に活路を求めている

310:デフォルトの名無しさん
16/01/31 01:27:41.36 v07wXVxF.net
DirectX12とかどうでもよろしい
ここはCUDAのスレ
AMDな方はOpenCL()のスレにお帰り下さい

311:デフォルトの名無しさん
16/01/31 02:27:05.81 tWmMlKqo.net
GeforceはいいからTeslaがんばれ

312:デフォルトの名無しさん
16/01/31 08:33:54.41 v07wXVxF.net
TeslaよりTitanの方が良いよ

313:デフォルトの名無しさん
16/01/31 11:45:10.40 k6wK0w/E.net
ばかが常駐するようになったな

314:デフォルトの名無しさん
16/02/01 01:21:54.44 27TlSaYk.net
倍精度倍精度って、使い道も無いくせに
滑稽だな
戦闘力みたいなイメージか

315:デフォルトの名無しさん
16/02/01 02:50:26.19 9fNLotPU.net
科学計算でも計算量が多くてそこまで精度が必要なものってどれだけあるんだ

316:デフォルトの名無しさん
16/02/01 07:15:29.10 BOcjqYcH.net
科学技術計算では単精度や半精度で行う方がよっぽど珍しいと思うが

317:デフォルトの名無しさん
16/02/01 09:11:27.82 fnCrDph6.net
物理系じゃ大きい数+極小の数なんて普通にあるからな
倍精度でも足りなくて四倍精度必要になったりすることもざら

318:デフォルトの名無しさん
16/02/01 09:26:01.45 2VMpgIMC.net
Kerasってdeep learningフレームワークはbackend.pyてファイルを追加するだけでopenclでも動くようになってるよ。誰かbackendを書かないか?

319:デフォルトの名無しさん
16/02/01 12:33:46.47 Ucvj9UOE.net
こうなったらこのスレの住人が声を上げて、PEZYに倍々精度のMPUを造ってもらおうよ
もうNVは金輪際倍精度に手を出さないよ

320:デフォルトの名無しさん
16/02/01 14:17:42.51 fSUYSvsK.net
倍精度が必要な要件って
例えば何があるんだ?
2.0e+38を超えるスケールで
2.0e-38以下の誤差を必要とするプロジェクト?
そんなのあんの?
そりゃー誤差が小さくなれば
破綻する可能性は減るけどさ
おたくらが求めてるのってそれだけじゃねえの?

321:デフォルトの名無しさん
16/02/01 14:48:07.70 iOXOBOCM.net
いらん
DNNではな

322:デフォルトの名無しさん
16/02/01 14:59:29.79 9fNLotPU.net
>>308
でもシミュレーションにGPGPU使ってる人いるだろ
たいして速度でないのに倍精度でやってんのか
xeon phi使った方が良さそう

323:デフォルトの名無しさん
16/02/01 15:05:12.00 CUSF99yG.net
>>312
指数分の大きさではなくて仮数部の大きさ(幅)だよね。
仮数部の幅分大きさの違う数値を加減算すると0を加減算したのと同じになると思うけど。

324:デフォルトの名無しさん
16/02/01 15:07:09.85 CUSF99yG.net
増分解法では致命的になる場合あり。

325:デフォルトの名無しさん
16/02/01 15:07:56.23 SiSRa9Ib.net
装置もんで数万枚/日のリアルタイム画像処理に使ってるけど、普通にdoubleが使えると楽なんだけどな。
速度も考慮すると大きい数と小さい数の計算前、画像処理の前後でdouble、float変換してるからCPU圧迫してくる。
でも、シンプルで意図した通りに動くからCUDAは組みやすい。
んー、この辺がジレンマだな。

326:デフォルトの名無しさん
16/02/01 15:44:31.42 fSUYSvsK.net
それは倍精度が必要な理由になってないような
やっぱ盲信が多そうだな

327:デフォルトの名無しさん
16/02/01 16:07:14.05 oiE/5K5n.net
>>311
そこの製品一般人で買えるルートあんのかよ

328:デフォルトの名無しさん
16/02/01 18:24:22.88 BOcjqYcH.net
大きな行列の計算、FFT、急峻なカーブの音声フィルター、レイトレーシング、物理シミュレーション、空間認識、...
倍精度以上の精度が必要な用途はいろいろとある
単精度のハードで倍精度相当の演算をすると、十数倍の時間がかかる
倍精度のハードで4倍精度相当の演算も同様に十数倍
多倍長演算も倍精度や4倍精度ハードがあれば、単精度よりもずっと速く計算が可能

329:デフォルトの名無しさん
16/02/01 18:32:19.85 BOcjqYcH.net
簡単な画像フィルターや音声フィルターなら単精度でいいし、ディープラーニングなら半精度でも良かったりする
半精度~4倍精度までのハードがあるのが一番なんだけど
倍精度演算ハードがあれば単精度も同じ速度で計算が可能だが、単精度のハードで倍精度相当の演算をするには十数倍の時間がかかる
ゲーム用途など、単精度を使うことがはっきりしてる時じゃなければ倍精度を積んでおくのが無難
4倍精度はさすがにGPUに積むのは規模が大きくなりすぎるが、CPUには積んで欲しい
半精度は、単精度との変換だけでとりあえずは良い

330:デフォルトの名無しさん
16/02/01 20:19:15.33 Ucvj9UOE.net
URLリンク(www.4gamer.net)
URLリンク(www.4gamer.net)
>また,Huang氏が示したスライドで,第2世代Maxwellアーキテクチャベースの「GeForce GTX TITAN X」とDrive PX 2を比較すると,
>単精度浮動小数点演算性能は前者が7TFLOPSなのに対して後者は8TFLOPSと,
>劇的には高速化していない点も気になった。
↓その一方で…
>ちなみにHuang氏は,Drive PX 2の性能指標として,ディープラーニング処理の演算性能を示す
>「DL TOPS」を示しているが,これだとデュアルPascalはGeForce GTX TITAN Xの3倍以上というスコアになっている。
これ、完全にゲーム特化とビッグデータ特化GPUじゃん、Pascalwwwwww
俺の言ったとおりもう科学技術GPGPUはオワコンなんだよ
完全に半精度依存、完全にワットパフォーマンス/描画特化GPU路線だはwwwwww 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)


331:デフォルトの名無しさん
16/02/01 21:46:57.46 vs1yi7F6.net
>>321
倍精度乗算器の回路コストは単精度の約4倍

332:デフォルトの名無しさん
16/02/01 22:30:54.71 MibI1Q78.net
バカが住み着いてる

333:デフォルトの名無しさん
16/02/01 22:58:36.28 9fNLotPU.net
実際に業務で使ってる人は倍精度で運用してるのか?

334:デフォルトの名無しさん
16/02/01 23:10:33.37 BOcjqYcH.net
>>323
まあ純粋に乗算器だけでいえばそうだけど...
>>322
半精度はさすがにゲームでも足りない
半精度専用GPUなんて出ない
少なくともPC用には

335:デフォルトの名無しさん
16/02/01 23:17:23.47 BOcjqYcH.net
>>325
業務っていろいろあるが
おれの範疇は単精度、倍精度、疑似4倍精度、多倍長といろいろ
多倍長も、筆算レベルからカラツバ、DFTレベルとさまざま
もちろん普通のレジスタサイズの整数演算も
特殊なジャンルであることは否定しない

336:デフォルトの名無しさん
16/02/01 23:19:49.62 BOcjqYcH.net
半精度もIEEE754じゃない独自フォーマットなら使った事はあるが、使った事があるって程度

337:デフォルトの名無しさん
16/02/01 23:27:26.75 dRJvSEmL.net
>>326
>半精度はさすがにゲームでも足りない
そんなこと分かるかよ
HDRで16bit浮動小数点フォーマットとか普通に使うだろ
メモリ帯域が半分で済むんだぞ
ゲームなんか正確さより速さ優先だから、色を表現するのに16bitで十分な場合がほとんどだろ

338:デフォルトの名無しさん
16/02/02 01:51:42.07 LP8V/wwM.net
だから違うよ
使ったことがあるかじゃねーよ
何でその精度が必要なのかってところよ
4倍精度とか軽々しく言うが
このスケールが本当にわかってるのか
疑わしいぜ

339:デフォルトの名無しさん
16/02/02 03:08:21.02 xiUt8T5M.net
4倍精度とか専用ハード作れとしか言いようがない
汎用品に求めるものじゃない

340:デフォルトの名無しさん
16/02/02 12:53:46.97 ULLNmZyK.net
>>326
よく嫁
Pascalは基本混合精度
PK104は単精度と半精度の混合
PK100は倍精度の混合らしいが、多分これはテスラ新シリーズとして販売だと思う
もうグラボ価格の倍精度CUDA組はむりぽ
>>331
もうPEZYにお願いするしかないよ、倍々精度
これはマジでそう思ってる
逆を言えば理研=PEZYの特殊HPCはそこしか生き残りが出来ないのではないか
どうしてもというならARMカスタムとか
倍精度はNVはもうだめぽだから、AMDに期待するしかない

341:デフォルトの名無しさん
16/02/02 13:17:56.85 sWHooGm6.net
混合精度って単精度と半精度が両方載ってるって事だ�


342:謔ネ 仮に1個の演算器の回路規模が1:3として、演算器の回路比率を1:1にし、単精度は半精度の演算も出来るとすると、すべて単精度にした場合に比べて演算器の数は単精度が半分で単精度が2倍か 単精度2倍のインパクトよりも単精度半分のインパクトの方が大きい気がする



343:デフォルトの名無しさん
16/02/02 14:24:13.48 ULLNmZyK.net
完全にグラフィックス描画効率/深層学習向けの構成だね
データ地獄になるから広帯域メモリも必要になるがHBM規格はAMDが握っているために、(HBM2の)開発が遅れた
GDDR5+を急遽導入する事になったのはそのため
このスレだとDX12とかVulkanとか一言口にするだけで「スレチガイだ馬鹿!」と怒鳴る奴がいるが、
これは全てが絡み合っている
DX12とVulkanという二つのローレベルAPIがAMD中心による策定である以上、これらのローレベルAPIへの依存を避ける
ワットパフォーマンスGPUに経営路線の舵を切るの必然

344:デフォルトの名無しさん
16/02/02 15:52:24.40 MS6gBcZU.net
>>334
スレチガイだ馬鹿!

345:デフォルトの名無しさん
16/02/02 20:33:43.42 ubpTh4Nt.net
>>334
そのすごいAMDでお前はどんなGPGPUソフト/プログラム作っていいるんだ?

346:デフォルトの名無しさん
16/02/02 21:22:14.45 xseyqTiA.net
cudaだっつうに
hsaスレでやってろ
馬鹿

347:デフォルトの名無しさん
16/02/02 22:08:37.37 +ZIKPYce.net
雑談は楽しいけど、ここCUDAスレやで
amdの話をするなってことじゃなく、スレチ話をいつまですんねんってこと

348:デフォルトの名無しさん
16/02/02 22:41:10.14 NB4DG1EG.net
Visual Studio 2015対応になるのはいつですかねぇ

349:デフォルトの名無しさん
16/02/03 12:08:39.46 15l+1fC7.net
>>336 >>337
自演乙
わざわざ自作板から出張ご苦労様

350:デフォルトの名無しさん
16/02/03 12:56:39.94 d3Nc4Jqw.net
バカな上の病気なんだな

351:デフォルトの名無しさん
16/02/03 14:19:34.04 15l+1fC7.net
Pasacalこけそうで危機感いっぱいだは

352:デフォルトの名無しさん
16/02/03 22:25:31.36 hEPpn7Fg.net
だはw

353:,,・´∀`・,,)っ-○○○
16/02/03 22:25:59.26 gpz71jEo.net
TeslaでもXeon Phiでもなく一般ピープル向けGPUに倍精度性能が必要だって言ってるのは
ろくに科研費申請が通らない貧乏研究室くらいでしょ

354:デフォルトの名無しさん
16/02/04 13:10:48.29 lq8BoEbf.net
>>344
お前が使い方を知らないだけ

355:デフォルトの名無しさん
16/02/04 13:11:30.26 lq8BoEbf.net
>>344
お前は半精度だけで十分

356:デフォルトの名無しさん
16/02/04 18:29:53.21 TT5D/Cpx.net
Maxwellは擬似的な倍精度も出来ないんだよ
それくらいしっておこうな

357:デフォルトの名無しさん
16/02/04 20:00:25.29 o+ucOEnp.net
単精度と比べると凄い遅いだけで
倍精度演算自体はハードで実装している。
物凄い遅いといっても1/32で1/16のradeon furyと比べると半分だから大差ないと言えば無い。

358:デフォルトの名無しさん
16/02/04 20:13:21.23 d8M6zG1u.net
Maxwellは倍精度の演算器が排除されただけで疑似倍精度は実装されている
そもそもソフトレベルでも実装できることだし

359:デフォルトの名無しさん
16/02/04 20:15:36.92 TT5D/Cpx.net
FURYはMaxwellを参考にしてるからな
HBMの容量の少なさが祟って何じゃこりゃ状態だったけど、Polarisは一層Maxwell類似のワッパ路線がとられる
これでNVはもう倍精度を完全に捨てにかかる

360:,,・´∀`・,,)っ-○○○
16/02/04 23:21:52.01 zdF89aL0.net
いや実際半精度が4倍速いほうが使いどころあると思うよ
ゲームで倍精度なんて使わないじゃん

361:デフォルトの名無しさん
16/02/04 23:28:29.99 3r7tJtQx.net
深層学習がはやったらGPGPUももっと市民権を得るかな?

362:デフォルトの名無しさん
16/02/05 00:42:53.10 TcXSJNY1.net
半精度を4倍速くしたら半精度専用になるな
そんなもの売れないぞ

363:デフォルトの名無しさん
16/02/05 01:21:13.26 p946S2WD


364:.net



365:デフォルトの名無しさん
16/02/05 04:09:45.89 iPwofUfz.net
倍精度を高速化したらどれだけ売り上げが見込めるのかをnvに分かるように説明したら。
>>353
頂点シェーダは単精度が必要でも、実行時間のかなりがフラグメントシェーダなんだから、別に半精度専用になって売れないとはならないだろう。

住みわけがある訳だろ。で、倍精度頑張ったのは期待の売り上げが出なかったわけだろ多分。
願望を語るスレであるより、アリモノでなんとかするスレであった方が建設的だと思うがね。

366:デフォルトの名無しさん
16/02/05 07:52:28.94 X6eE9Wue.net
すまんがゲーマーは帰ってくれないか?

367:デフォルトの名無しさん
16/02/05 08:26:49.67 23YXKvG1.net
なぜ団子がここにいる?
まあ、CUDAもかなり広く使われてくるようになったから、
数値演算の枠組みだけじゃなくなってきているのはわかるが。

368:デフォルトの名無しさん
16/02/05 08:45:35.15 bTIbnCX4.net
いやこのひとはかなり初期からCUDAつかってるの
それこそnvにgeforceくれてやるからCUDA使ってちょって
誘われるような時代から

369:デフォルトの名無しさん
16/02/05 08:50:46.42 KXdvQQGq.net
1スレ目に三色団子おるな

370:デフォルトの名無しさん
16/02/05 12:16:48.26 bTIbnCX4.net
URLリンク(techon.nikkeibp.co.jp)
CNN専用チップ、NVIDIAなどがGPUの改良で開発
URLリンク(techon.nikkeibp.co.jp)
Eyerissは、グラフィックス処理プロセッサー(GPU)と同様、SIMD(single instruction multiple data)などから成る
プロセッサー・エレメント(PE)を多数集積したICである。
ただし、GPUとはデータの移動を最小限に抑えた設計にした点が異なる。
具体的には、EyerissはSRAMから成るオンチップメモリー108Kバイトを備えており、
CNNの各層の演算結果をオンチップメモリーにバッファリングさせることで、
チップ外の主記憶に書き戻す頻度を大きく減らした。
また、PEに入力するデータ列に共通部分がある場合は、その共通部分を保持して差分だけを入力する。
さらに、複数のPEに同じデータを入力する場合は、各PEにそれぞれ送るのではなく、
途中まで1つのデータとして送り、そこからPEの個数分データをコピーして入力する。いわゆるマルチキャストである。
これらによって、データ処理時のデータの移動を最小限に抑え、消費電力を大幅に低減した。
加えて、データを主記憶に書き戻す時は圧縮し、読み出す時に伸長する。
CNNの畳み込み演算後のデータはフィルターを通すことで圧縮しやすい形になっていて、メモリー帯域の節約効果が高いという。
 作製したEyerissの動作をNVIDIA社のGPU「TK1」と比較すると、
EyerissはデータのスループットこそTK1の約1/2だったが、消費電力はTK1の最小約1/37と大幅に低い。
主記憶に出し入れしたデータの帯域も、TK1の1120Mバイト/秒に対し、Eyerissは127Mバイト/秒だったとする。

371:デフォルトの名無しさん
16/02/05 12:55:11.71 p946S2WD.net
>>358
だからお前はインテルスレに帰れっつってんだろ団子!

372:デフォルトの名無しさん
16/02/05 13:02:33.01 bTIbnCX4.net
また病気か

373:デフォルトの名無しさん
16/02/05 13:44:39.13 p946S2WD.net
>>362
倍精度イラネ、ここは管スレだぞ!と言ってたのはお前だったのか、団子!

374:デフォルトの名無しさん



375:sage
団子ってなに?




次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch