1 名前:デフォルトの名無しさん mailto:sage [2010/12/04(土) 21:57:13 ] このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 CUDA使いが優しくコメントを返しますが、 お礼はCUDAの布教と初心者の救済をお願いします。 CUDA・HomePage www.nvidia.com/cuda 関連スレ GPUで汎用コンピューティングを行うスレ hibari.2ch.net/test/read.cgi/tech/1167989627/ GPGPU#5 hibari.2ch.net/test/read.cgi/tech/1281876470/ 前スレ 【GPGPU】くだすれCUDAスレ【NVIDIA】 pc12.2ch.net/test/read.cgi/tech/1206152032/ 【GPGPU】くだすれCUDAスレ pert2【NVIDIA】 pc12.2ch.net/test/read.cgi/tech/1254997777/ 【GPGPU】くだすれCUDAスレ pert3【NVIDIA】 hibari.2ch.net/test/read.cgi/tech/1271587710/
479 名前:デフォルトの名無しさん mailto:sage [2011/04/20(水) 01:16:07.37 ] >>478 CAL+IL
480 名前: 忍法帖【Lv=11,xxxPT】 mailto:sage [2011/04/20(水) 04:19:17.84 ] 2枚差しの場合、2つプログラムを走らせたら、それぞれ別のGPUを使ってくれるのですか?
481 名前: 忍法帖【Lv=15,xxxPT】 mailto:sage [2011/04/20(水) 07:08:07.39 ] 現状では自分で何番目のGPUを使うか指定する必要があります。
482 名前:デフォルトの名無しさん mailto:sage [2011/04/20(水) 11:51:01.49 ] >>477 イミフ
483 名前:デフォルトの名無しさん [2011/04/20(水) 20:42:07.79 ] >>479 えと、CUDA用には無いということでしょうか? add.u32 を2並列(64bitレジスタ)、あるいは4並列(128bitレジスタ)で実行するような命令セットはないでしょうか?
484 名前:デフォルトの名無しさん mailto:sage [2011/04/20(水) 21:24:43.20 ] >>483 そのためのSIMT
485 名前:デフォルトの名無しさん [2011/04/20(水) 22:27:22.88 ] >>483 何かを誤解しているようだが、CUDAには必要ないから無い。 SSEを使わないと100%の性能が出せないとかいうCPUのような制約は無い。 add.u32という命令ならほっといてもWarp単位の32スレッドが(ほぼ同時に)実行する。 全命令が32並列のSIMD命令になっていると考えればよい。(32ビットデータの場合)
486 名前:デフォルトの名無しさん [2011/04/20(水) 22:50:57.29 ] >>484-485 CUDAがSIMTなのか、SIMDなのか、SPMDなのかはさておいて… 昔の記述だとCUDAアーキテクチャのレジスタは32bitとかだったと思いますが、 今時のNVIDAのGPUには64bitレジスタ、あるいは128bitレジスタがあって、それを使って padd.u32 みたいな命令により、「1スレッド内の演算において」32bit整数の4並列処理が出来るとかないでしょうか? ということなのですが、いかがでしょうか? Streamでは128bitレジスタで32bit4並列の演算ができるみたいのですが・・・
487 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 04:36:54.19 ] そこまでやるならCPUの方が早かったりしてw
488 名前:デフォルトの名無しさん [2011/04/21(木) 08:16:13.34 ] >>486 そんなものはないから誤解だと言ってるんだが。 AMDは1スレッドが4 or 5演算のVLIWで動作するから4並列のSIMD命令化の意味があるが CUDAは1スレッドが各種演算ユニットを1ずつしかもたない(or複数スレッドが共有)CUDA Coreで 実行されるので128bit型を用いたとしても4命令になるだけ。
489 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 09:31:19.38 ] >>488 誤解というか、質問なのですが・・・ 今どきのCUDAでもレジスタレベルのSIMD命令は無く、 ハードウエア的に、レジスタも演算器も(今のところは)そのような用途には向いていないということですね。 ありがとうございましたゞ
490 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 09:35:39.70 ] それよりSandyBridgeのベクタ演算機の性能はどうなんだろうな まだ試験実装だからコア数が少ないけどメインメモリ直結だからけっこう早そうなんだが
491 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 09:59:44.72 ] その辺は簡単な報告を以前SSEスレにあげといたよ イミフな反応が多々あったけどね
492 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 10:04:26.92 ] >489が根本的に解ってない悪寒
493 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 21:59:22.93 ] >>492 論理レジスタとか、物理レジスタとかいう話しですか??? >>486 への根本的な回答はどうなりますか?
494 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 22:29:01.49 ] とりあえず公式文書を読んでから質問してくれ。
495 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 22:39:09.84 ] ようするに64bitレジスタに8x8のデータを入れて同時に処理出来るのかってことでしょ streamsdkには専用の命令があると? cudaはそんなものは勝手にやると言ってる人が居るけど、どうやってやるんだ? cudaにはそういう命令は無いよ 内部で処理することが出来るとは思えないけどな 少なくともユーザープログラムからやる方法はないよ 内部的にはそういう命令も持ってるかもしれないけど というかそういうアセンブラレベルの最適化をしなくていいようにしたのがCUDA言語なわけで 複雑化する要因はパフォーマンスを犠牲にしてでも排除されるだろう どうしてもやりたかったら64bit変数を使って自前でやるしかないだろう
496 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 23:07:04.51 ] >>495 >>486 への回答は”No”ということですね。 ありがとうございます。 将来的には"Yes"になると思っているのですが、そこら辺が「根本的に解ってない」と言われる所以ですかね。 「根本的に解ってない」らしいので、何がなんだかさっぱりですが・・・ # 今、スクラッチのCUDA用アプリで、SSEで書かれたCPU用アプリの約5倍(CPU側はSandyBridgeで4スレッドで動作)の速度が出ているのですが、 CPU側がきちんとAVXに対応してきたらこの差はかなり縮まりそうなんですよね・・・
497 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 23:11:08.25 ] ねえ、GPUの速さの要因ってCPUより圧倒的に軽量なスレッド数によるもんじゃないの まずそっからじゃないのかね?
498 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 23:14:37.36 ] >>496 さっきからすげー鼻につくんだけど 教わる態度じゃないよお前 教えてんの俺じゃないけどさ
499 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 23:22:41.50 ] あれだ、自分が書いたcudaのコードが思ったはど速度が出ないから 腹癒せしているか言い訳探しているかってところだろ。 今日たまたま計測していたんだが、cufftでもfftwfの3倍程度だった。 汎用ルーチンじゃこんなもんだよ。
500 名前:デフォルトの名無しさん mailto:sage [2011/04/21(木) 23:51:10.29 ] >>498 CUDAの将来的な見通しについて知りたかった部分もあったので 失礼に見えた部分があるかもしれません。 ごめんなさい。
501 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 00:46:21.02 ] SIMDみたいなものつけて各コアを高機能にするよりは、 単純なコアの数を増やす方向に進むだろうなあ。
502 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 00:51:40.28 ] レジスタ/SM増やして欲しい…
503 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 01:02:26.93 ] GF100やGF104の倍精度(64bit)の演算って単精度(32bit)の1/4のスループットとかじゃなかったかな? おまけにGF104は倍精度をサポートしているコア数は1/3だし。 更にHPC向けではなくグラフィック向けの物は制限かかっているらしいし。 倍精度が必要になるなら仕方ないだろうけど、32bit変数で足りるのに64bit変数を使うのはデメリットの方が圧倒的に多そう。
504 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 01:08:10.32 ] いろいろ試したがCPUと比較して4倍程度しか上がらないし 労力掛かるわりには環境依存甚だしいわ 4倍くらいだったら別に我慢出来ないようなものなんてないし マルチコアCPUで普通に組のが一番いいという結論に達した
505 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 01:11:09.84 ] >>504 計算したい内容を簡潔に書いてみ 計算内容によってGPUに向き不向きがあるから
506 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 01:12:19.97 ] >>497 膨大なスレッド数と、その切り替えの軽量さを活かして メモリアクセスのレイテンシの隠蔽とかだっけ。 >>502 スレッドあたりの変数が多いと苦労するね。 そういう場合はシェアードメモリをうまく使って切り抜けるしかないのかな。
507 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 01:15:58.96 ] CUDAは4nbyteを1要素とした16要素SIMDって感覚だわ。(n = 1,2,3,4) メモリアクセス考えると結局16要素単位の処理の塊になってしまう。
508 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 01:19:14.16 ] >>506 共有使ってもたらん Sharedも増やせ!キャッシュも増やせ!
509 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 01:31:49.64 ] 向いてないよ。
510 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 07:57:21.85 ] CUDAとかGPGPUの普及の足引っ張ってるだけだよなぁ。 早くintel、amd,nvidiaで統一してくれよ。 機械語レベルでも、ライブラリレベルでもいいからさ。
511 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 10:14:49.72 ] OpenMPってよく知らないが_beginthreadしてるわけじゃなく CPUレベルでスイッチングしてるだけみたいだから ほとんどオーバーヘッドがないみたいだぞ 十分標準として使えそうなんだが
512 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 10:24:09.66 ] 残念ながら生成負荷は大きいよ だから何度もスレッド生成するような処理はかえって遅くなる
513 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 10:26:56.96 ] いやいや、ちゃんとスレッドプールしてるって
514 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 10:42:12.62 ] >>513 おまえ>>504 だろ 試行レベルが同一
515 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 11:01:13.45 ] >>514 お前、いろいろと残念な人だな
516 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 11:09:33.71 ] と、せ〜いっぱいの切替し つか下らんこと書くならよそでやれヴぉけ
517 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 11:16:10.78 ] 切り返し な。 煽るなら突っ込まれる隙作っちゃダメだ
518 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 11:20:23.65 ] いいからスレ違いだ。
519 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 11:21:44.53 ] スレッドの生成負荷は軽いと言われているのを鵜呑みするとなかなか性能が出ないこともある気がする。 カーネル側でスレッドの生成回数を出来るだけ減らす工夫が必要だったり。
520 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 11:55:51.71 ] スレッドの生成負荷はプールすればいいから問題じゃない スレッドを切り替えるときにスタックポインタ変えたりするコンテクストスイッチの負荷が問題
521 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 13:09:56.12 ] cudaでスレッドのプールができるのかえ? cpuの話をここに書いてる?
522 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 13:20:03.48 ] そうそう、何度指摘してもスレ違いの話を続けているの。
523 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 13:23:34.12 ] その話、終わりました
524 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 13:55:34.91 ] どこまでをCPUで計算し、どこまでをGPUで計算するのかはGPGPUで重要 だからスレッドの性質については知っておく必要がある CUDAを使いこなすのにアップアップのアホどもには関係ないけど
525 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 14:04:51.88 ] 解決を依存性のない単純に並列化可能なアルゴリズムに置き換えられる問題を GPGPUでやるもんだと思ってたんだが違うのか?
526 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 14:11:42.11 ] そりゃそうだが、データの転送速度、超越関数を使用するかどうかなど、 単純に並列度が高ければGPUでOKってもんじゃない Opteronの48コアマシンがお手頃価格で手に入る時代だぜ?
527 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 14:13:49.17 ] あ、誤解の無いように書いとくが、CUDAやGPGPUを否定してるわけじゃないよ
528 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 14:15:39.88 ] 夏場に熱で吹っ飛んだのれす
529 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 17:16:29.77 ] >>526 > Opteronの48コアマシンがお手頃価格 今、おいくら万円くらい?
530 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 17:24:19.24 ] 全部こみこみで100マソ切った
531 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 17:48:16.70 ] 高っ
532 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 17:49:59.02 ] そうか、ごめん……
533 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 17:50:02.42 ] 48コアで何テラFlopsぐらい出んの?
534 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 17:56:21.72 ] 高いけど、業務で使うならテスラを組み込んだサーバとたいして変わらないんじゃない? 個人とか研究室とかだと絶対的金額から手が出せないかもしれないけど。
535 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 17:58:31.18 ] それは言えてる。
536 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 18:06:31.47 ] >>533 えーと、0.5テラFlopsくらい?
537 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 18:59:41.35 ] 17万x4(CPU)+12万(マザボ)+HDDメモリケースか 欲しいけど家庭用のコンセントで大丈夫だろうか 似たようなスペックでGPGPU構築したらいくらぐらいかかるのかな 0.5テラFlopはしょぼくないか
538 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 20:43:24.14 ] >>537 家庭用コンセントじゃ無理 グラボ刺さるからGPGPUできるよ
539 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 21:43:26.64 ] >>538 このマザーで自作すると・・・ akiba.kakaku.com/pc/1103/31/131500.php 130000+100000*4+12800*16+100000+50000+α=884800+α くらい? だとしたら100万円ほどで完成品が買えるなら良心的な価格な気がするね。 下のマザーボードだと気合いで8本GPU載せられるんだろか? akiba.kakaku.com/pc/1104/20/213000.php
540 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 21:59:24.97 ] >>539 > 下のマザーボードだと気合いで8本GPU載せられるんだろか? どこかに引っかかりそう。ラック筐体次第なのかな
541 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 22:17:54.30 ] マザー自作するツワモノいないかな まあ、高周波シュミレソフトで1000万いくから 性能気にしないでいくなら自作できそうだけど・・・
542 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 23:17:49.25 ] >>539 そのマザーのPCIeスロットはx8+x1+x8+x1+x8+x1+x8+x1だから ホスト・デバイス間の帯域不足に悩みそう。 演算性能さえあればいいプログラムなら何とかなるのかもしれないけど。 というかハイエンドグラボは複数スロット占有が一般的だし、水冷のグラボが必須になりそうw
543 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 23:27:34.87 ] コスト度外視で1台で最速を目指すなら P6T7 WS SuperComputer www.unitycorp.co.jp/asus/motherboard/intel/lga1366/p6t7_ws_super/index.html と EVGA GeForce GTX 580 FTW Hydro Copper 2 jp.evga.com/products/moreInfo.asp?pn=015-P3-1589-AR になるのかな。 電源の確保がものすごく大変そうだけどw
544 名前:デフォルトの名無しさん mailto:sage [2011/04/22(金) 23:28:08.92 ] CUDA Visual Profiler使ってるんですがなんどやっても計測後に "Error in profiler data file'(動かすディレクトリ)/temp_compute_profiler_0_0.csv' at line number 1. No column found" と出て計測結果がうまく出ません 何が原因なのでしょうか?
545 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 00:17:34.23 ] エラーコード見てもわからんが、俺はプログラム中にgetchar()を書いてある キーを押さなきゃ終わらないプログラムをプロファイラに渡してはまったことがあるZE
546 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 00:24:57.17 ] >>544 Visual Profiler使ってないからよく判らんが、その作業ディレクトリはレガシーな名前かい? 空白やら何かの所為で巧くアクセスできないってことはないよね?
547 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 00:39:41.60 ] >>545 外部から画像を読み込んでいますがキーは押さなくても終了するプログラムです >>546 作業ディレクトリと同じディレクトリに入っている計測したい実行ファイルは プロファイルを開始すると実行されるようなのでおそらくディレクトリにアクセスは出来ています プロファイラはプログラムを実行してから計測をしているようなのですがこの計測経過が100%になったら先ほどのエラーがでてしまいます temp_compute_profiler_0_0.csvは自動生成のファイルの用です
548 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 00:56:29.31 ] >547 エラーがなんで出てるかはさっぱりわからんので、自分がこけたときの経験を列挙するぐらいしかできんのだけど、 Visual Profilerのデフォルト設定では30秒以内に処理が終わらない実行ファイルは実行を途中でうち切って 解析結果出力せず、えんえん解析を繰り返すってのはあったぜ。
549 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 00:58:45.66 ] >>548 そこ毎回適当に300に変えてたわ しかしなんで一回でぜんぶできないかな
550 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 01:02:49.32 ] グラフィックボードがGPGPUの処理以外にも画面表示の処理をしてる可能性が高いのだから、 画面表示による影響を平滑化するために複数回実行時間を計測してるんじゃないかと。
551 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 14:34:55.79 ] コアレスアクセス用に半ワープ単位でアクセスしなきゃいかんのだが 16×16の二次元のスレッド作ったとして threadIdx.x = 0〜15 が半ワープに入るのか threadIdx.y = 0〜15 が半ワープに入るのか、どっちだべ。
552 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 14:56:49.14 ] ふつうにかんがえてx
553 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 15:03:38.31 ] アブノーマルに考えてx
554 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 15:42:37.53 ] 真逆な意見がでてしまったわけだが、間をとってxと考えることにするよ。
555 名前:デフォルトの名無しさん mailto:sage [2011/04/23(土) 22:47:46.90 ] Larrabee はいつ出ますか?
556 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 00:29:55.82 ] Larrabeeはなかった事にされてるような・・・
557 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 01:23:47.09 ] LarrabeeってSandryのGPU部分のコア数を数百って規模に拡張したもののことだよ AVXがまさにLarrabeeのインターフェースらしい
558 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 02:12:08.17 ] VisualStudio使ってEmuDebugの構成にしたら、 デバイス側関数もブレークポイント仕掛けられるって聞いたのにできねえ。 リンクするライブラリ変えるとかしなきゃいかんの?
559 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 02:25:06.20 ] NsightじゃなくてEmu使う理由は?
560 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 02:31:36.91 ] Nsightってグラフィックボード1枚指しでも使えんの? Nsightを使わない理由は、NsightインストールしたらCUDA3.3がインストールされて、 でCUDA3.3のcuFFTの動作が怪しかったんで、NsightやめてCUDA3.0にしてる。 NsightでもCUDA3.0使えるのかもしれないけど、使い方調べるのがめんどくさかったので 環境構築に慣れたNsight使わないやり方でやってる。
561 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 02:44:49.49 ] 3.3?
562 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 03:35:32.04 ] CUDAとSandy BridgeのGPUは同時に使えますか? 使えるとしたら、Sandy BridgeのGPU用のコーディングには何を使えば良いですか?
563 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 03:40:42.99 ] >>562 SBってGPGPUに対応してるの? SDKとか出てるって聞いたことないんだけど。
564 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 03:53:11.32 ] Sandy BridgeのGPUはOpenCL1.1に対応してるらしいけど CUDAに対応してるって話はみたことないから、CUDAとは同時に使えないと思われる。 OpenCLスレで聞いたほうがいいかも。
565 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 03:57:39.89 ] >>564 >CUDAに対応してるって話はみたことないから、CUDAとは同時に使えないと思われる。 対応していない=同時に使えないという考えは改めた方位が良い。
566 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 06:20:12.37 ] グラボを刺した状態でSandyのGPUコアが有効になるのかって話だよね グラフィックチップとしては完全に機能停止されるだろうけど 演算装置として稼動するんだろうか
567 名前:558 mailto:sage [2011/04/24(日) 11:04:44.80 ] EmuDebugはリンクするライブラリをcudart.lib→cudaartemu.libにかえたらできたや。
568 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 12:25:30.29 ] 自身ぎゃああああああああああああああああああ
569 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 16:01:57.36 ] VS2008でFirst chance Exceptionがでるが、カーネルコードの何が原因なのかさっぱりわからねえ… Nsight使うとこういうのの原因すぐに特定できるようになんの?
570 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 23:11:39.84 ] CUDA 4.0 RC2 をインストールしてみようと思っています。 64bit用のバイナリを作るには、CUDAも64-bit版をインストールする必要があるでしょうか? それとも、CUDAの32-bit版でも nvcc のオプションの切り替えで32bit用と64bit用の両方のバイナリを生成することが出来るでしょうか? 出来れば、WindowsXP(32bit) の環境で64bit用バイナリも作りたいと思っています。
571 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 23:26:06.00 ] >>570 >64bit用のバイナリを作るには、CUDAも64-bit版をインストールする必要があるでしょうか たしかそうだったはず >CUDAの32-bit版でも nvcc のオプションの切り替えで32bit用と64bit用の両方のバイナリを生成することが出来るでしょうか? 生成したい処理系のSDKをインストールしないといけなかったはず 切り替えはできないと思う 2つ(32と64)いれればOKなのかは不明
572 名前:デフォルトの名無しさん mailto:sage [2011/04/24(日) 23:42:26.64 ] >>571 レスありがとうございます。 ややこしそうなので、32bit 環境、64bit 環境それぞれを用意し、それぞれ用のバイナリを作ろうと思います。
573 名前:デフォルトの名無しさん [2011/04/25(月) 10:06:00.86 ] 64bitOS環境に64bit Toolkitを入れれば32bit&64bitの両方のバイナリを生成可能。
574 名前:デフォルトの名無しさん [2011/04/27(水) 08:28:47.19 ] GT430を使っていますが、CUDAでコンパイルすると次のようなエラーが出て コンパイルできません。 因みにC++は初心者ですがよろしくお願いします。juria_gpu.cu codepad.org/UtZeyAkV julia_gpu.cu(44): error: calling a host function("cuComplex::cuComplex") from a __device__/__global__ function("julia") is not allowed
575 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 08:35:16.69 ] __device__/__global_ この辺良く見直せ! 基本がわかってないと思うから基本からよく勉強だな
576 名前:デフォルトの名無しさん [2011/04/27(水) 08:43:59.77 ] エラーの意味がよくわかりません。__device__/__global__なんてどこにも 書いて無いし、サンプルコードなので動くはずなのですが、なぜか動きません。 codepad.org/oDh0YFM5 cuComplexをjulia関数から呼ぶのは許されていないという意味なのでしょうか?
577 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 08:50:02.31 ] globalが無いのかよ? 全部晒せよ
578 名前:デフォルトの名無しさん [2011/04/27(水) 09:03:00.78 ] ideone.com/s9anZ ここです。よろしくお願いします。
579 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 09:07:22.66 ] CUDA_by_exampleのだな まずそういう情報を先に出せよ
580 名前:デフォルトの名無しさん [2011/04/27(水) 09:11:49.07 ] すみません。書くのを忘れていました。 知っている方とお見受けしますので安心です。
581 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 09:22:12.28 ] 特に問題なくコンパイルできたぞ nvccのオプションは?
582 名前:デフォルトの名無しさん [2011/04/27(水) 09:27:35.63 ] nvcc -O julia_global.cu -lcutil32 -cutil32D
583 名前:デフォルトの名無しさん [2011/04/27(水) 09:31:28.05 ] インストールの仕方が悪いのでしょうか?
584 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 09:33:25.86 ] windowsはよく知らんがLinuxではnvcc -lglut julia_cpu.cuで通るんだが 上のソース名は間違いだよな?それでやってどのエラーメッセージが出るんだ? julia_gpu.cu(44): error: calling a host function("cuComplex::cuComplex") from a __device__/__global__ function("julia") is not allowed がでるのか?
585 名前:デフォルトの名無しさん [2011/04/27(水) 09:38:07.66 ] julia_gpu.cu です。間違いです。julia_cup.cuの場合はこちらでも通ります。 ただGPUを使おうとするとコンパイル時にエラーが出ます。 cuComplex c(-0.8, 0.156); cuComplex a(jx, jy); と a = a * a + c; の部分でエラーが出ます。原因がわかりません。
586 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 09:40:32.60 ] 正確なコンパイルオプションとエラーメッセージを再掲よろ
587 名前:デフォルトの名無しさん [2011/04/27(水) 09:51:50.54 ] ideone.com/mZviD ここです。
588 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 09:57:53.82 ] C:\Users\admin\CUDA\chapter04>nvcc -O julia_gpu.cu これじゃ -lcutil32とかないじゃん なけりゃダメだろ
589 名前:デフォルトの名無しさん [2011/04/27(水) 10:01:49.76 ] リンクエラーが出るかもしれないですが、今はコンパイルエラーなので そちらでも同じようなエラーが出るか確かめてほしいです。 もしエラーが出なかったら私の環境がおかしいのかも知れません。 Linuxでの開発環境とWindowsでは少し違うと思うのでWindowsでも 確認してもらいたいです。
590 名前:デフォルトの名無しさん [2011/04/27(水) 10:05:27.84 ] ウインドウズアプリを作るのでリナックスでうまく言っても意味が 無いのですが・・・
591 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 10:13:19.95 ] >>589 あ、そういうこと じゃあソースが壊れてるんでなければそっちの環境がおかしそうだね 環境の再構築したほうがよさげ
592 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 10:33:39.34 ] 因みにlinux環境で nvcc -lglut julia_gpu.cu → OK nvcc julia_gpu.cu → コンパイルOK、リンクNG
593 名前:デフォルトの名無しさん [2011/04/27(水) 11:22:50.87 ] C:\Users\admin\CUDA\cuda_by_example\chapter04>nvcc --version nvcc: NVIDIA (R) Cuda compiler driver Copyright (c) 2005-2011 NVIDIA Corporation Built on Thu_Mar_24_14:53:10_PDT_2011 Cuda compilation tools, release 4.0, V0.2.1221 こちらの開発環境ですが、nvccのバージョンを教えてください。 環境を再インストールしましたがやっぱりだめです。 構文エラーとして解釈されます。
594 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 11:28:41.58 ] 3.2 4.0RC2?はまだ早いんでね?
595 名前:デフォルトの名無しさん [2011/04/27(水) 11:40:43.34 ] そうですね。自分の持っているやつがGT430なのでバージョン1.0 (最新は1.3)に対応しているみたいなので古いほうをインストール してみます。
596 名前:デフォルトの名無しさん [2011/04/27(水) 11:45:26.50 ] 出来ました! ありがとうございました。
597 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 13:22:17.13 ] >>596 何をどうしたら解決したか書いてほしいな
598 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 13:30:13.83 ] 流れで分かりそうなもんだけど 4.0RC→3.2で解決したようだ
599 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 13:44:28.80 ] 4.0は大きく拡張されてるみたいだし、RCがとれても移行は様子見したほうがよさそうだね 2台とかあって3.2と4.0の環境があったりするなら切り分けしやすいから良いかもしれないけど。
600 名前:デフォルトの名無しさん [2011/04/27(水) 15:49:38.35 ] こんにちは。 16*32の行列に長さ16の配列をXORの積をしたいのですが可能でしょうか? イメージ的には32個のブロックに16個のスレッドという感じで考えています。 行列計算なので実装はそんなに難しくないと思うのですが、具体例があまり 見当たらず苦心しています。はじめてからまだ三日なのですが、解る方が いらしたらソースを見せてほしいです。ヒントだけでも良いです。 よろしくお願いします。
601 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 16:03:05.24 ] >>16 *32の行列に長さ16の配列をXORの積をしたいのですが これどういう意味?もう少し計算を具体的に書いてくれ
602 名前:デフォルトの名無しさん [2011/04/27(水) 16:34:04.46 ] 4*8の例で考えます。 [abcd]*[{efgh}{ijkl}{mnop}[qrst}{uvwx}{yz12}{3456}{7890}]= a^e&b^f&c^g&d^h=e a^i&b^j&c^k&d^l=i ... このように計算したいです。 並列計算なら全体をばらして8個のブロックに4個のスレッドを当てれば 4サイクルで実行できると思うのですが何か間違えていますでしょうか? よろしくお願いします。
603 名前:デフォルトの名無しさん [2011/04/27(水) 16:40:44.57 ] for(j=0;j<16;j++){ o=FG[a[j]]^GF[u1.m[j]]; p=FG[b[j]]^GF[u.m[j]]; for(i=0;i<16;i++){ d1[j]^=t[o][h1[p][i]]; d2[j]^=t[o][h2[p][i]]; } buf[j]^=d1[j]; buf[j+16]^=d2[j]; } この処理を並列化したいです。
604 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 17:08:33.14 ] >>603 ideoneかcodepadにC版の関数をアップロードしてくれ。 そうしてくれたらcudaでどこをどう並列化するか考えてみるよ。
605 名前:デフォルトの名無しさん [2011/04/27(水) 17:11:57.15 ] 並列化したいのはループ使っている部分だけなのでそこだけです。 codepad.org/15hfT9HS
606 名前:デフォルトの名無しさん [2011/04/27(水) 18:53:48.98 ] 公開したのに反応が無い。 見ても解らないだとか汚いと罵るだけ。 どうせやる気無いんだろ?
607 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 18:56:58.77 ] >>606 うん。 忙しいからね(´・∀・` )
608 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 19:19:58.01 ] >>603 またお前か。 いい加減自分の手を動かしたらどうだ。 時間がないなら対価を払って時間を買え。
609 名前:デフォルトの名無しさん [2011/04/27(水) 19:50:55.96 ] だったらソース見せろとかいうな馬鹿
610 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 19:53:32.57 ] >>606 何怒ってんだ? その程度のコードなら普通にできるだろ バカなの?
611 名前:デフォルトの名無しさん [2011/04/27(水) 19:57:29.62 ] 見る気も無いくせに見せろと言うほうが馬鹿
612 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 20:06:58.92 ] 見せろって言ったのは俺じゃないし、ソース見る前からお前だって分かった。 自分でやる気が無いっていう態度が滲み出てるんだよ。
613 名前:デフォルトの名無しさん [2011/04/27(水) 20:14:43.33 ] やる気があって調べてるんだよ。 ここならもっと詳しい人が居ると思うから聞いてみただけ。 何で最初からやる気が無いなんて決め付けるの?
614 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 20:18:05.38 ] まぁ質問に具体性がなく丸投げだからな もう少し考えた過程が見えないと回答もしづらい罠
615 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 20:19:27.54 ] 最初からじゃなくて俺が知っているのはここ8ヶ月くらいだが 分からない、分からない、一個教えてもらうとすぐ次が分からないで 自分で調べる気なんてなさそうに見えるんだが。
616 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 21:13:16.83 ] >>613 Intel Parallel Studio 使って並列化。 ↓ 逆アセンブルして、コード解析してCUDA化。 ↓ (゜д゜)ウマァ
617 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 21:18:58.59 ] VC++ 2010用のtemplateプロジェクト、どこかにないでしょうか? CUDA 3.2 SDKにあるVC++ 2008用のtemplateプロジェクトを、VC++ 2010用に変換しようとしましたがうまくいきません。。。
618 名前:604 mailto:sage [2011/04/27(水) 21:32:18.42 ] >>605 >並列化したいのはループ使っている部分だけなのでそこだけです。 >codepad.org/15hfT9HS 悪い悪い、デートしてて遅くなった。 で、このコードのどこをcuda化したいんだ? 未だ帰り道だから、んな長いの見てられないんだ。
619 名前:デフォルトの名無しさん mailto:sage [2011/04/27(水) 22:18:04.42 ] 16人17脚はデートって言うの?
620 名前:デフォルトの名無しさん mailto:sage [2011/04/28(木) 00:21:09.33 ] >>617 Windows版のnvccはVisual Studio 2005か2008のコンパイラが前提になっているらしいから VC++ 2010用のテンプレートだけではうまくいかないと思う。 それらのコンパイラを用意するとなったら、VS2008で作ったほうが楽な気もする・・・
621 名前:デフォルトの名無しさん mailto:sage [2011/04/28(木) 01:56:26.69 ] >603 きたないコードだなあ・・・。
622 名前:デフォルトの名無しさん mailto:sage [2011/04/28(木) 02:06:27.26 ] >>603 俺ならこうだな。 for (i = 0 ; i < 16; i++) { for (j = 0; j < 16; j++) { } } 主なコーディング作法が3つくらいあるから、そのどれかにしろ。
623 名前:デフォルトの名無しさん mailto:sage [2011/04/28(木) 02:08:04.55 ] >>622 スペースきれい! ふしぎ!
624 名前:デフォルトの名無しさん mailto:sage [2011/04/28(木) 02:10:39.48 ] >603 あまりにもイミフなんだけど、とりあえず並列化したいなら 関数呼び出し側 func<<<<16, 16>>>(d1, d2, t, h1, h2, buf); 処理内容 __global__ void func(hoge* d1, hogehoge* d2, hogehogehoge* t, hogehogehogehoge* h1, hogehogehogehogehoge* h2, hogehogehogehogehoge* buf){ int o = FG[a[blockIdx.x]^GF[u1.m[blockIdx.x.]]; int p = FG[b[blockIdx.x]^GR[u.m[blockIdx.x]]; d1[blockIdx.x] ^= t[o][h1[p][threadIdx.x]]; d2[blockIdx.x] ^= t[o][h2[p][threadIdx.x]]; buf[blockIdx.x] ^= d1[blockIdx.x]; buf[blockIdx.x + 16] ^= d2[blockIdx.x]; } 酔っ払いながらコード書いたから間違いある気がするけど、 CUDAの根本的な文法も理解しようとせず使おうとしてるから、バレないし問題ないよね。
625 名前:デフォルトの名無しさん mailto:sage [2011/04/28(木) 20:52:23.73 ] >>617 VC2010はCUDA 4.0 RC2から対応で、SDKにテンプレートが付属してる。 うちの環境だとMSBuild関連が正しくインストールされなかったのでひと手間必要だったけど。
626 名前:デフォルトの名無しさん mailto:sage [2011/04/29(金) 23:49:38.06 ] CUDAのコンパイラってレジスタ不足でもコンパイル通っちゃうのか? VSで開発してるんだが、どうもレジスタが足りないとFirst chance exceptionエラーが出る気がしてきた。
627 名前:デフォルトの名無しさん mailto:sage [2011/04/29(金) 23:58:25.76 ] >48 祈るってアプローチが間違いとは言わないけど、 同じ計算を2並列で行うとか、間違いなく構成を変えられる方法があれば 演算器を入れ替えて2回行うとかって手もあるよ。 2倍時間がかかってもまだCPUには勝てるでしょ。
628 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 00:29:11.48 ] PowerDirectorなどCUDAを使ってエンコードを高速化出来るアプリがありますは、SLI環境ではさらに高速化出来るのでしょうか? ググると出来ないというソースが目立ちますが... X58マザー使っています。
629 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 00:35:04.10 ] レジスタ不足ってローカルメモリ使われるんじゃないの?
630 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 01:12:10.48 ] >>628 cuda4はどうか知らないが、それ以前のcudaではSLIだからより速くできると言うことはない。 勿論GPU2枚挿しに対応したアプリなら、2枚刺した方が速くはなるがSLIには関係ないようだ。
631 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 03:38:04.89 ] >629 引数はsharedメモリに確保されるってどっかで見たことあるけど… sharedメモリつかってないプログラムだしなあ。 使ってるのはGeForce9800 - G92コアなんだけど、 コアに上限の24ワープ割り当てるVSがエラー吐いて動かなくなるんだけど、 控え見えに16ワープ放りこむと問題なく動く。 cuFFTとかの標準ライブラリでも動作が怪しかったりするのは レジスタ周りの取り扱いのせいなんじゃって気がしてきてるのですよ。
632 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 08:15:07.06 ] 引数はCC2.0からはコンスタントメモリで それ以前はシェアードだったかな 関数内変数はレジスタで不足したら勝手にグローバルにいくんでしょ ワープ数が上限ぴったりならエラーは吐かないと思うんだけど
633 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 08:23:40.36 ] オーバーしても、普通は遅くなるだけだと思うんだけどなぁ。
634 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 15:46:08.21 ] >>631 そんな曖昧な知識で推測する前にPDFちゃんと読むんだ
635 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 16:50:47.84 ] >634 了解したぜ
636 名前:デフォルトの名無しさん mailto:sage [2011/04/30(土) 23:22:46.13 ] >>630 ありがとう。 SLI環境はもう少し様子見します。。
637 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 12:42:12.87 ] 最近のグラボはATX電源から電源引っ張ってくんだな。 Fermiに変えたが早すぎワロタ。
638 名前:デフォルトの名無しさん mailto:sage [2011/05/02(月) 13:14:07.57 ] それ以前からfermiって劇的な変化じゃね キャッシュはでかい
639 名前:デフォルトの名無しさん mailto:sage [2011/05/08(日) 01:40:31.32 ] FlashPlayerもCUDAつかえるの?
640 名前:デフォルトの名無しさん mailto:sage [2011/05/08(日) 05:13:16.28 ] Tesla S2070ってなんで抹消されてしまったのでしょうか。 nVIDIAのページにもELSAのページにもなくなってしまったのですが。
641 名前:CUDA初心者 [2011/05/09(月) 11:25:03.07 ] XPでFFTをかけるソースがあったのでvisualstudio2008で実行してみたところ FFT.exe の 0x7c812afb で初回の例外が発生しました: Microsoft C++ の例外: cudaError_enum (メモリの場所 0x0012ae3c)。 というエラーが出てしまい困っています。ホストからデバイスへのメモリのコピー等 の簡単なプログラムは動きます。ちなみにGeforce210です。
642 名前:デフォルトの名無しさん mailto:sage [2011/05/09(月) 21:02:35.89 ] debugを人に頼むような人間は一つ解決しても次に同じような所で引っかかるからきりがないわな。
643 名前:デフォルトの名無しさん mailto:sage [2011/05/10(火) 09:55:41.04 ] >>641 は何も頼んでない。日記を書いてるだけじゃないか?
644 名前:デフォルトの名無しさん mailto:sage [2011/05/10(火) 22:29:43.44 ] >641 多分それ、cuFFTのバグ。そのエラーコードはメモリアクセス例外のときに出る。 俺の場合9800GTから550Tiに買い換えたらエラーが消えた。 cuFFTがデバイスメモリ使い過ぎて、デバイスが積んでるメモリ量によっては エラーを吐くとかが原因の気がしてるんだが、本当の理由はわからん。 NVidia側のバグフィックスを待つぐらいしか現状で対策はないと思う。
645 名前:デフォルトの名無しさん mailto:sage [2011/05/11(水) 00:23:29.41 ] cuFFTのバグなら、サイズが2の冪かどうかでも変わるね。 cuFFTの内部で結構デバイスメモリを使うようだから、ボードの半分以下のFFTしかかけられない。
646 名前:デフォルトの名無しさん mailto:sage [2011/05/11(水) 19:42:26.40 ] >>642 FFTなんて本来ライブラリの側で対処すべき次元のもので、 ユーザー側がデバッグに煩わされるべきものではないがな。
647 名前:デフォルトの名無しさん mailto:sage [2011/05/11(水) 19:57:25.35 ] >>646 もしバグだとおもうならフォーラムで問い合わせたり報告したりしたほうが良いんじゃないか? バグなら修正してもらえる可能性があるし、そうじゃないとしたら自分の間違いだとわかる
648 名前:デフォルトの名無しさん mailto:sage [2011/05/11(水) 23:13:45.45 ] ubuntu 10.04、CUDA4.0でSDKをコンパイルした後に deviceQueryを実行しようとすると Error: API mismatch: the NVIDIA kernel module has version 270.29, but this NVIDIA driver component has version 270.40. Please make sure that the kernel module and all NVIDIA driver components have the same version. と出てしまい実行出来ません。どうしたら良いでしょうか?
649 名前:デフォルトの名無しさん mailto:sage [2011/05/11(水) 23:20:38.40 ] >>648 www.alc.co.jp/
650 名前:デフォルトの名無しさん mailto:sage [2011/05/11(水) 23:33:32.11 ] nvidia-current カーネルを削除してSDKを再コンパイルで行けました ありがとうございます
651 名前:デフォルトの名無しさん mailto:sage [2011/05/11(水) 23:35:55.99 ] nvidia-current カーネルを削除してSDKを再コンパイルで行けました ありがとうございます
652 名前:デフォルトの名無しさん mailto:sage [2011/05/12(木) 00:05:11.00 ] >>647 フォーラムには既にあったと思う。
653 名前:CUDA初心者 [2011/05/12(木) 15:13:05.97 ] >>644 ありがとうございます。 550Ti持ってるのでそっちでやってみようと思います。
654 名前:デフォルトの名無しさん [2011/05/16(月) 10:53:35.28 ] Developer Drivers for Linuxをインストールすると、 Xwindowの解像度が640*480固定になるのはどうしてなのかしら?
655 名前:デフォルトの名無しさん mailto:sage [2011/05/16(月) 10:57:58.45 ] おまえがばかだからじゃないか?
656 名前:デフォルトの名無しさん mailto:sage [2011/05/16(月) 11:00:18.75 ] xの設定書き換えちゃってるんじゃないの?
657 名前:デフォルトの名無しさん [2011/05/18(水) 12:36:20.91 ] Ubuntu 11.04 CUDA 4.0でドライバをインストールしようとすると、 The Nouveau kernel driver is currently in use by your system. というエラーが出て、先に進めません。 どうしたらNouveau kernel driverをとりのぞけますか?
658 名前:デフォルトの名無しさん mailto:sage [2011/05/18(水) 12:42:47.54 ] これ読んでみ https://help.ubuntu.com/community/BinaryDriverHowto/Nvidia
659 名前:デフォルトの名無しさん [2011/05/18(水) 13:18:46.93 ] >>658 早速の返信ありがとうございます。 sudo apt-get --purge remove xserver-xorg-video-nouveau と打って、再起動もしてみましたが、やはり同じメッセージが帰ってきます。 ほかに、何か手立てはないものでしょうか?
660 名前:デフォルトの名無しさん mailto:sage [2011/05/18(水) 21:39:19.83 ] >>657 俺がLive CDで試したときは kernelの引数にnouveau.modeset=0として起動後に modprobe -r nouveauした。 そもそもnouveauがモジュールではなくて組み込みになってるなんてことはないよね?
661 名前:デフォルトの名無しさん [2011/05/19(木) 04:06:30.55 ] インテルコンパイラには対応していないの?
662 名前:デフォルトの名無しさん mailto:sage [2011/05/19(木) 04:12:46.19 ] Coalesced Accessって簡単にいうとどゆうこと
663 名前:デフォルトの名無しさん mailto:sage [2011/05/19(木) 08:14:50.08 ] >>662 16人17脚で走ること ただし、一番端っこの人の番号に制限あり
664 名前:デフォルトの名無しさん mailto:sage [2011/05/19(木) 08:28:38.02 ] >>663 なんだかすごく遅くなりそうな例えだなw
665 名前:デフォルトの名無しさん mailto:sage [2011/05/19(木) 09:19:43.15 ] 論文書くときにさ、遠くの図書館に借りに行くわけよ 16冊まで借りられるから自分の欲しいタイトル1冊と隣に並んでるの15冊借りて帰って来るの そん中にフラットメイト15人が欲しい本が入ってたらラッキー 何人か足りなかったらまたまた誰か派遣して16冊借りてこなくちゃなんない 一回で16人全員満足したり16冊全部が有効に使われたらうれしいな 俺ら棚のブックエンドの右からまとめてとってく癖があるから 司書さんはいいかんじに本並べといてね 家にあればこっちのもんだから欲しい本被っててもおkおk てのはどうだろう
666 名前:デフォルトの名無しさん mailto:sage [2011/05/19(木) 09:33:17.23 ] >>663 はCoalesingの説明になってないぞ。 食堂のカウンターに並んでいる先頭の16人が皆「カレーライスください」という。 食堂のおばちゃんが「皆カレーかい?鍋ごとあげるから皆で分けてね。」 もちろん正確ではないが速くなりそうな例ではある。
667 名前:デフォルトの名無しさん [2011/05/19(木) 15:22:10.76 ] 初歩的な質問で恐縮なのですが、 皆さんCUDA版プログラムとCPU版プログラムの速度比較は どのようにされてますでしょうか? CUDA3.0以降はエミュレーションモードがなくなったようなので、 別にCPU版プログラムも作って比較するのがよいでしょうか?
668 名前: 忍法帖【Lv=25,xxxPT】 mailto:sage [2011/05/19(木) 16:17:52.26 ] エミュレーションと比較して何の意味があるの? NVIDIAの回し者でない限り、iccでカリカリにチューンしたプログラムと比較するべし。
669 名前: 忍法帖【Lv=26,xxxPT】 mailto:sage [2011/05/19(木) 18:19:14.33 ] CPU版と比較しても仕方が無い。 iccでチューニングした上で、更にその先の為にcudaを使うのだから。 まして、エミュレーションだなんてなんの悪夢だか。
670 名前:デフォルトの名無しさん mailto:sage [2011/05/19(木) 21:39:40.22 ] >662 メモリ読み書きするなら32byte, 64byte, 128byte単位にしてください。 これだけ。
671 名前:デフォルトの名無しさん [2011/05/20(金) 14:19:17.96 ] SDK,toolkitを再インストールしたところ サンプルを実行すると cudart32_31_9.dllが見つからなかったため、このアプリケーションを開始できませんでした 。cudartを間違えて消してしまったと思われるのですが、どうやったら解消されるのでしょうか? ぐぐってみたのですが、わかりませんでした。
672 名前:デフォルトの名無しさん mailto:sage [2011/05/20(金) 14:31:37.09 ] PCを再起動させてみたらどう
673 名前:デフォルトの名無しさん mailto:sage [2011/05/20(金) 15:41:59.99 ] 最悪でも再インストールで済むだろ。
674 名前:デフォルトの名無しさん [2011/05/20(金) 17:07:36.68 ] 再インストールしてみたのですが変わりませんでした泣
675 名前:デフォルトの名無しさん mailto:sage [2011/05/20(金) 17:37:59.88 ] >>674 よかったな、cudartを間違って消してしまったわけじゃないことが判ったじゃないか。
676 名前:デフォルトの名無しさん mailto:sage [2011/05/27(金) 03:06:11.39 ] CUDA 4.0
677 名前:デフォルトの名無しさん [2011/05/27(金) 11:09:49.93 ] __CUDACC__ってもう定義されていないの?
678 名前:デフォルトの名無しさん mailto:sage [2011/05/28(土) 08:21:44.26 ] みんな業務でCUDAつかってんの?
679 名前:デフォルトの名無しさん mailto:sage [2011/05/28(土) 08:56:58.21 ] 一部使ってますが。
680 名前:デフォルトの名無しさん mailto:sage [2011/05/28(土) 21:17:04.74 ] CUDA4.0、GTX480M + Notebook Developer Drivers for WinVista and Win7 (270.61)では device query含め、CUDA Cのサンプルが全部動かない。 OpenCLとDirectComputeは動く。 なんでだろう。
681 名前: 忍法帖【Lv=1,xxxP】 mailto:sage [2011/05/29(日) 11:17:41.19 ] 坊やだからさ
682 名前:デフォルトの名無しさん mailto:sage [2011/05/29(日) 11:48:30.13 ] VS2010とCUDA4.0の環境でrulesファイルを使えた方おりませんか? $(CUDA_PATH)\extras\visual_studio_integration\rules にあるファイルをコピーしたのですが、これを設定してプロジェクトを読み込みなおすと 「要素 <UsingTask> 内の属性 "AssemblyFile" の値 "$(CudaBuildTasksPath)" を評価した結果 "" は無効です」 といったエラーが出てプロジェクトが読み込めないようです…。
683 名前:デフォルトの名無しさん mailto:sage [2011/05/29(日) 21:12:48.05 ] 完全な逐次処理(どう頑張っても並列化できない)のを、 CUDAで高速化してちょ、といわれたんだけど殴っていい?
684 名前:デフォルトの名無しさん mailto:sage [2011/05/29(日) 21:18:05.50 ] >>683 いや無理にでもやれよ それが仕事ってもんだ
685 名前:デフォルトの名無しさん mailto:sage [2011/05/29(日) 21:27:29.77 ] ゼロコピーってキャッシュされないでしょ。 んで、ゼロコピーを使うと遅くなるケースが出てきたんで、 仕方なく使わないことにしたんだけど、 やっぱりcudaMallocやcudaMemcpyの時間がもったいないんで どうにかしたいんだけど、なんか知恵ある?
686 名前:デフォルトの名無しさん mailto:sage [2011/05/29(日) 21:53:26.07 ] >>683 どう頑張っても並列化できないを証明すれば良いじゃん. なかなか難しいよ.
687 名前:デフォルトの名無しさん mailto:sage [2011/05/29(日) 22:08:28.81 ] >>685 ゼロコピーって何よ。 何をしたいのか判らんけど、cudaMemset()も使えない内容なの?
688 名前:682 mailto:sage [2011/05/29(日) 22:53:30.43 ] 解決しました。ちょうど公式フォーラムで同じ問題に遭遇してた人が居たようです。 先ほどあった投稿で解決することができました forums.nvidia.com/index.php?showtopic=201433
689 名前:デフォルトの名無しさん [2011/05/29(日) 23:36:05.38 ] もふ。 マジレスするとゼロコピーとは、cudaHostGetDevicePointer()を使うやつのことだす。 cudaMallocHost()でホスト側のメモリを確保しとかないとダメだけど。
690 名前:デフォルトの名無しさん mailto:sage [2011/05/30(月) 01:01:06.08 ] ゼロコピーと言うのは知らんかった。 処で、勿体無いと言うけどcudaMalloc()って時間掛かる?
691 名前:デフォルトの名無しさん mailto:sage [2011/06/01(水) 01:01:48.66 ] 演算速度について質問です。 プログラミングガイドによるとfloatにおけるmulとmadの速度は同一だとあるのですが、 for(i=0;i<N;i++) a = b*c; と for(i=0;i<N;i++) a = d*(b+c); では明らかに前者のほうが短い時間で処理を行っています。 dをコンスタンとメモリや定数にしても同じでした。 いったいどういうことなんでしょうか? 助けてください。
692 名前:デフォルトの名無しさん mailto:sage [2011/06/01(水) 01:07:21.88 ] >>691 どこのプログラミングガイドだよ教えろよ教えてくださいお願いします
693 名前:デフォルトの名無しさん mailto:sage [2011/06/01(水) 01:12:04.19 ] madって(A*B)+Cじゃないの?
694 名前:デフォルトの名無しさん mailto:sage [2011/06/01(水) 01:14:43.17 ] すみませんまったく環境とか書いてませんでした。 GPU : GeForce GTX 285M CUDA Toolkit : 2.2 です。 >>692 NVIDIA CUDA Programming Guide 2.2です。 第5章Instruction Performance の 5.1.1.1 Arithmetic Instructions より Throughput of single-precision floating-point add, multiply, and multiply-add is 8 operations per clock cycle. だそうです。
695 名前:デフォルトの名無しさん mailto:sage [2011/06/01(水) 01:27:04.68 ] >>693 ごめんなさい書き間違えました。 for(i=0;i<N;i++) a = d*b+c; です。
696 名前: 忍法帖【Lv=2,xxxPT】 mailto:sage [2011/06/01(水) 02:09:02.07 ] まぁ、ptxを貼ってみろ。
697 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 01:22:02.76 ] 積和演算なら a = b*c+d*e とかじゃないのん?畳込みとか行列積とかで頻出する計算です。
698 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 01:30:56.84 ] DSPの命令見てみたら、積和演算は a = a + (b*c) だったわ。 a+= (b*c) でもええかもしれんが。
699 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 03:02:35.87 ] >>680 270.81でないとCUDAランタイムAPIが変な動作をするみたい つまり現時点ではPC用のドライバしかない
700 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 11:07:00.65 ] 270.61に 「Unified Virtual Addressing (UVA) やGPUDirect? v2.0を特徴とするCUDA 4.0を使ったアプリケーション用サポートの追加」 と書いておきながら動かないなんてふざけた話だわ
701 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 22:17:32.06 ] CUDA勉強はじめました。 でも世の中に出てる日本語のCUDAの本って4冊ともFermi以前のアーキテクチャでの説明だからsharedメモリが16kbyteだったり、1ブロックあたりのスレッド数が512だったりするんで困ります。 なんとかして。
702 名前:691 mailto:sage [2011/06/02(木) 22:33:23.38 ] コンスタントメモリや定数の値をレジスタに読み込む時間をまったく無視していました。 たぶんそのせいで遅くなっているんだと思います。 ご迷惑かけてすみません。
703 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 22:59:17.85 ] >>700 ちょうど新しいドライバが出たみたいです
704 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 23:33:53.87 ] >>701 英語も勉強汁
705 名前:デフォルトの名無しさん mailto:sage [2011/06/02(木) 23:44:11.15 ] oh! i can't read english. :-P
706 名前:デフォルトの名無しさん mailto:sage [2011/06/03(金) 00:27:22.61 ] >>701 Fermi用の正しい値が分かる人なら何も困らないような気が・・・・。
707 名前:デフォルトの名無しさん mailto:sage [2011/06/03(金) 22:26:32.06 ] Compute Visual Profilerを使いこなしてる人っている? あれ、結局、どう活用していかわからん。
708 名前:デフォルトの名無しさん mailto:sage [2011/06/04(土) 10:50:31.43 ] >>701 Fermiの方が簡単になってるからいんじゃね >>707 ローカルメモリ使われてたりバンクコンフリトあるかをチェックすんじゃね
709 名前:デフォルトの名無しさん mailto:sage [2011/06/04(土) 11:02:21.92 ] 北川景子かわゆす
710 名前:デフォルトの名無しさん mailto:sage [2011/06/04(土) 11:18:35.39 ] そうか?
711 名前:デフォルトの名無しさん mailto:sage [2011/06/04(土) 20:06:16.65 ] あれ?4.0ってcutil64D.libなくなっちゃった?
712 名前:デフォルトの名無しさん mailto:sage [2011/06/04(土) 23:19:09.39 ] 本当だなくなってる
713 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 00:30:29.73 ]
714 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 00:56:21.39 ] 自前でビルドしなさい
715 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 04:04:47.93 ] 今Cを勉強中ですが、CUDAと並行して勉強できますか?
716 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 10:23:06.12 ] >>715 少なくとも小中で算数(数学)や社会、英語などを並行して勉強してきたはず
717 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 10:42:05.41 ] >>715 CUDAのプログラム記法以外に知るべき事が多い。と言うかむしろそちらが大半じゃないか。並行してできる、がんばれ
718 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 18:19:38.33 ] どっちもものにならないと思う。どっちかだけやればものになるものでもないけど。
719 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 18:43:41.04 ] 4.0でコンパイルが通らないの結構多いね CUDA BY EXAMPLEのサンプルをいくつか試したがエラーをはく。 まだ3.2使うわ
720 名前:デフォルトの名無しさん mailto:sage [2011/06/05(日) 19:14:22.50 ] 4.0 から cutil32.lib とかって自分でビルドするようになったのね。 インストール後に検索しても見つからないから、変だな〜と思った。 Direct Compute の Example が動かないのもよくわからん。
721 名前:デフォルトの名無しさん mailto:sage [2011/06/06(月) 09:41:55.58 ] ある程度C(というかプログラミング)しってなきゃ百パー無理だろ
722 名前:デフォルトの名無しさん mailto:sage [2011/06/06(月) 13:37:59.32 ] %を略すな、池沼
723 名前:デフォルトの名無しさん mailto:sage [2011/06/06(月) 13:54:50.09 ] 。
724 名前:デフォルトの名無しさん mailto:sage [2011/06/06(月) 21:16:41.99 ] >>721 それを知らなかったので、PATHの設定やmake実行さえ一苦労でした。 人によっては、ディレクトリの概念が難しい場合もあるかもしれません。
725 名前:デフォルトの名無しさん mailto:sage [2011/06/06(月) 21:26:48.74 ] cudaはただでさえ難しいぞ 初心者に手にを得る代物じゃね〜べよ
726 名前:デフォルトの名無しさん mailto:sage [2011/06/06(月) 21:32:48.38 ] 資料も英語しかないしかなりきつかったわ
727 名前:デフォルトの名無しさん mailto:sage [2011/06/08(水) 14:58:17.39 ] OpenCLとどっちが楽ですか?
728 名前:デフォルトの名無しさん mailto:sage [2011/06/08(水) 16:43:07.02 ] Cudaの方が楽 OpenCLはOpenGLと同様、自助努力が基本になる
729 名前:デフォルトの名無しさん mailto:sage [2011/06/09(木) 05:38:12.86 ] OpenCLとどっちが速いですか?
730 名前:デフォルトの名無しさん mailto:sage [2011/06/09(木) 06:45:26.86 ] 自助努力って具体的に何?
731 名前:デフォルトの名無しさん mailto:sage [2011/06/09(木) 10:03:14.93 ] >>423 亀だけど、cufftPlanは対象とするデータのサイズと同じサイズをバッファとして確保するみたい。だから、二倍以上メモリが空いてないとこける。
732 名前:デフォルトの名無しさん mailto:sage [2011/06/09(木) 17:23:54.07 ] >>730 そういうのを自分で考えたり調べたりする姿勢や行動
733 名前:デフォルトの名無しさん mailto:sage [2011/06/09(木) 18:41:25.08 ] OpenGL de プログラミングというサイトや CUDAプログラミング入門とかフリーであるもの 見たほうがそこらの書籍よりかなり役立つよ OpenCLは少し大変だけどCPUならdouble型 オプションあるからいいんだよね CUDAにもあるのかな?
734 名前:デフォルトの名無しさん mailto:sage [2011/06/09(木) 18:58:20.29 ] あった、ごめん
735 名前:デフォルトの名無しさん mailto:sage [2011/06/11(土) 18:37:21.68 ] visual studio pro, radeon 6000 台 で ati stream ないし open cl 使っての 並列FPU高速化ってどのくらい大変ですか? 一般のプログラムと英語ドキュメント読解に問題はないです
736 名前:デフォルトの名無しさん mailto:sage [2011/06/11(土) 18:40:16.57 ] スレタイ読む能力はなかったようだな
737 名前:デフォルトの名無しさん mailto:sage [2011/06/11(土) 19:04:07.23 ] 間違えました。すいません。
738 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 06:56:49.05 ] 漫才かw
739 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 19:39:36.69 ] >>732 CUDAを勉強してみようかと少し取り組んでみましたが、 C言語の基本も知らぬプログラミング初心者なので C言語から勉強しようと思ってます。
740 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 19:49:59.75 ] Rやoctaveに触れると、Cの世界に戻れない。 故にCUDAに触れることも出来なくなる。
741 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 19:55:24.78 ] Rでモンテカルロ出来るんだっけ?
742 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 20:12:36.74 ] >>739 C言語の文法を知ることは必須としても、まずプログラムがどういうもので何が出来るものなのか、って視点からも眺めた方がいいよ。 文法を覚えることに溺れないように
743 名前:デフォルトの名無しさん mailto:sage [2011/06/12(日) 20:32:53.39 ] >>741 統計解析ソフトだから乱数の生成は得意だと思うけど、 ループが苦手だから本当にモンテカルロが必要な場面でが役立たずかも。 Rユーザから見ると、curandライブラリがRから呼び出せたら嬉しい。
744 名前:デフォルトの名無しさん [2011/06/13(月) 16:13:05.08 ] カーネルを起動するのにかかるコストってNVIDIAの資料等に載ってるんでしょうか?
745 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 17:09:26.42 ] 資 料 読 め よ
746 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 20:52:40.31 ] YES → 【見つかった?】 ─ YES → じゃあ聞くな死ね / \ 【資料見た?】 NO → なら、ねぇよ \ NO → 死ね
747 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 22:35:02.62 ] 日本語の試料ないですか? 頭痛いです。
748 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 22:46:41.93 ] YES → 【見つかった?】 ─ YES → じゃあ聞くな死ね / \ 【探した?】 NO → それより僕と踊りませんか? \ NO → 死ね
749 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 22:56:54.15 ] >>746 くだすれなんだし並列に書いてみてはどうか
750 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 23:03:14.51 ] >>749 ifが多すぎてパフォーマンスが落ちると思う
751 名前:デフォルトの名無しさん mailto:sage [2011/06/13(月) 23:07:55.03 ] >>750 嫁>>1
752 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 09:21:34.64 ] >>1 の序文が全く無視されているな
753 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 09:45:27.25 ] >>747 日本語の書籍購入するのが早いとおもうよ。 ・ASCII.technologies (アスキードットテクノロジーズ) 2010年 08月号 ・はじめてのCUDAプログラミング ・CUDA by Example 汎用GPUプログラミング入門 この辺がお勧め。自分はこの順で読んだ。 でもプログラミングガイドとか読むのは避けられないはず。 ・CUDAプログラミング実践講座 - 超並列プロセッサにおけるプログラミング手法 これは買ってないけど良さそう。
754 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 09:47:57.13 ] >>753 上から三つ目は一つ目と二つ目が参考資料だっからな アスキーは触りとしてはわかりやすかった どれにしろFermiについて書いてないけどね
755 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 09:55:59.01 ] 4.0になると、もうどうしましょ
756 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 20:59:49.06 ] ■後藤弘茂のWeekly海外ニュース■ AMDが発表したメインストリームAPU「Llano」のアーキテクチャ ttp://pc.watch.impress.co.jp/docs/column/kaigai/20110614_452948.html >もう1つのバスは「Fusion Compute Link (Onion)」で、こちらはCPUとのコヒーレントバスになっている。 >このバスを使うと、GPUコアが、これまでできなかったCPUキャッシュへのスヌープをできるようになる。 >このOnionバスを使うことで、GPUでの汎用コンピューティング時に、 >CPUとGPUの間での無駄なメモリコピーを排除するゼロコピーが実現できる。
757 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 22:14:25.10 ] あとはメインメモリがGDDR5になるのを待つだけだな.
758 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 22:50:31.08 ] また妙なことを始めたなAMDw
759 名前:デフォルトの名無しさん mailto:sage [2011/06/14(火) 22:59:19.26 ] メモリコピーがネックにならない計算ってむしろおかしい? 計算の方が時間かかってるんだけど もっと最適化できそうとか
760 名前:デフォルトの名無しさん mailto:sage [2011/06/15(水) 01:56:49.38 ] 利用しているデータ量が少ないなら別におかしくはないと思うけど。
761 名前:デフォルトの名無しさん [2011/06/15(水) 14:58:40.10 ] SDK4.0(x32)のtemplateを別フォルダにコピーしてVS2008でビルドしようとしたらcutil32D.libが開けませんって出ます。 助けてください。
762 名前:デフォルトの名無しさん mailto:sage [2011/06/15(水) 16:01:33.65 ] >>761 720
763 名前:デフォルトの名無しさん mailto:soab_b_nb@yahoo.co.jp [2011/06/15(水) 17:10:58.62 ] >>762 レスありがとうございます。 cutilとshrUtilsは既にビルドはしているんですが、開けないとでるんですよ。。
764 名前:デフォルトの名無しさん mailto:sage [2011/06/15(水) 21:41:20.65 ] >759 メモリコピーの時間がかかってでも並列演算したいって問題がほとんどだから 別におかしくないんじゃない。 並列計算が早すぎてメモリコピーがネックのように見えるってことはあるけど。
765 名前:デフォルトの名無しさん mailto:sage [2011/06/15(水) 22:05:59.38 ] メモリのコピー時間は0でも 同時にはアクセスできないよね、きっと。 でも大した問題でもないか。
766 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 03:21:57.35 ] Microsoft Going All-in on GPU Computing ≪ NVIDIA blogs.nvidia.com/2011/06/microsoft-going-all-in-on-gpu-computing/?sf1642229=1
767 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 06:03:44.90 ] >>754 アスキーは2冊あって2010/08はFermiについても掲載されてるよ そのほかにOpenCL、Direct compute, ATI streamについても載ってる
768 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 15:34:19.10 ] 物凄く基礎的な質問ですいません。 今大学でCUDAの勉強を始めた者です。 現在貸し出されたPCに入っていたのがGeForce7600GSで、 CUDAの公式を見る限りだとCUDAに対応していないようですが どうにかして動かすことは出来ないでしょうか? 一応一番初期のVer1.0〜最新の4.0までひと通り試してみたのですが サンプルのdeviceQueryを動かしてもCUDA Driver Versionは0.0のままでした。 もし可能でしたら少しでも助言を・・・ 無理なら無理と言ってくだされば大学側に申請して 可能なGPUの購入を考えてます。
769 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 15:37:06.49 ] CUDAの勉強するならCUDAに対応したグラボを用意して貰え 対応してない物が仮に動いたとしても、それが正確な動作かわからんから勉強にならんぞ
770 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 15:54:45.30 ] cuda x86 Amazon EC2 GPU買わなくてもおk
771 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 16:13:17.23 ] >>768 安いのなら1万切るから自分でグラボ買ってもいいんじゃない?
772 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 16:48:57.04 ] >>771 大学研究室ならキッチリ金出してくれて580くらいはポンと買ってくれるだろうから自分で買う意味ないだろう
773 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 18:37:25.67 ] ゲーム用と思われるのもあれだからTesla 20 Cシリーズ買ってもらいなよ
774 名前:デフォルトの名無しさん mailto:sage [2011/06/16(木) 22:59:07.51 ] >>768 授業?独学? 研究のわけないよね GPGPUの研究でDX9のGPUとか遠回しなアカハラだw
775 名前:デフォルトの名無しさん mailto:sage [2011/06/17(金) 04:29:44.26 ] はじめてのCUDA読んでソースみたほうが早いかもよ それかここのpdfがお勧め ttp://accc.riken.jp/HPC/training.html GPUと大量の配列使うならCUDAが楽だよねえ 自作のテキストだけど、インストール部分だけなら役に立つかもしれない ttps://docs.google.com/viewer?a=v&pid=explorer&chrome=true&srcid=0B3RsNc5-fK5OZWY4MDVjYTItOTM2MS00NDc3LWE3NjEtZTc5YmQyMjg4Y2Q4&hl=ja&authkey=CJHji7AH
776 名前:デフォルトの名無しさん mailto:sage [2011/06/17(金) 07:42:07.25 ] >>775 横からだが、これは面白そう 読んでみるわ
777 名前:デフォルトの名無しさん mailto:sage [2011/06/17(金) 10:15:21.27 ] 同じく横からだが、ブクマした 全部印刷しておいても良いかもしれん
778 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 02:32:29.65 ] >>775 参考になりそうだ。DLできないの?
779 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 10:39:21.50 ] できますん
780 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 22:33:54.54 ] 二つ質問があります @felmiにはキャッシュが搭載されているみたいですがプログラム中で明示しなくてもキャッシュにより高速化するのですか? AGPUでcuda化して高速化が見込めるアプリケーションが載ってるサイトとか知りませんか?ソースコードつきで。できればC言語だとうれしいです
781 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 22:41:52.94 ] めんどく だれかこたえてあげれや
782 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 22:54:32.14 ] この程度の事を自分で調べられず、聞いてしまう人間には 使いこなすのは無理だよ。
783 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 23:07:34.93 ] >>782 一応は調べました せめて@だけでも答えてもらえると助かります Aに関しては自分もいくつか見つけましたが他の方がどういったサイトを使ってるか気になったので聞いてみました
784 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 23:08:08.80 ] 機種依存文字-10 綴り間違い-10 sage+3 投稿時間+10 内容に言及しなくても-7点だ もうちょいがんばれ
785 名前:デフォルトの名無しさん [2011/06/19(日) 23:31:02.35 ] 教えるきないなら書き込むなよ、暇人
786 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 23:52:40.95 ] >>785 プッ
787 名前:デフォルトの名無しさん mailto:sage [2011/06/19(日) 23:52:54.57 ] キャッシュは勝手に使われるが、 キャッシュによって高速化(何と比べて?)するかはアプリによる。 ttp://journal.mycom.co.jp/articles/2010/07/21/fermi_cache/index.html こんな話もあるから、キャッシュが如何使われるか位は 意識しないと駄目だし、究極を目指せば結局コアレスアクセスに なってキャッシュの意味は無くなるかも知れない。 で、そこまで頑張れば微妙にteslaの方が速くなる。
788 名前:デフォルトの名無しさん mailto:sage [2011/06/20(月) 02:53:19.67 ] ランダムアクセスでテストしてみたが(sm1.1でコンパイル)、コアレスと比較して、260では1/5まで速度が落ちたが、470は2/5だった びっくらこいた 高速化できる例はCUDA SDKのサンプルみればよろし
789 名前:デフォルトの名無しさん mailto:sage [2011/06/20(月) 02:55:44.71 ] 補足 G80/G92のように総レジスタ数の少ないGPUはもっと遅くなる。大体1/10
790 名前:デフォルトの名無しさん mailto:sage [2011/06/20(月) 07:37:03.23 ] キャッシャが要らなきゃ共有メモリを増やせるし、Fermiは便利だね。
791 名前:デフォルトの名無しさん mailto:sage [2011/06/22(水) 16:10:37.96 ] fermiで2ワープを2サイクルで処理していると記載を見かけるのですが、なぜ1サイクル1ワープでなく2サイクル2ワープなのでしょうか? どういう原理なのかご存知の方がいらっしゃいましたら教えていただけませんか。 また、ご存知でしたらその記載がどこにあるか教えていただけませんか。 お願いします。
792 名前:デフォルトの名無しさん mailto:sage [2011/06/22(水) 18:40:23.89 ] 「fermi half warp」でググればいくらでも出てくる.