- 1 名前:デフォルトの名無しさん mailto:sage [2012/09/23(日) 23:17:47.58 ]
- このスレッドは、他のスレッドでは書き込めない超低レベル、
もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 CUDA使いが優しくコメントを返しますが、 お礼はCUDAの布教と初心者の救済をお願いします。 CUDA・HomePage ttp://developer.nvidia.com/category/zone/cuda-zone 関連スレ GPGPU#5 ttp://hibari.2ch.net/test/read.cgi/tech/1281876470/ 前スレ 【GPGPU】くだすれCUDAスレ【NVIDIA】 ttp://pc12.2ch.net/test/read.cgi/tech/1206152032/ 【GPGPU】くだすれCUDAスレ pert2【NVIDIA】 ttp://pc12.2ch.net/test/read.cgi/tech/1254997777/ 【GPGPU】くだすれCUDAスレ pert3【NVIDIA】 ttp://hibari.2ch.net/test/read.cgi/tech/1271587710/ 【GPGPU】くだすれCUDAスレ pert4【NVIDIA】 ttp://hibari.2ch.net/test/read.cgi/tech/1291467433/ 【GPGPU】くだすれCUDAスレ part5【NVIDIA】 toro.2ch.net/test/read.cgi/tech/1314104886/
- 623 名前:613 [2014/01/06(月) 01:46:43.97 ]
- >>622
レスありがとうございます。 そうですね、自分の勉強不足もあると思います。 もう少し勉強して頑張ってみます。
- 624 名前:デフォルトの名無しさん mailto:sage [2014/01/06(月) 01:57:37.95 ]
- 勉強不足もあると思うけど、理解してから次に進むっていう意識が欠如してるよな
blockDim.x*blockIdx.x + threadIdx.x の意味すら理解せずにアルゴリズムがどうこう言ったって理解できるわけないだろ。
- 625 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 09:26:42.38 ]
- まあくだすれだし。
またーりしようよ。 >>620 まずサンプルコードをいじらずにそのまま使って 何度も実行して、問題が再現するかどうかちぇっくしませう。
- 626 名前:デフォルトの名無しさん mailto:sage [2014/01/15(水) 08:04:25.37 ]
- on-demand.gputechconf.com/supercomputing/2013/video/SC3108-New-Features-CUDA%206%20-GPU-Acceleration.mp4
- 627 名前:デフォルトの名無しさん [2014/01/16(木) 13:45:32.09 ]
- 関数の呼び出しについて質問があります 回答をお願いします
c言語でつくられたプログラムの一部をCUDAに適用しそれを 本体(cppで作られたプログラム)とは別にCUDA用プログラムとして(拡張子cuとして別に作っておいて) 作り本体から呼び出そうとしたところ未解決の外部シンボルとしてエラーが吐かれてしまうのですが どのように処置したらC言語のプログラムからCUDAのプログラムを呼び出すことができるのでしょうか?
- 628 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 14:01:34.82 ]
- CUDA SDKのサンプルはビルド&実行できた?
- 629 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 14:45:40.63 ]
- >>627
Cはc++またはg++とかでコンパイルしている? ccで生成した中間生製オブジェクトとはリンクできなかったような
- 630 名前:627 [2014/01/16(木) 14:54:30.04 ]
- >>628
回答ありがとうございます サンプルとは「〜\NVIDIA Corporation\CUDA Samples\v5.0」の中にあるサンプルのことでしょうか? もしそのサンプルなら全てではありませんが一部をやってみたところ問題なく動きました。 また外部シンボル等でいろいろ調べてみたところライブラリのリンクが等々と書いていたので 構成プロパティでいくつか追加してみても特にエラーは直りませんでした。
- 631 名前:627 [2014/01/16(木) 15:01:57.65 ]
- >>629
回答ありがとうございます コンパイルについては問題ないと思います。 ネットに書いてあったような設定をしてやったところ.cuのプログラム一つだけの場合 問題なくコンパイルされ期待通りの実行結果が出てくれたのでCのプログラム内で CUDAのプログラムの関数を呼び出す際に問題が発生したのではないかと思います。 というかそのやり方がわかりません・・・
- 632 名前:628 mailto:sage [2014/01/16(木) 15:18:23.50 ]
- .cuファイルを複数使ってるのかな?…と思ったらCUDA5からそれでもOKっぽいんだね
NVIDIA,「CUDA 5」を正式発表。第2世代Kepler「GK110」に向けた準備が整う ニコニコニュース news.nicovideo.jp/watch/nw401167
- 633 名前:628 mailto:sage [2014/01/16(木) 15:19:46.16 ]
- cuファイルが1つだけならビルドできるサンプルにコピペすれば
どうにかなる(問題の切り分けを始められる)と思ったけど
- 634 名前:628 mailto:sage [2014/01/16(木) 15:21:38.59 ]
- 1つ抜けてた、サンプルというのは>>630の言うそれのことで合ってますです。
- 635 名前:627 [2014/01/16(木) 15:32:40.44 ]
- >>632-634
回答ありがとうございます cuファイルは一つだけなので該当サンプルと内容をすり替えれば良いということでしょうか? よろしければそのサンプルはどのサンプルなのかお教えください。 よろしくお願いします
- 636 名前:628 mailto:sage [2014/01/16(木) 15:39:00.82 ]
- そうです>内容をすり替えればいい
ごめん、今使ってるPCにCUDA SDKを入れてない(非Geforce機)ので何があるか わからんけど初級の短めのやつにすればいいと思う。 あと(少なくともcuda sdk3か4の頃だと)プロジェクトに相対pathか絶対pathかが使われてて、 フォルダの場所を移動させるとそれに合わせて設定変更しない限りビルドか実行かが うまくいかなかった覚えがあるので注意してくださーい
- 637 名前:デフォルトの名無しさん [2014/01/16(木) 15:45:39.71 ]
- コペンバローナ「ンーwwwwwwwwwwwwwwwwwwwwwwww」
- 638 名前:628 mailto:sage [2014/01/16(木) 15:46:41.43 ]
- ごめん、問題のポイントを誤解してたかも。
(CとC++とcuの入ったサンプルは見た覚えがない) とりあえず俺の発言は忘れてください。ごめんなさい。
- 639 名前:デフォルトの名無しさん [2014/01/16(木) 15:47:58.43 ]
- ペッコンバローナーwwwwwwwwwwwwwwwwwwwwwwwww
- 640 名前:デフォルトの名無しさん mailto:sage [2014/01/16(木) 17:03:38.03 ]
- >>631
未解決の外部シンボルのエラーって、リンク(コンパイル)の時じゃなくて、実行時に出るの?
- 641 名前:デフォルトの名無しさん [2014/01/16(木) 18:25:52.58 ]
- >>628
ペッコンペッコンペッコンバローナーwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
- 642 名前:デフォルトの名無しさん [2014/01/16(木) 18:29:18.81 ]
- ロ・・・ロバwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
- 643 名前:デフォルトの名無しさん [2014/01/16(木) 18:32:40.24 ]
- コペンハーゲ「ンーwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
- 644 名前:デフォルトの名無しさん [2014/01/16(木) 18:33:44.44 ]
- コペンバロー「ナwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
- 645 名前:デフォルトの名無しさん [2014/01/16(木) 18:34:43.10 ]
- バコナロ「バコーンwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww」
- 646 名前:デフォルトの名無しさん [2014/01/16(木) 18:58:08.66 ]
- 、 ′ 、 ’、 ′ ’ ;.
`',. ’ ’、 ′ ’ . ・ 、′・. ’ ; ’、 ’、′‘ .・” ’、′・ ’、.・”; ” ’ ’、 (;;ノ;; (′‘ ・. ’、′”; ’、′・ ( (´;^`⌒)∴⌒`.・ ” ; ′・ , '´`ヽ.-──-,'´`ヽ. 、 ’、 ’・ 、´⌒,;y'⌒((´;;;;;ノ、"'人 / ゙i::::::::::::::゙i ゙: _、(⌒ ;;;:;´'从 ;' ;:;;) ;⌒ ;; :) )、 ミ / ;゙:;::::::;:::::::! ! ( ´;`ヾ,;⌒)´ 从⌒ ;) `⌒ )⌒:`.・ ,.;゙ r'^ー、;゙:;ィ:::ハ::λi,r'ヽ, i ‘: ;゜+° ′、:::::. :::( ::;; ノ ´⌒(,ゞ、⌒) ;;:::)::ノ i::i | i゙ノiノレ レ' ゙!!i | ! ....................`:::、 ノ ...;:;_) ...::ノ ソ ...::ノ ミ ハ::゙、 i ! > <!| !; :::::::::`- ´:::::::::::::::::::::::::::::::::::::::::::::::::: ノ:::λ゙ー| |〃 __ 〃i l' 〈ノ::イ::ノ::::! ! '、 ノ ノ'. ; 〈/!::;イ::/,r'´`゙゙i>‐_-_t.´r゙´ヾ ミ V^レ´i ,.〉`'゙'i/゙`i,_,..ノ ┏━━━━━━━━━━━━━━━━━━━┓ `ーi゙´ /> i ┃ 「キャー♪」 . . ....... ┃ | ´ | ┃ てゐちゃんは きょうも たのしそうだ!! ┃ミ ,.へ. ,ノ , ,. ! ┗━━━━━━━━━━━━━━━━━━━┛ /___゙ニ=-‐´ , / 〉 ゝ. /´ ̄ _ ノ / / ノ 〉
- 647 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 13:44:16.61 ]
- denver(maxwellも含む)がかなり面白そうだ
Instruction-optimizing processor with branch-count table in hardware https://www.google.com/patents/US20130311752 の特許関係者の前歴 Ben Hertzberg - intel Madhu Swarna - intel Ross Segelken - intel Rupert Brauch - ?Hewlett-Packard David Dunn - transmeta
- 648 名前:デフォルトの名無しさん mailto:sage [2014/01/18(土) 21:26:58.60 ]
- お、Transmetaの人が関わってるのか。
- 649 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 14:04:30.61 ]
- プログラム実行中のGPUの温度をモニターしたいのでNVMLを試してみようと思っています。
ここで、nvmlDevice_tとCUdeviceの対応はどのようにとればいいんでしょう? CUDAのデバイスindexとNVMLのindexは必ずしも一致しないという記述はあったのですが、 じゃあどうすればいいのか、というところを見つけられませんでした。
- 650 名前:デフォルトの名無しさん [2014/01/19(日) 19:36:52.66 ]
- GPU2枚差して、CPU介さずにデータ共有ってできる?
- 651 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 20:22:54.84 ]
- Teslaならできるらしい。持ってないんで試したことないが。
https://developer.nvidia.com/gpudirect
- 652 名前:デフォルトの名無しさん [2014/01/19(日) 21:48:00.18 ]
- 試してみたら、GeForceでもできました。
ありがとうございます
- 653 名前:デフォルトの名無しさん mailto:sage [2014/01/19(日) 23:40:42.70 ]
- >>652
詳細お願いします。
- 654 名前:デフォルトの名無しさん mailto:sage [2014/01/20(月) 00:48:56.84 ]
- >>649
普通にインデックスでいいよ 汎用に作るならデバイス数を取得して、それぞれのnvmlDeviceをインデックスで取得して、いろんな情報とればいい
- 655 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 23:20:39.25 ]
- GeForce,Quadroはメインメモリ→ボードのDMACしか持ってないよね?
- 656 名前:デフォルトの名無しさん mailto:sage [2014/01/26(日) 23:25:59.06 ]
- なんでそう思ったのかが気になる。
- 657 名前:デフォルトの名無しさん mailto:sage [2014/01/30(木) 23:59:53.57 ]
- NNみたいなモロにメモリ律速な計算だとろくに速度出ないな
帯域80GB/s使って160GTlopsとかになる
- 658 名前:デフォルトの名無しさん mailto:sage [2014/01/31(金) 04:06:11.75 ]
- 結局どういう問題なら高速化できるんだ
- 659 名前:デフォルトの名無しさん mailto:sage [2014/01/31(金) 22:45:44.77 ]
- メモリへのアクセスが少ない、扱うデータサイズが小さい、分岐がない
最低数万スレッド以上で並列計算可能な問題であること
- 660 名前:デフォルトの名無しさん mailto:sage [2014/01/31(金) 23:40:00.25 ]
- メモリ量と計算量が比例する問題しか普段扱ってないんだよなあ
暗号解読とか?
- 661 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 08:00:55.65 ]
- Geforce GT520(VRAM: DDR3 1GB)でもCore2Duo E4300に比べたらFFTを高速化できるかな?
- 662 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 10:22:49.10 ]
- マンデルブロが超得意
データ量Nに対して計算量がN^1より大きいオーダーで 増えていくような処理 巨大な元データが必要でも、それ自体は変えずに 少量のパラメータを与えて再計算を繰り返すような処理 しかも結果をグラフィックス表示すればOKな用途
- 663 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 10:55:21.73 ]
- >>662
>しかも結果をグラフィックス表示すればOKな用途 GPU⇒CPUが入ると途端にスループット落ちることになるもんね・・・。
- 664 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 11:40:24.53 ]
- 人工ニューラルネットワークなんかは、
データ量N、i段目のニューロン数n_iとすると、 計算量=NΠ_i n_i だから実はあんまり適してねえのか
- 665 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 13:38:05.35 ]
- GPUもCPUも足回りが全然ついていかないんだよな
NvidiaもAMDもFlops値ばかり競ってるけどメモリ帯域はこの数年で1割程度しか増えていない 完全に頭打ちの傾向
- 666 名前:デフォルトの名無しさん mailto:sage [2014/02/01(土) 14:03:29.95 ]
- そして効率的な演算とデータアクセスの比率は高まるばかり・・・
- 667 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 14:27:36.24 ]
- 石の性能が良くなっても仕方ないよな。
プロセッサの性能が無駄になってる。
- 668 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 14:40:31.96 ]
- まぁ、VoltaでスタックドDRAM使うみたいだから、いくらか改善されるかもね。
- 669 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 14:43:19.21 ]
- ☆ チン マチクタビレタ〜
マチクタビレタ〜 ☆ チン 〃 ∧_∧ / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ヽ ___\(\・∀・) < データまだ〜? \_/⊂ ⊂_ ) \_____________ / ̄ ̄ ̄ ̄ ̄ ̄ /| | ̄ ̄ ̄ ̄ ̄ ̄ ̄| | | CPU・GPU |/
- 670 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 14:56:23.47 ]
- GPUはバス幅を狭くすることでコストダウンを図ってるんだから仕方ないな。
それこそ、バス幅求めるならベクトル計算機でも使えと。全レジスタに対して本当の同時操作が出来るぞ。
- 671 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 15:07:43.13 ]
- >>669
現状を表す最適なAA乙w
- 672 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 15:12:44.27 ]
- このアンバランスな状態を解消できるのはプロセスルールが物理的限界に到達した後だろうな。
- 673 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 15:20:27.01 ]
- しかしその頃には光コンピュータが実用化されていたのだった……
速さが足りない!!
- 674 名前:デフォルトの名無しさん mailto:sage [2014/02/02(日) 15:40:48.83 ]
- 俺が遅い・・・ 俺がスロウリィ?!
- 675 名前:デフォルトの名無しさん [2014/02/03(月) 04:25:07.11 ]
- HOLY隊員のクーダーです
- 676 名前:デフォルトの名無しさん mailto:sage [2014/02/03(月) 15:22:21.17 ]
- FFTぐらいしか応用が思いつかねぇ。
- 677 名前:デフォルトの名無しさん mailto:sage [2014/02/03(月) 18:10:49.48 ]
- >>676
FFTに向いているなら自動的に円周率計算もバリバリなはずだが、ググっても 「円周率の小数点以下8000兆桁めをGeForceで求める方法」 (www.4gamer.net/games/120/G012093/20130323002/) といった話ぐらいしか出てこねぇ……
- 678 名前:デフォルトの名無しさん mailto:sage [2014/02/03(月) 18:28:29.72 ]
- 音声処理におけるFIRフィルタを想定してるぜ・・・。
- 679 名前:デフォルトの名無しさん mailto:sage [2014/02/03(月) 21:38:24.39 ]
- 世間が持てはやすのがFLOPS値ばかりだから一向に帯域増える方向にいかんな
- 680 名前:デフォルトの名無しさん mailto:sage [2014/02/03(月) 22:19:44.58 ]
- 帯域はコストが高く付くからな。
バランス取ろうと思ったら、途端に価格が跳ね上がる。 一般人じゃ手の届かない価格になるよ。
- 681 名前:デフォルトの名無しさん mailto:sage [2014/02/03(月) 22:47:08.60 ]
- >>680
別にHPC用なら値段高くても買う奴いるじゃんか……
- 682 名前:デフォルトの名無しさん mailto:sage [2014/02/04(火) 07:24:40.49 ]
- 普及してて値段が安いからGPGPUがもてはやされてるわけでさ。
値段が高くなればベクトル計算機のプロセッサをPC向けに販売して使ったほうが良いって。
- 683 名前:デフォルトの名無しさん mailto:sage [2014/02/04(火) 21:02:06.21 ]
- >>669
わらった。 GPGPUの一般用途での最大の問題点はCPU<=>GPU間データ転送。一般用途ではそれを解消したAMDのAPUでHSAする方が良いからな いくらGPUがすごくても、メモリ転送に時間掛かってはお手軽に使えないからな
- 684 名前:デフォルトの名無しさん mailto:sage [2014/02/04(火) 21:43:04.69 ]
- kaveri出たらHSA酷使した絶賛ベンチが次々と出てnvidia叩きレスで溢れかえると思ったら思いのほか静かで不思議
- 685 名前:デフォルトの名無しさん mailto:sage [2014/02/04(火) 23:20:40.89 ]
- >>683
データ転送せず極力内部で計算するようにしても結局GPU側の帯域で足引っ張られる 780Tiで単精度5.76Tflopsに対して330GB/sだから足回りが70倍も遅い
- 686 名前:デフォルトの名無しさん mailto:sage [2014/02/04(火) 23:27:45.03 ]
- >>684
言い出しっぺの法則 >>685 だが待ってほしい 70倍遅いなら70倍転送せずに計算すればトントンではないだろうか
- 687 名前:デフォルトの名無しさん mailto:sage [2014/02/05(水) 00:00:22.86 ]
- HSA使ってみたいんだけど、具体的にどうすればいいの?
VisualStudioで始められる??
- 688 名前:デフォルトの名無しさん mailto:sage [2014/02/05(水) 02:10:41.38 ]
- CPUGPU間の転送が足を引っ張ってるってイメージはないな
シェアードメモリやキャッシュ以外のVRAM・GPU間がただただ遅いのだ
- 689 名前:デフォルトの名無しさん mailto:sage [2014/02/05(水) 11:28:09.07 ]
- レイテンシ?
- 690 名前:デフォルトの名無しさん mailto:sage [2014/02/05(水) 17:37:53.61 ]
- 基本的にI/Oが遅いんだよ。
これが何とかなったらいいけど、何とかするとコストがかさむから一般向けでは無理。
- 691 名前:デフォルトの名無しさん mailto:sage [2014/02/05(水) 21:02:36.68 ]
- 一般向=>一般向CUDA用途==スパコン
- 692 名前:デフォルトの名無しさん mailto:sage [2014/02/05(水) 21:49:04.57 ]
- なぜそうなる。数十万でも買うのかよ。
- 693 名前:デフォルトの名無しさん mailto:sage [2014/02/06(木) 10:48:02.20 ]
- 重ーい超越関数をバリバリ使う計算ならメモリ転送はさほど器にしなくて良いのでは。
- 694 名前:デフォルトの名無しさん mailto:sage [2014/02/06(木) 11:35:48.47 ]
- 三角関数がそこそこ速いから最初に三角関数テーブルを作っておいて纏めて計算するんだけど、
キャッシュに乗らないとべらぼうに遅くなるw。
- 695 名前:デフォルトの名無しさん mailto:sage [2014/02/06(木) 23:35:46.17 ]
- 今や、テーブルにしてメモリから読み出すよりも、
手前で計算で作ったほうが速いからなw
- 696 名前:デフォルトの名無しさん mailto:sage [2014/02/06(木) 23:44:44.46 ]
- 昔「計算が遅いからメモリでなんとかしよう」
今「メモリが遅いから計算でなんとかしよう」 将来「???」
- 697 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 00:13:26.20 ]
- PS3もちょうどその技術トレンドを読んで企画されたけど、ちょっと早漏すぎたな。
- 698 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 01:03:30.43 ]
- >>689
VRAMのレイテンシは数百クロックもある上にピーク速度でも計算速度より何百倍も遅い
- 699 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 01:19:34.56 ]
- >>697
早漏てw そこは先駆者として評価してやっていいんじゃないの。十分出回ったしハード的にもソフト的にも注目されて、長めのゲーム機サイクルの中で研究されたんだからアーキテクチャとしては幸せな方でしょ ソニーさんのビジネス的にどうだったのかは知らんけど
- 700 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 02:55:08.39 ]
- >>698
え、マジで? >>699 さすがに逆ザヤはNG
- 701 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 08:04:52.20 ]
- サブプロセッサの性能は兎も角、メイン側が遅過ぎ。
メインとサブの間のメモリ空間も狭いし。 あれでよくゲームに活かせたと思うよ。
- 702 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 23:50:49.70 ]
- >>694
三角関数テーブルって精度的にはどうなん? 多項式補間とかするの?
- 703 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 23:54:19.34 ]
- 用途によるだろう
- 704 名前:デフォルトの名無しさん mailto:sage [2014/02/07(金) 23:57:35.92 ]
- 多項式補間といっても奥が深くてだな……
単なるテイラー展開(途中打ち切り)とよく練られた多項式との差はダンチ 例: cosx≒1-0.5x^2+0.04166666667x^4-0.00138888889x^6とすると 誤差はx=±1までで2.4528×10^-5(テイラー展開)。しかし、 cosx≒0.99999981155-0.49999395279x^2 +0.04166666667x^4-0.00138888889x^6とすると 誤差はx=±1までで2.4528×10^-5(テイラー展開)。しかし、
- 705 名前:704 mailto:sage [2014/02/08(土) 00:01:16.23 ]
- 途中送信してしまったorz
テイラー展開→cosx≒1-0.5x^2+0.04166666667x^4-0.00138888889x^6で、x=±1までの最大誤差2.4528×10^-5 最良近似式→cosx≒0.99999981155-0.49999395279x^2+0.04163632912x^4-0.00134007047x^6で、x=±1までの最大誤差1.8845×10^-7 (出典:www.amazon.co.jp/dp/456301382X)
- 706 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 01:28:11.34 ]
- >>702
私(>694)のところで使うのは周波数空間像の畳み込みだから、三角関数の引き数は格子上の点の距離。 なので、補間の必要もないの。ついでに、cufft相当も自前で実装した。
- 707 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 04:18:08.80 ]
- テイラー展開とか教科書に載ってるだけで、
関数近似の方法としては、ほぼ実用されてねえよ
- 708 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 04:33:47.29 ]
- >>705
URLが見つかりません
- 709 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 11:00:08.81 ]
- 最大誤差が小さくても、cos(0)が0.99999981155になる関数なんて使いたくないな。
0みたいな重要点でおかしな値が出ると致命傷になることが多い。
- 710 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 11:17:17.06 ]
- >>707
テイラー展開の誤差範囲の理論値が明確であるメリットは結構大きい
- 711 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 12:45:17.63 ]
- >>708
URLの最後の)がいらない。
- 712 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 12:48:31.76 ]
- スレ違いかもしらんが、
gccとかのソースを見れば超越関数の実装が分かったりするのかな。 >>708 URLの最後の)がいらない。
- 713 名前:デフォルトの名無しさん mailto:sage [2014/02/08(土) 16:15:49.24 ]
- >>712
FPUがサポートしている超越関数はソースがないかもね。 iccならSSE版の並列演算用の超越関数が実装されているんだけど。
- 714 名前:デフォルトの名無しさん [2014/02/13(木) 18:24:19.21 ]
- 質問です。CUDAを初めて使おうと思うのですが何を買っていいのかわかりません。
当方プログラマです。整数演算主体の力学シミュレータを自作しています。 その中にある絶望的に激重な評価関数が高速化できたらなぁと夢見ています。 その関数は同じデータセット(200キロバイトくらい)を、さまざまな初期値で評価するのですが、 条件分岐が殆ど発生しないアルゴリズムを発見しました。CUDA 向けなんじゃないかと使ったこともないのに妄想しております。 1回の評価計算そのものがめちゃくちゃ重い(単純に100万回くらいループさせているだけ)で、 ループさせるプログラムそのものは数キロバイトも無いちっちゃなものです。
- 715 名前:デフォルトの名無しさん [2014/02/13(木) 18:26:36.46 ]
- とりあえず今は手元にある Windows 7 64bits (チップセットはP55) に入れてお試しでCUDAプログラミングし、
C++で書いたシミュレータをCUDA対応に移植するところから始めたいとおもっています。 グラフィック出力を2本使いながらCUDAを使いたいのですが、私はどんなのを買ったらいいのでしょうか? 将来的には研究費をつぎ込むつもりですが、今は衝撃的に貧乏なので予算3万以内で。
- 716 名前:デフォルトの名無しさん mailto:sage [2014/02/13(木) 18:39:59.33 ]
- >グラフィック出力を2本使いながらCUDAを使いたいのですが
ここんとこ詳しく。あとPCも。 まあビデオカードを1枚買うか2枚買うかくらいの違いでしかないとは思うけど。
- 717 名前:デフォルトの名無しさん mailto:sage [2014/02/13(木) 18:43:12.82 ]
- >>714
CUDA積んでるGPUのリスト https://developer.nvidia.com/cuda-gpus この中から予算の許す限り良い奴を買えばいい CUDA開発用のSDKは公開されてるから環境に合わせてインスコするんだ https://developer.nvidia.com/cuda-toolkit 導入方法やサンプルコードはググるか>>1-2を参照 ……もっとも釣りじゃなければの話だが
- 718 名前:デフォルトの名無しさん [2014/02/13(木) 19:14:47.30 ]
- 早速レスが。有難うございます。
>>716 マザボは P7P55D ってので、PCI-Express 2.0 16X が2本あるのですが、 今はRadeon 2枚で4画面(1920x1200x2 と 1280x1024x2)出してます。 そのうちの片方を nvidia にしたいと考えてます。画面出力との併用って難しいでしょうか? >>717 色々ありますよね・・・。今は技術の練習として試そうと思うのですが、 GTX 660 を選択しようかとおもってるのですが、それはやめとけ、こっちがいいよ、とかありますか?
- 719 名前:デフォルトの名無しさん mailto:sage [2014/02/13(木) 19:26:36.61 ]
- >>714
その目的なら、PC買う前にまず本当にCUDA向きなのか、 実際に自分がそのプログラムを組むことはできるか、 などをクラウドで実験してみてはどうだろうか Amazon EC2 aws.amazon.com/jp/ec2/ 1時間CUDAマシンを借りるのに1ドルもかからない。
- 720 名前:716 mailto:sage [2014/02/13(木) 22:54:51.79 ]
- >>718
Radeon/Geforceの混在かぁ。ごめん俺はわからない。 1枚で画面出力とCUDA計算の併用自体はできる(長い間計算しっぱなしにせず、 ある程度の間隔で制御が戻るようにすれば。 計算しっぱなしでもタイムアウトしない範囲なら表示が完全に固まるわけではないし)。 GTX660でいいんじゃないかな。あるいはコスト抑えたいならもっと下でも。 ローエンドGPUでの実行時間がわかればCUDA Core数の比較で上位GPUにしたときの時間の見当もつくし。 あと2/18に28nmのMaxwell世代のGTX750が発売されるらしいという話もあるけど。
- 721 名前:デフォルトの名無しさん mailto:sage [2014/02/13(木) 22:58:14.70 ]
- >>719と同じくEC2を推す
高いグラボ買って大して高速化できませんでしたじゃ目も当てられない
- 722 名前:デフォルトの名無しさん mailto:sage [2014/02/13(木) 23:16:31.67 ]
- >>719 有難うございます。実は仰る話は第二段階として既に計画していました。
ここがクリアしたら第三段階として本格的な予算を投じて 大量のGPUインスタンスを使って計算するかもしれないです。 でもその前に第一段階として、CUDAにあわせてソースを書き換えたり、 必要に応じてアルゴリズムも修正しなくてはならないと考えており、 そのトライ&エラーに例えば一ヶ月かかっちゃうなら安い奴を買ったほうがいいかな、 とりあえず3万円程度で使い倒してみようかな、と考えている次第です。
- 723 名前:デフォルトの名無しさん mailto:sage [2014/02/13(木) 23:23:35.47 ]
- >>721
そんな事情もあって3万円くらいで、なにがいいのかなと。
|

|