1 名前:デフォルトの名無しさん mailto:sage [2009/10/08(木) 19:29:37 ] このスレッドは、他のスレッドでは書き込めない超低レベル、 もしくは質問者自身何が何だが分からない質問を勇気を持って書き込むスレッドです。 CUDA使いが優しくコメントを返しますが、 お礼はCUDAの布教と初心者の救済をお願いします。 CUDA・HomePage www.nvidia.com/cuda 関連スレ GPUで汎用コンピューティングを行うスレ pc11.2ch.net/test/read.cgi/tech/1167989627/ GPGPU#3 pc12.2ch.net/test/read.cgi/tech/1237630694/
34 名前:デフォルトの名無しさん [2009/10/22(木) 15:51:00 ] CUDA2.0入れてVS2005でtemplateビルドしたら LINK : fatal error LNK1181: 入力ファイル 'cutil32D.lib' を開けません。 って言われます VISTA64版なので、cutil64D.libはあっても32はないのですが、、 どこを修正すればいいのかもわかりません。 ちなみにVSも使ったことない初心者です どうしたらよいでしょう?
35 名前:デフォルトの名無しさん mailto:sage [2009/10/22(木) 19:38:02 ] >>34 上のツールバーの真ん中の方にWin32となっているところをx64に変更。 そもそも64bit用のツールをインストールしているかどうか・・・・。
36 名前:34 [2009/10/22(木) 23:00:43 ] >>35 レスサンクス x64に変更したら、ビルドがスキップされました、、、 プログラマでもないのに、突然仕事でCUDAやってる俺涙目 聞ける人もほとんどいない ちなみにVSのバージョンは Microsoft Visual Studio 2005 Version 8.0.50727.867 (vsvista.050727-8600) Microsoft .NET Framework Version 2.0.50727 SP2 でつ
37 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 02:28:17 ] スレ違い、と言うか人生の道を踏み外したな…。
38 名前:34 mailto:sage [2009/10/23(金) 02:37:36 ] >>37 せめて正しいスレに導いておくんなまし とりあえずコンパイルできないことには段ボーラーです。 踏み外す以前に舗装道路なんて歩いたことございません。
39 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 21:18:44 ] メモ、とりあえず報告しておきます。 OS:Windows Vista Home Premium 64bit IDE:Visual C++ 2008 Express Edition ドライバ:cudadriver_2.3_winvista_64_190.38_general ツールキット:cudatoolkit_2.3_win_64 SDK:cudasdk_2.3_win_64 ぐらぼ:GeForce 9600GT で、64bitビルドを行う。 まずはttp://www.sharkpp.net/blog/2009/04/26/visual-c-2008-express-edition-enable-64-program.html で64bitビルド出来るようにする。 このまま進めてくと、 nvcc fatal : Visual Studio configuration file '(null)' could not be found みたいなエラーが出てくると思う。 これを解決する方法が→ttp://forums.nvidia.com/index.php?showtopic=98319 vcvarsamd64.batは必ず、 C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin\amd64\vcvarsamd64.bat か、または nvcc fatal : Visual Studio configuration file '(null)' could not be found....のところで実行。 後は、nvccのコマンドラインとかちゃんと設定しておけばいける!はず・・・
40 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 21:41:37 ] NVIDIAが目指す究極のプロセッサへと進む「Fermi」アーキテクチャ pc.watch.impress.co.jp/docs/column/kaigai/20091023_323529.html
41 名前:デフォルトの名無しさん mailto:sage [2009/10/23(金) 21:46:13 ] >>39 の意味はわからないけど、64ビットで使うときは、コンパイルとリンクのオプションに -ccbin "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" をつければたいていうまくいく。
42 名前:デフォルトの名無しさん mailto:sage [2009/10/27(火) 10:37:15 ] >>36 その仕事、うちの会社にくれ。あんたがやるより速いものが早くできるぞ。
43 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 13:36:59 ] > VSも使ったことない初心者です でいきなりCUDAか… なんというかどういう会社だと… 「まず32bitで試させてくださいお願いします」 で後から64bitのことを考えたほうがいいんじゃね?
44 名前:デフォルトの名無しさん mailto:sage [2009/10/29(木) 14:05:12 ] >>36 今、 Windows 7 Professional 英語版 VisualStudio 2008 Pro(C++の64bitツール入れる指定) CUDA Driver (190.38) CUDA Toolkit CUDA SDK 入れて、 OceanFFTのoceanFFT_vc90.slnを開いてx64のDebugでリビルドして さくっと動いたなぁ、と思ったところですよ。 buildのログには確かに-ccbin "C:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\bin" と入ってる。 次はCUDA.NETと、PyCUDA+VisualPythonで遊ぼうかなと
45 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 10:11:38 ] >>44 追記... Win7は64bitです。 ToolKitとSDKは2.3です。
46 名前:デフォルトの名無しさん [2009/10/31(土) 19:19:26 ] ボリュームテクスチャをルックアップテーブルとして使いたいのだが cuda kernel上で、tex3D関数を使うと異常に処理時間が増加してしまいます。 case 1 ret=tex3D(tex,yy[0]/256.0-1, yy[1]/256.0-1, yy[2]/10.0-1); case 2 ret=tex3D(0.0,0.0,0.0); で実行時間に10倍以上の差がついてしまうんだがなぜだろう。 メモリ上の配置でかなりパフォーマンスが落ちるということはありますか?
47 名前:デフォルトの名無しさん mailto:sage [2009/10/31(土) 20:16:28 ] >>46 テクスチャキャッシュにヒットするかどうかでパフォーマンスは大きく変わります。
48 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 06:52:25 ] win7x64にCUDA_VS_Wizard_W64.2.0.1入れてもテンプレに表示されるようになる けどエラーでプロジェクトが生成できない・・・ Vistax64の時はこれで一発だったんだが・・・ 7でも32bitのSDK入れてCUDA_VS_Wizard_W32使ったらすんなり入ったが
49 名前:デフォルトの名無しさん mailto:sage [2009/11/01(日) 07:30:31 ] >>48 使えると便利だから使えるようになってほしいな。 フォーラム見に行ったら10/31までmergeでdownだよと書いてあったorz 復活したらエラーメッセージをポストしてください
50 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 07:33:45 ] 誰かtesla使ってる人いる? tesla一枚挿しのマシンに、リモートからwinデフォのtelnet使って動かそうとすると、 tesla自体認識しないんだが・・これどうやって使うの?
51 名前: ◆0uxK91AxII mailto:sage [2009/11/02(月) 07:57:43 ] 認識してすらいない、っと。
52 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 09:31:50 ] >>50 TeslaがささっているマシンがWindowsなのかどうか読み取れませんが、 リモートからWindowsマシンのTesla使うのであればVNCを使うことが多いですね。 リモートからの利用中心であればLinuxにしてしまった方が・・・。
53 名前:デフォルトの名無しさん [2009/11/02(月) 12:21:30 ] >>47 詳しく! お願いします 助かります
54 名前:デフォルトの名無しさん [2009/11/02(月) 12:23:50 ] 逆に、デバイスから高速かつランダムな位置に参照したいときはどのメモリ使えばいい?
55 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 12:28:34 ] >>54 サイズも示さないで高速かつランダムって、馬鹿なの? 間抜けなの? レジスタに乗るなら1クロックでアクセスできる。 共有メモリに乗るなら4クロックでアクセスできる。 グローバルメモリに乗るならランダムと言う前提からcoalscedであることは期待できないから最長数百クロック掛かる。
56 名前:デフォルトの名無しさん mailto:sage [2009/11/02(月) 12:31:27 ] >>50 んじゃ私はLinuxサーバ機であるとして。 一部のメーカのサーバ機(BIOS依存かマザボ依存かは不明)ではTeslaをGPUとして認識する。 その場合は(オンボのGPUが切り離されて涙目になることはあっても)なんとかなる。 処が、一部のサーバ機ではGPUとして認識できないので自前でデバイスを叩かないと認識しない。
57 名前:デフォルトの名無しさん [2009/11/02(月) 17:33:33 ] 確かにそうだな サイズは20メガバイトくらいだ
58 名前:デフォルトの名無しさん [2009/11/04(水) 18:14:36 ] 8800GTXがあるんだが四倍率早く処理するにはなにがある?
59 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 21:40:42 ] ちょっと日本語でOK
60 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 23:27:30 ] 8800GTXを4本さす
61 名前:デフォルトの名無しさん mailto:sage [2009/11/04(水) 23:38:39 ] クロックを4倍に
62 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 09:05:00 ] >>52 レスありがとう。 winでGTX280とTeslaさした状態だと、両方のデバイス認識してて、GTX280外してTesla単体にすると、 Teslaを認識しなくなるんだけど、原因わかる人いる?ドライバではないと思うけど・・ ちなみに、winデフォのリモートデスクトップで確認しました。
63 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 09:10:33 ] DeviceQueryでどうなるのかはっきりして欲しい
64 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 10:22:46 ] >>62 Tesla単体のときって画面は何に表示されるのでしょうか? TeslaはGPUを搭載していますが、ビデオカードではないことに注意してください。 Windowsの制約で複数ベンダーのビデオドライバを同時にロードできないので オンボードにATIやIntel製のビデオチップとかがあると駄目です。 どうしてもその構成にしたいのであればLinuxに。 というかWindowsのバージョンによるけどまず無理です。
65 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 13:05:40 ] 馬鹿みたいに高いのに、すごい仕様だな
66 名前:デフォルトの名無しさん mailto:sage [2009/11/05(木) 15:11:24 ] >64 Win7からはWDDM1.1対応ドライバであれば普通に混載できる
67 名前:デフォルトの名無しさん [2009/11/05(木) 18:11:37 ] なんかメモリアロケートのアルゴリズムいじったら五倍以上速くなった、、 あやうく三枚発注するとこだったよ。よかった
68 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 00:56:55 ] CPUの100倍速い、になるまで満足しちゃいかん
69 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 02:21:26 ] 将来性は銅なのよ?
70 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 02:27:56 ] GeForce 8600 GT使って、3日目の初心者です。 素朴な疑問なのですが、GeForce 8600 GTには512MBのメモリが実装されているのですが、 cudaMalloc を行って、alloc領域が512MBを超えた場合には、どの様になるのでしょうか? ご存知の方がいらっしゃれば、事象や回避策を教えてください。m(_ _)m
71 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 03:25:19 ] >>70 素朴な通り取れない。 エラーが返ってくるはず。
72 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 03:27:14 ] >>67 これはCUDAの話?
73 名前:70 mailto:sage [2009/11/06(金) 08:35:41 ] >>71 ありがとうございます。 まだ、某サイトにあった手順でHellow…が出せた段階です。 もしや実装メモリ量を超えると、HDDとの間でガリガリswapでもするのかなぁ?っと思った次第です。
74 名前:73 mailto:sage [2009/11/06(金) 08:52:35 ] うっ… w 綴り違うし orz...
75 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 10:32:36 ] >>73 大丈夫、swapなんてするはずもない。そもそも512MiB全部使えるわけでさえない。 その世代で512MiB搭載のボードなら、実際に使えるのは高々511.69MiBだけだ。 しかも、そのボードを実際に描画にも使っているならそこから更に画面解像度に依存した分使える量が減る。 逆に、目一杯cudaMalloc()で確保した状態で画面解像度を上げたりすると面白いことになる。
76 名前:デフォルトの名無しさん mailto:sage [2009/11/06(金) 23:30:47 ] >>73 つかQueryつかってデバイスメモリの上限チェックしないと
77 名前:デフォルトの名無しさん mailto:sage [2009/11/07(土) 00:27:47 ] >>63 ,64 レスありがとう。どうやら、winではディスプレイ出力できるグラボを最低ひとつ積んでないと、 cuda使えないみたいです。つまりTesla単体では動かない。。deviceQueryしても、 there is no device supporting cudaしか返ってきませんでした。倍精度の数値計算したくて Teslaシングルで動かしたいときは、nvidiaの公式が推奨してるようにLinuxでやるのがベスト みたいです。いろいろとありがとうございました〜
78 名前:デフォルトの名無しさん [2009/11/07(土) 03:56:44 ] snow leopardじゃつかえないの?
79 名前:デフォルトの名無しさん [2009/11/07(土) 06:48:09 ] >>74 皮肉のつもりじゃなかったのか。
80 名前:34 mailto:sage [2009/11/09(月) 21:08:31 ] いまだにtemplateのコンパイルもできません。 32bitコンパイルしようとするとlibがないといわれ、 64bitコンパイルしようとするとスキップされる。 人に聞いたら、ソースが32bit用なんじゃないかって言われた。 ちゃんと64bit用SDKインスコしたつもりなんだけど、 64bit用のソースでなかったりするのでしょうか?
81 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 21:49:20 ] >>80 リンカが言うようにlibのファイルがないんでしょ? パスが通ってるか、ファイルがあるかどうかくらい自分でなんとかしなよ。
82 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 22:40:46 ] >>81 レスサンクスです。 でも、>>34 に書いたとおり、32bit用のlibはもともとないんです。 まったく初心者なので、勘違いしてたらすんません。
83 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 22:45:41 ] >>82 それなら、リンカに指定するライブラリをcutil64D.libに変えたらいいじゃん。
84 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 22:55:47 ] >>80 その書き込みから推測するに、出力先にtemplate.exeが存在しているため、スキップされると思われます。 SDKのtemplateをそのまま開いて64bitコンパイルしたいのなら、 出力先のtemplate.exeを削除してからビルドすればスキップされなくなるはずです。 C:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\C\bin\win64\Release\template.exe 私の環境ではこの場所。SDKにはすでにコンパイルされた.exeが入っているはずです。確認してみて下さい。 64bitSDKには32bitのlibが入っていないんじゃないかな?詳しく確認はしていないけれどね。
85 名前:デフォルトの名無しさん mailto:sage [2009/11/09(月) 23:03:07 ] >>83 ,84 ありがとっす〜 試してみます!
86 名前:73 mailto:sage [2009/11/09(月) 23:08:04 ] >>75 、76 どうもです。お返事遅れました。 先週はXPでやってましたが、今日からはFedoraに入れ直し実施してます。 結果ですが、画面が点滅したり、真っ黒になったり、となりました。 復旧には、sshで入ってプロセス消してもだめで、結局rebootで…。 ちゃんとsizeみて使う様にします。 m(_ _)m
87 名前:74 mailto:sage [2009/11/09(月) 23:11:42 ] 済みません。連投です。 >>79 はぃ、 天然ってより、単に英語は苦手です。
88 名前:34 mailto:sage [2009/11/09(月) 23:12:49 ] exe消してもだめでした、、、 つか、なんかソリューションエクスプローラーのところで template.cuを右クリック→プロパティにした時点で、 「操作を完了できませんでした。エラーを特定できません。」 ってなる(´・ω・`)だめぽ リンカへの指定はちょっと勉強してみます。
89 名前:デフォルトの名無しさん [2009/11/11(水) 17:55:34 ] どうにもうまくいかないので質問なのですが short intでGPUにmemcpyしたデータをFFTしたいのですが、 short intのデータをfloatにキャストするには どうしたらいいのでしょうか? int→floatやfloat→intはプログラミングガイドに載っていた通りできたのですが、 short intだとうまくいかないのは何故だろう…?
90 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 18:45:15 ] >>89 何を試したのかよく分かりませんが、short2型をfloat2型に変換する感じがよさそうな。
91 名前:デフォルトの名無しさん mailto:sage [2009/11/11(水) 21:49:44 ] プログラミングガイド読んでたらハァハァ(´д`*)してきた なにこの気持ち(*´д`*)ハァハァ
92 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 17:01:33 ] >>90 おかげさまで出来ました。ほんとにありがとう ちなみに試したのは __int_as_float(int)のような形式のキャストと __int2float_rn(int)のような形式のものです。 どちらもshortをキャストしたり、shortにキャストすることが出来ませんでした。
93 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 17:28:04 ] GPUに型変換するのは遅いと思うのだが。
94 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 20:44:37 ] その通りだな、そこで相当なロスが出ると思う
95 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 23:30:59 ] voidでコピーして、floatのポインタで計算すれば良いんじゃねーの? 何か勘違いしてる?
96 名前:デフォルトの名無しさん mailto:sage [2009/11/12(木) 23:47:32 ] >>91 興奮してるなぁw
97 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 00:31:33 ] int -> floatのキャストなら1命令だからむしろ速いんじゃないのか アライメントは考慮したほうがいいけど
98 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 10:27:25 ] いやだから、gpuでshort -> intはダメだろ。 intで渡しておいて、int -> floatはイントリンシックで。
99 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 10:54:01 ] 別にshortで渡しても問題ないかと。 GPU内でshort -> intの変換をしてから int -> floatの変換が起こりますが、 そんなに頻繁に変換をするわけでなければメモリ転送量の削減効果の方が大きいでしょう。 #32-bitアクセスにするためにshort2型をお薦め。
100 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 11:55:38 ] GPGPUのハードのいいベンダーだか機種だかオススメある? 予算は潤沢にあるとして
101 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 12:11:15 ] NVIDIAのTesla。つーか、Teslaのラック筐体マジお勧め。 漏れなくNVIDIAのサポートがついてくるから。
102 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 12:36:58 ] >>101 CUDAしたいからtesla c1060を搭載した機種を買うのは 当然なんだけど、teslaを組み込んだ ハード全体としてのオススメを知りたいのでした。 ようするにフラクティカだとかELSAだとか爆速だとか、 どこがいいのよっって話です。 teslaのラック筐体ってなに? タワー型じゃなくてユニット型がいいってこと? それともteslaの名を冠したサーバーがあるの? すまんあんま詳しくないんでわからん
103 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 12:53:43 ] HPC用にTeslaC1060相当を4枚入れた、TeslaS1070っていうラック筐体があるですよ。 当然、PC筐体は別途必要。 PC本体なら、QuadroPlex2200S4ってーのがTeslaS1070にマザボをつけたような仕様だったかと。 ラック筐体じゃなければ、QuadroPlex2200D2がタワー型でGPU2枚挿しのPCになる。 NVIDIAの営業曰く、「GeForceなんてアキバ的発想はやめましょう」ということなので。 # GeForceでいいならELSA辺りがリファレンスボードをそのまま使うから安定しているけどね。 ## つーか、QuadroPlex使うような予算があるならソフト開発受注したいぞw
104 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 13:05:58 ] >>103 ありがと〜 調べてみる
105 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 14:48:43 ] www.supermicro.com/products/system/4U/7046/SYS-7046GT-TRF.cfm?GPU=TC4 これ、自分はアメリカで買った。 国内の代理店でも売ってるとこあるよ。
106 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 15:01:35 ] >105のPCすげぇ。TeslaC1060が4台も載っている。なのにVGAはMatrox。
107 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 15:20:48 ] おまえらどんな仕事してんだよ
108 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 15:25:42 ] 自宅の治安を守る仕事
109 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 15:31:22 ] >>106 だってサーバーだから。 すんごくうるさいよこのマシン。標準でリモート管理機能が付いているから、 リモートから電源のON/OFFやキーボード、マウス、VGA、IDEポートの ネットワークリダイレクトができる。 だから管理用IPアドレスだけ設定してサーバールームに入れっぱなし。
110 名前:デフォルトの名無しさん mailto:sage [2009/11/13(金) 21:37:09 ] >>105 国内のページ見つけたけど www.able.across.or.jp/catalog/product_info.php?products_id=2919 スペックが書いてあるようで書いてないような、、、 この値段は一体なんの値段なんだろう
111 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 00:42:44 ] GeForceとQuadroってどう違うんですか??
112 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 00:49:20 ] シールが違う。
113 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 01:02:41 ] >>93-99 色々参考になります。ありがとう とりあえずそれぞれのやり方で試して処理時間比較してみます。
114 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 01:16:16 ] >>110 書いてあるじゃん。 7046GT-TRF-TC4はサーバーのベアボーン。 箱、電源、マザーボード、ドライブエンクロージャ、そしてTesla C1060 * 4だけ。 あとはCPU、メモリ、ハードディスクを買ってきて刺してやれば動くってこと。
115 名前:111 mailto:sage [2009/11/14(土) 01:20:18 ] >>112 それだけですかw ありがとうございました m(_ _)m
116 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 02:51:33 ] >>109 自宅にサーバールームか。アニメみたいww
117 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 03:30:00 ] やはりワレワレはコストパフォーマンスの良いものをと考えて… i7-920、12GB ASUS P6T7 WS nForce200が二個乗り とりあえず GTX275あたりを二枚位かな 1000W電源 これでざっと20万コース?
118 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 04:37:05 ] randってつかえないのですか?
119 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 04:42:01 ] >>114 そっか単純にCPUもメモリもついてないのか 安いわけだ
120 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 05:12:47 ] サーバー用のメモリも安くなってきたから、サーバー用でいいかも。 Kingstonの4GB×3本で$350とかだ。
121 名前:デフォルトの名無しさん [2009/11/14(土) 05:32:24 ] CUDA_SAFE_CALLって必ず必要なのですか?
122 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 05:36:18 ] > nForce200が二個乗り おれの場合、O(n^2)だと、使うメモリ帯域<<計算量で、 x16で有る必要は無いなと思ったよ。
123 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 07:48:22 ] カーネルを実行する際に、引数で、変数を渡すことができますが、多数の数値を配列で渡したい場合、 配列をデバイスにコピーしてから、配列へのポインタを渡すしかないのでしょうか? オーバーヘッドの少ない、数値の渡し方を差がしているのですが・・・
124 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 08:32:24 ] 引数で配列のポインタを渡したって、どっちみちホストメモリ→デバイスメモリの コピーは要るし?
125 名前:デフォルトの名無しさん mailto:sage [2009/11/14(土) 15:41:12 ] すみません、CULAについて質問です。 Red Hat Enterprise Linux 5.3(64bit)に まず、CUDA3.2(ドライバ、ツールキット、SDK)をインストール。 (~/CUDA/ 以下。ツールキットは /CUDA/cuda/bin/nvccのようになっている) その後、CUDA3.2上でCUBLASが動作することを確認しました。(Dgemmを利用) 後に、CULAがあることを知り昨日CULA Basic 1.0をダウンロードし ~/cula/ 以下にインストールしました。 (~/cula/lib64/libcula.so) インストール後表示される export CULA_ROOT="/home/nakata/cula" export CULA_INC_PATH="$CULA_ROOT/include" export CULA_BIN_PATH_32="$CULA_ROOT/bin" export CULA_BIN_PATH_64="$CULA_ROOT/bin64" export CULA_LIB_PATH_32="$CULA_ROOT/lib" export CULA_LIB_PATH_64="$CULA_ROOT/lib64"
126 名前:続き mailto:sage [2009/11/14(土) 15:43:23 ] 以上を実行後、example/geqrf にある、Makefileを用いて make build64 を実行すると、 /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasDtrmv' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasZswap' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasZaxpy' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasCtrmv' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasZtrmv' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasZcopy' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasCgemv' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasCtrmm' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasCtrsm' /home/nakata/cula/lib64/libcula.so: undefined reference to `cublasZtrmm' リファレンスを調べてみると、例えば、cublasにDtrmvが無いように思えます。 これはどのようにすればいいのでしょうか。
127 名前:デフォルトの名無しさん [2009/11/15(日) 15:27:35 ] en_curr_regionがないってエラー出るんで、調べてたらbreakやcontinueのところでエラー出てるっぽいんだけど、CUDAってbreakやcontinueとの相性悪いのだろうか?
128 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 16:54:01 ] 分岐は罪
129 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:02:42 ] 質問です CUDAを使ったプログラムをCUDA toolkitをインストールせずに実行する方法ってありますか?
130 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 20:56:22 ] 試した事はないけど、driverと実行ファイルがあれば出来るだろうな
131 名前:デフォルトの名無しさん mailto:sage [2009/11/15(日) 21:09:53 ] よ〜し、パパ、CUDAを覚えて会社で活躍しちゃうぞ〜!
132 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 01:31:49 ] VCランタイムがあるとして、cudart.dllと、cutil32.dll だけ必要(Win32)。
133 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 01:44:32 ] >>132 それって再配布できるの?
134 名前:デフォルトの名無しさん mailto:sage [2009/11/16(月) 03:58:07 ] cudatoolkitのEULA、cudart.dll はredistributableと書いてあるな CUTILは、cutil.cppの頭に「何の保証もしねぇよ」って書いてある。CUDAとは別で単なるサポート用なのかな。 ていうかcutil32.dllは無くても動くように書けると思う。ソースみたらくだらないぞこれ nVidiaのドライバ入れればCUDAも動く、ようにはまだなってないのかな。