09/05/10 21:24:34
>>657
うーん、CUDAがちゃんと入ったかどうか確認する方法ってありますか?
659:デフォルトの名無しさん
09/05/11 15:35:15
PyCUDAなんてあるのか、おもしろそう
660:,,・´∀`・,,)っ-○◎●
09/05/11 20:57:31
RuCUDAが必要だな
661:デフォルトの名無しさん
09/05/11 21:41:12
>>656
参加したいGPUGRIDがどんなのか分からんが、
もし、倍精度浮動小数点の演算が必要なものなら、
GTX200シリーズじゃないと無理。
ちなみに、モニタがつながっているかPhysX指定がされてないと、
CUDAでデバイス列挙されないぽい。
662:デフォルトの名無しさん
09/05/12 01:29:13
Py損とかルビィとか手続き型スクリプト言語は向かんだろ。
ocamlとか、Earlangとかの関数型言語をGPGPU対応に
した方が御利益は大きいんじゃね?
並列計算の場合、副作用とか、計算の依存関係が有ると
性能出ないんで…。
663:デフォルトの名無しさん
09/05/12 22:31:21
Earlang(笑)
664:デフォルトの名無しさん
09/05/16 00:29:01
統計解析ソフト「R」用のパッケージ「gputools」:
URLリンク(cran.r-project.org)
これのWindows版バイナリを作ってくださるネ申はいらっしゃいませんでしょうか。 m(゚-゚;)カミサマ…
665:デフォルトの名無しさん
09/05/16 10:27:22
>>660
こんなのはあるみたいですが
URLリンク(ruby-opencl.rubyforge.org)
666:デフォルトの名無しさん
09/05/18 17:38:13
GPUの計算部分で
レジスタを多く使っちゃうようにコンパイラで最適化されちゃうんだけど
部分的に無効にする方法はありませんか?
667:,,・´∀`・,,)っ-○○○
09/05/18 20:36:57
volatile
668:デフォルトの名無しさん
09/05/18 23:05:56
>>667
?volatileは最適化から外すだけで、レジスタには適応されるっしょ
つか>>666 のレジスタ使ったら嬉しくない事ってのが想像できない。。。
669:デフォルトの名無しさん
09/05/18 23:42:16
>>648
SPだって年間何億個でも量産できるけど。
>>649
誰も、GPUを何個も用意しろとは言ってない。
670:,,・´∀`・,,)っ-○○○
09/05/18 23:56:12
>>668 volatile __shared__
671:デフォルトの名無しさん
09/05/19 09:21:51
>666の動機によっては__shared__では何の解決にもならないような。
確認していないけれど、恐らくレジスタを使い回さずに消費しまくる方が速いんだろうねぇ。
672:デフォルトの名無しさん
09/05/26 14:36:24
SP2+未公開パッチで7RC以上に軽くなってるよ
Windows Vista SP3 Part1
スレリンク(win板:225番)
673:デフォルトの名無しさん
09/05/26 14:38:56
ゴバーク
674:デフォルトの名無しさん
09/05/29 18:11:27
SSE 4コアフルに使ったら
最上位品でも大差ないw
675:デフォルトの名無しさん
09/05/30 15:06:57
URLリンク(code.google.com)
>Thrust is a CUDA library of parallel algorithms with an interface resembling the C++ Standard Template Library (STL).
676:,,・´∀`・,,)っ-○○○
09/05/30 18:16:26
きた!STLきた!これで勝つる!
ないない
677:デフォルトの名無しさん
09/05/30 21:28:10
brookみたいだな。
678:デフォルトの名無しさん
09/06/02 17:20:15
仮想マシン上でCUDAのインストールに成功した方はいらっしゃいますか?
当方、ホストOS:Vista、ゲストOS:Ubuntu8.04です。
仮想マシンであるUbuntu上で、NVIDIAドライバ: NVIDIA-Linux-x86-180.22-pkg1.runを起動してみました。
すると、「 You do not appear to have an NVIDIA GPU supported by the 180.22 NVIDIA Linux graphics driver installed in this system」とエラーがでました。
GPUは、GeForce 9800 GTです。どなたか、アドバイスお願いします。
679:デフォルトの名無しさん
09/06/02 17:50:02
仮想マシンは無理
680:デフォルトの名無しさん
09/06/03 02:45:20
>>675
合計なんかCUDAでやって早くなるのか?
681:,,・´∀`・,,)っ-○○○
09/06/03 02:49:18
分割統治法は並列化の基本だな
682:デフォルトの名無しさん
09/06/03 10:53:10
合計求めるのは苦労したなぁ。
結局、分割数(128とか256とか)置きに足していって、その結果はPCで足した記憶がある。
683:デフォルトの名無しさん
09/06/03 11:18:35
とりあえず公式の3つをインストールしたのですがTMPGEncで確認できませんみたいなことを言われました。
インストールするだけではcudaの恩恵を与れないのでしょうか?
684:デフォルトの名無しさん
09/06/03 11:31:01
すいません、直ぐ解決しましたorz
クダがちゃんと動いているか確認したいのですが方法はありますでしょうか?
685:デフォルトの名無しさん
09/06/03 11:57:52
>>684
SDKをインストールしたのなら、サンプルもインストールしてビルドしてみよう。サンプルが動けば、大丈夫。
# 特に、deviceQueryは便利。
686:デフォルトの名無しさん
09/06/03 14:12:00
こんにちは。CUDA初心者です。質問があります。
Visual C++ 2008、CUDA tool kit ver2.1、CUDA SDK ver2.1
で、サンプルのsimpleCUBLASをビルドすると、
1>LINK : fatal error LNK1181: 入力ファイル 'cutil32D.lib' を開けません。
と出ます。
そこで、CUDA SDKのlibを調べたところ、
cutil64D.libがあり、32のほうはありませんでした。
この場合、どうすればビルドできるのでしょうか?
687:デフォルトの名無しさん
09/06/03 15:00:01
リリースバージョンをリンクする。
688:デフォルトの名無しさん
09/06/03 16:01:01
リリース構成でビルドしたところ、今度は、
1>LINK : fatal error LNK1181: 入力ファイル 'cutil32.lib' を開けません。
と出ました。
CUDA SDKには、64があり、32はありません。
32と64の違いって一体何なのでしょうか・・・
689:デフォルトの名無しさん
09/06/03 16:17:51
パスが通ってないんだろ
690:デフォルトの名無しさん
09/06/03 17:07:17
OSが64bitだと、32bitのCUDAライブラリはインストールされなかったような。
691:デフォルトの名無しさん
09/06/03 17:07:40
ご回答ありがとうございます。
パスが通っていないということですが、
「パスを通す」について、詳しく説明していただけませんか?
知識不足で申し訳ありません;;
692:デフォルトの名無しさん
09/06/03 17:43:34
環境を名に使ってるかによるが、
Visual Studioだとプロジェクトのプロパティからインクルードするファイルがあるディレクトリのパスと、
libがあるディレクトリのパスをついかする
linuxだとコンパイラのオプションに追加する
詳しくはぐぐれ
693:デフォルトの名無しさん
09/06/03 18:04:37
何度も回答していただきありがとうございます。
リンカの追加ライブラリを調べたところ、
ちゃんと、SDKのcommon/libが指定されてました。
しかし、この中には、cutil32.libではなく、64があります。
ということは、690さんのおっしゃるとおり、
32bitのCUDAライブラリはインストールされなかったということなのでしょうか?
もしそうでしたら、サンプルプログラムは64bitに対応してないが、
自分でプログラムを作る分には、上記のようなエラーはでないということでしょうか?
694:デフォルトの名無しさん
09/06/03 23:53:30
サンプルのリンカ設定を編集して64bitのライブラリをリンクすればいいんじゃね?
695:デフォルトの名無しさん
09/06/04 13:12:53
アクティブソリューションプラットフォームとプラットフォームをWin32からx64へ変更したところ、
エラーがなくなりました。
そのかわり、
1>------ ビルドのスキップ: プロジェクト: simpleCUBLAS ------
1>
========== ビルド: 0 正常終了または最新の状態、0 失敗、1 スキップ ==========
とスキップしてしまいました。
何が原因なのでしょうか・・・
696:デフォルトの名無しさん
09/06/04 18:26:30
threadIdx.xがうまく値を返さなく困っています。
最小のプログラミングだと ちゃんとした値を確認できるんですけど、
規模のあるプログラム書いた物では、threadIdx.xをみると最大でも1000以内の数値が40000を超えていたりします。
かなりラフな書き方していて、グローバル変数使いまくってるのが意見ないのでしょうか?
__device__ kouzoutai[2000];//グローバル変数
とか宣言しまくって搭載メモリーを超えちゃってるかもしれませんが、その時は明確なエラーとか出ますか?
697:デフォルトの名無しさん
09/06/04 19:59:22
エラーは基本的に出ない
698:デフォルトの名無しさん
09/06/05 09:08:24
>>696
threadIdxはプログラムで変更できないと思うが。
どうやってthreadIdx.xを「みる|確認できる」としたのか知らんが、その手段を確認すべきでは?
ptx出力を眺めればthreadIdx.xをコピーした先で壊してたりするのが分かるんじゃない?
グローバル変数にたった2000要素くらいなんてことないと思うが、巨大な構造体でも置いてるの?
あーそれから、メモリをオーバフローしてもコンパイルエラーも実行時エラーも出ないどころか、
突然システムごとフリーズするかもしれないから覚悟しておいてね。
699:デフォルトの名無しさん
09/06/06 17:41:22
>>501
?
∧∧
(´・ω)
_|⊃/(___
/ ヽ_(____/
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
700:デフォルトの名無しさん
09/06/07 01:25:14
寝た子を起こしたなw
701:デフォルトの名無しさん
09/06/08 08:06:10
>>699
!
∧∧
(・ω・ )
_| ⊃/(__
/ ヽ-(___/
 ̄ ̄ ̄ ̄ ̄ ̄
702:デフォルトの名無しさん
09/06/08 20:11:26
あ"
∧∧
(◎ω◎)
_| う/(__
/ ヽ-(___/
 ̄ ̄ ̄ ̄ ̄ ̄
703:デフォルトの名無しさん
09/06/09 23:30:40
>>701
オハヨー!!
∧∧ ∩
(`・ω・)/
⊂ ノ
(つノ
(ノ
___/(___
/ (___/
 ̄ ̄ ̄ ̄ ̄ ̄
704:デフォルトの名無しさん
09/06/10 20:07:54
質問。
グリッド・ブロック・スレッドのカーネル側での計算への応用方法が
よくわからないのですが・・・・特に動きです。
const unsigned int tid =blockIdx.x * blockDim.x + threadIdx.x;
がスレッドIDを示しているというのはわかるのですが・・・
for(int x=0;x<height;x++)
for(int y=0;y<width;y++){
sum=sum+tex2D(tex, x, y)*((float)(cos((M_PI*((x*width+y)+0.5)*tid)/number)));
}
outputdata[tid]=sum;
の中で、tidはどういう働きをしてるんでしょうか?
特に回収する配列であるoutputdataの動きが知りたいです。
わかる方ご教授お願いします・・・
705:デフォルトの名無しさん
09/06/12 04:58:52
>>703
∧,,∧
( `・ω・) ウーム…ここは?
/ ∽ |
しー-J
706:デフォルトの名無しさん
09/06/12 09:52:33
>>704
何が判らんのか判らん。
tidが個別のデータスレッドの番号を指すように働くことが判っているなら、
その番号でoutputdataにアクセスしていることくらい判りそうなもんだが。
仮に、blockDimが4でgridDimが2だとしたら、blockIdxは0か1、threadIdxは0から3になるわけで。
つまりはtidは0から7になるわけだな。
つーか、VIPのWikiにも情報があるよ。
URLリンク(vipprog.net)
707:デフォルトの名無しさん
09/06/13 00:18:28
>>730
カウンター3連打って言うけどスローで見るとカウンター2発に追撃1発って感じ
まあそれでも凄いって言うか、何この異次元映像w
もはや芸術的とか圧倒的とかそういうレベルを超越していて笑いしか出てこないわけだが?www
しかもメディナは立ち上がるしww不死身かwwww
この試合はボクシング以外の何か別の競技だわwwwwwwww
708:デフォルトの名無しさん
09/06/13 00:24:10
誤爆すまそ
俺が代わりに言っといてやったぜ
709:デフォルトの名無しさん
09/06/13 01:35:36
CUBLASに加えてCULAPACKとか用意して欲しい
LU分解もできない環境なんて
710:デフォルトの名無しさん
09/06/13 04:07:09
GPGPUはDirectX11で花開くんだろ。
エンコード高速化対応お待ちしております。
DirectX 11講座(中編)
非ゲーマーのアナタのパソコンも
DirectX 11演算シェーダーでスーパーコンピューターに変身する!
URLリンク(game.watch.impress.co.jp)
GPGPUの場合は、組んだGPGPUプログラムがATIかNVIDIAのどちらかでしか動かない、
踏み絵的な「ATI対NVIDIA」なのだ。
これではGPGPUの進化、発展、普及が望めない。
そこでGPGPUの標準化プラットフォームが強く望まれるようになった。
このGPGPU標準プラットフォームを、Windows環境下で提供しようと出てきたのがDirectX 11ということになる。
DirectX 11は、このGPGPUの標準プラットフォームとして「DirectX Copmute Shader」(演算シェーダー)を提供する。
演算シェーダーでなにができるのか
URLリンク(game.watch.impress.co.jp)
711:デフォルトの名無しさん
09/06/13 08:42:36
>>710
エンコードって意外に並列処理できる箇所少ないんだけど。。。CUDAでどのベンダも対応してこないのはそのため。
Compute Shader出てきても状況は変わらないと気が
712:デフォルトの名無しさん
09/06/14 15:19:59
それマルチ
713:デフォルトの名無しさん
09/06/14 18:56:21
今日本屋見てきたけど
CUDAの入門書とかって無いね。
世の中にはあるのかな。
714:デフォルトの名無しさん
09/06/16 16:56:23
__device__ int particle_position[30][30][50][30];
__device__ int particle_position_num[30][30][50];
:
とか
__device__ __constant__ float K_dWpress;
:
な感じで、結構たくさんグローバル変数をデバイス側に作ってるんだが、
これって、CUDA的にやっていい手法?てか数次元配列ってカーネル関数内で普通のcっぽくアクセスできる?
とりあえずメモリは足りるみたいだから、デバイスホスト間でのデータ転送は基本的にしなくて、
結果のみホスト側に持ってきたいんだけど。
コンパイルエラーはないけど、カーネル起動させたあとエラーが出て、
一瞬画面が消える。
715:714
09/06/16 17:22:05
追記
ちなみに、Emuモードだと問題なく終了できます。
716:デフォルトの名無しさん
09/06/16 17:29:37
>>714
CUDAはメモリ管理なんてしないから、デバイス側の変数がどれだけあるのか自分で把握すること。
一瞬画面が消えるのは表示用とCUDA用を同じGPUでやっている所為だと思われ。
もっと酷いときはフリーズするから要注意で。
717:デフォルトの名無しさん
09/06/16 23:29:13
CUDA初心者です。
サンプルをいじくっているのですが、いくつかわからないことがあり質問させてください。
①テクスチャメモリ
キャッシュが効くからグローバルメモリよりも高速との事ですが、
時間を計ってみるとグローバルメモリと変わらない・・・。
どのような用途で使用するのでしょうか?
②異なるカーネル関数の同時実行
ブロック、スレッド数を決めてカーネル関数を実行しますが、
cudaThreadSyncrinize関数やメモリコピー関数を呼ばなければ
同期待ちはしないですよね?
であれば、カーネル関数を2つ書いたときに同時実行するのでしょうか?
マニュアルを見る限りではできないようですが、会社の先輩が出来るというのでホントかなと。
お分かりの方宜しくお願いいたします。
718:デフォルトの名無しさん
09/06/16 23:32:51
俺も初心者だが。
1. 線形補完できるよ! 速度面で違わないなら、それ以上はどう違うのか知らん。
2. なんか俺の動かしてる感触だと同時実行してる気がする。 少なくともCPUとGPUで同期はしていないよ。
719:717
09/06/16 23:59:21
>>718
サンクス。
①は線形補間機能があるのは存じていますが、
補間せず生データを使用したいものでして・・・。
②は自分でも本家CUDAZONEで調べてみましたが、どうもできないっぽいです。
URLリンク(forums.nvidia.com)
このスレの前にもありましたね。
よく見てませんでした、すみません。
cudaStream~って何のためにあるんだか。
720:デフォルトの名無しさん
09/06/19 00:40:24
CUDAを始めようかと考えていますが、下記の様な処理はCUDAで速くなりますか?
721:デフォルトの名無しさん
09/06/19 00:55:31
function hoge(const b:string):boolean;
begin
result:=true;
end;
722:デフォルトの名無しさん
09/06/19 00:58:07
>>720
すみません、間違えて書き込んでしまいました。
改めて、
typedef struct _table_t {
float x,float y, float z;
} table_t;
typedef sturct _vec {
float vector[4];
} vec;
typedef union _vtemp_t {
vec V[3], table_t data[4];
} vtemp_t;
table_t DATA[100];(DATAにいろいろと情報をが入っている)
vtemp_t temp;
temp.data[0] = DATA[15];
temp.data[1] = DATA[43];
temp.data[2] = DATA[11];
temp.data[3] = DATA[80];
(tempのメンバdataにDATAの値をランダムに代入)
メンバdataがもつ、x、y、z情報をメンバVにx、y、z毎にまとめたいです。例えばこんな感じに。
V[0] = {data[0].x, data[1].x, data[2].x, data[3].x};
V[1] = {data[0].y, data[1].y, data[2].y, data[3].y};
V[2] = {data[0].z, data[1].z, data[2].z, data[3].z};
CellとかSSEならSIMDを使って出来ると思いますが、CUDAでも速くなるなら、
CUDAをやってみようかと思っています。
723:デフォルトの名無しさん
09/06/19 01:25:58
それ計算じゃなくてただのメモリ転送じゃん。 CUDAでやることじゃないよ。
724:デフォルトの名無しさん
09/06/20 14:41:38
Mac でCUDAをやろうとしています。
/Developer/CUDA/lib/にあるライブラリをライブラリのサーチパスに含めるには
どの環境変数を設定すればよいのでしょうか?
LD_LIBRARY_PATHに追加してみたのですが、サーチしてくれません
725:デフォルトの名無しさん
09/06/20 14:43:15
>>724
DYLD_LIBRARY_PATH
726:デフォルトの名無しさん
09/06/20 15:02:09
>>725
早速の回答ありがとうございます。
DYLD_LIBRARY_PATH に追加してみたのですがやはりうまくいきません。
ちなみに-Lで指定すればうまくいきます。
727:デフォルトの名無しさん
09/06/20 18:11:27
Coalesced、Non-Coalescedって簡単にいうとどういうこと?
728:デフォルトの名無しさん
09/06/20 18:14:29
>>108
729:デフォルトの名無しさん
09/06/20 18:18:03
>>728
よくわからん
730:デフォルトの名無しさん
09/06/20 20:19:04
URLリンク(noridon.seesaa.net)
731:デフォルトの名無しさん
09/06/20 21:42:57
大前提として、ブロック内でデバイスメモリにアクセスするアドレスが連続していたら、コアレス。
んで対応アーキテクチャによってスレッド単位でアドレスが連続している必要があったりする。
まぁ簡単に言うと、バス幅有効活用できまっせ適な使い方をイメージすればいいかと。
なんでそのバス幅でアクセスできるアラインを考える事になる。
732:デフォルトの名無しさん
09/06/20 23:08:40
>>726
実行時じゃなくて、ビルド時のリンクのこと?
DYLD_LIBRARY_PATHは関係ないから-Lでやってね。
733:デフォルトの名無しさん
09/06/21 01:03:25
>>726
LIBRARY_PATHでできなかったっけ?
734:デフォルトの名無しさん
09/06/21 06:52:13
配列で最初と最後の変数だけ別の処理をしたいのですが、
どのように書けばよいのでしょうか?
従来のプログラムの場合、配列がa[N]だったばあい、
for(i=1;i<N-1;i++)と書けばよいのですが、
CUDAのカーネルで処理する場合どのようにすればよいのでしょうか?
735:デフォルトの名無しさん
09/06/21 07:45:47
>>734
とりあえず、現状のカーネル書いてくれれば教えやすいのに
736:デフォルトの名無しさん
09/06/21 14:51:04
NVIDIAが配布しているということで、PhysXの質問をさせて下さい。
キネマティックなアクターが物体と接触した時に受ける力の取得方法が分かりません。
ご存知の方がいらっしゃいましたらご教示下さい。
737:734
09/06/21 17:50:38
>>735
例えば、今は
__global__ void test(int thread_size, int one_size, float *res_d)
{
int bx = blockIdx.x;
int tx = threadIdx.x;
int pos = bx * thread_size + tx;
if (pos==0)
res_d[pos] = cos(res_d[pos]);
else
res_d[pos] = sin(res_d[pos]);
}
このように、if文で0とN-1の場合だけ別の処理をするようにしているのですが、if文は遅くなるので、避けたいのですが。
具体的にやりたいのは、3次元の偏微分方程式を解く際の境界条件部分の計算です。
この場合各面、各辺、各頂点合わせてif文が20個以上になってしまいます。
何か良い方法はないでしょうか?
738:デフォルトの名無しさん
09/06/21 18:12:51
>>737
最初と最後だけ別の処理なら、そこはCPUに任せて、
残りをGPUにやらせればいいと思うけど、それじゃだめなん?
posを+1して、並列数をN-2にすればいけそうだと思うけど。
あと、そのソースだと N-1 の処理が別になってない気がするのと、
posがN以上かどうかのチェックが無いのが気になる。
(ソースは単に省略しただけで、チェックはそもそも必要ないように組んでるのかも知れないが)
739:デフォルトの名無しさん
09/06/21 18:53:40
>>737
一般的にアセンブリレベルで分岐をなくしたいときは、こんなテクニックを使ったりする。
// i == Nのときだけsinをcosにする
float s = sin(なんとか);
floac c = cos(なんとか);
int b = i == N; // true が (int)1に変換されることを期待する
return (c * i) + (s * (1 - i));
もちろん3行目は実装依存なので、プロセッサのマニュアル見ながらいちいち確認はした方がいいんだが、
だいたいのプロセッサで使えるテクニック。
740:デフォルトの名無しさん
09/06/21 19:09:54
>>737
それだと全てのパターンでsinとcosの両方が計算されるから
float s = sin(なんとか + b * PI / 2);
にすれば?
741:740
09/06/21 19:11:22
ごめん安価ミスった
>>740は>>739へのレスです
742:デフォルトの名無しさん
09/06/21 19:37:25
CUDAにはsincosねーの?
また三項演算子でいいんじゃねーの?
743:デフォルトの名無しさん
09/06/21 23:01:37
>>737
あらかじめ、特殊条件について位相を補正しときゃいいんじゃないの?と思うのは俺だけ?
744:デフォルトの名無しさん
09/06/22 00:12:40
>>736
PhysXスレがゲーム製作技術にあるからそっち行け
745:736
09/06/22 01:52:13
>>744
誘導ありがとうございます
746:デフォルトの名無しさん
09/06/22 10:53:08
>>742
あるよ。但し、ストリームプロセッサに一個しか超越関数演算機がないから使い方間違うと遅くなるけど。
747:デフォルトの名無しさん
09/06/23 08:26:25
>>746
超越関数演算機なんてハード的に存在したっけ?倍精度演算機じゃなくて?
748:デフォルトの名無しさん
09/06/23 14:47:11
>>747
SFU(Super Function Unit)がある。
ただし、4SPで共有で、>>747のいうように8SPで共有するのは倍精度演算器。
sin()、cos()、tan()は確かに遅いけど、
sinとcosについては__sinf()と__cosf()を使えば、
精度は悪くなるけど1op/clockでできる。
除算以外の算術演算が8op/clockでできることを考えたらそれでも遅いことには変わりないけど。
749:デフォルトの名無しさん
09/06/23 15:22:26
超越関数がレイテンシ1なんて凄いね
SFUだけ100倍のクロック数とか
してるのかなぁ
750:デフォルトの名無しさん
09/06/23 18:30:15
URLリンク(www.khronos.org)
OpenCL 1.0 リリース
751:デフォルトの名無しさん
09/06/23 18:36:49
First OpenCL demo on a GPU
URLリンク(www.youtube.com)
752:デフォルトの名無しさん
09/06/23 18:43:26
URLリンク(www.nvidia.com)
ドライバ一式は登録しないといけないようだ
753:デフォルトの名無しさん
09/06/23 21:47:02
>>748
SFUなんてあったのか、しらなかった。DPみたいに実行はSPと並行してできるのかな?
754:デフォルトの名無しさん
09/06/24 07:13:15
やっとFortran対応の話出てきたけど、有料なんかね
PGI and NVIDIA Team To Deliver CUDA Fortran Compiler
URLリンク(eu.st.com)
755:デフォルトの名無しさん
09/06/24 07:18:14
ていうかいつのまにかに2.3のベータ出てたのか
756:デフォルトの名無しさん
09/06/26 12:01:06
GTX 285でようやくおれのようなへっぽこでも普通にcpuを凌駕するコードが書けるように
なったようだね。
後は(値段はともかく)消費電力が下がってくれれば、大ブレイクしそう。
757:デフォルトの名無しさん
09/06/27 12:19:52
300Wなんてクアッドコアマシンを4台くらいクラスタリングしたような消費電力だからな
758:デフォルトの名無しさん
09/07/01 03:13:56
>おれのようなへっぽこでも普通にcpuを凌駕する
だったらCPU要らんがな。
むしろCPU<->GPU間の通信がボトルネックなので、CPU無くして
GPUに直接I/O繋げられるようにしろや!
759:デフォルトの名無しさん
09/07/01 21:14:50
>>758
それなんていうTesla?
760:デフォルトの名無しさん
09/07/01 23:30:38
>>759
それTeslaでもない。
761:デフォルトの名無しさん
09/07/02 07:45:08
CUDAで乱数を効率的に生成する方法を教えてください
762:デフォルトの名無しさん
09/07/02 09:23:34
>>761
コアごとに違う種から乱数生成すればいいんじゃね?
763:デフォルトの名無しさん
09/07/03 00:25:57
質問なんですが、SDKに付いてたサンプルをmakeしようとしたところ
以下のようなエラーが出てうまくいきません、何か足りないものがあるのでしょうか
/usr/bin/ld: cannot find -lXi
collect2: ld はステータス 1 で終了しました
make[1]: *** [../../bin/linux/release/nbody] エラー 1
OSはfedora10です。色々初心者なのでどうかお願いします。
764:デフォルトの名無しさん
09/07/03 00:52:49
libXiというパッケージをインストールできないかね
俺もfedoraはよく記憶にないんだが
765:デフォルトの名無しさん
09/07/03 07:55:20
>>764
libXiというのがインストールされていないということだったのですか
早速インストールしたいと思います。どうもありがとうございました。
766:デフォルトの名無しさん
09/07/05 04:21:12
teslaとgeforceって何が違うの?
767:デフォルトの名無しさん
09/07/05 05:03:33
OpenGL向けかDirectX向けか
768:デフォルトの名無しさん
09/07/05 10:40:00
>>767
それquadroとgeforceでしょ。
>>766
teslaはhpc専用ボードで、ディスプレイの出力ポートがない。
NVIDIAがボードの製造まで一貫して行ってて、テストもしっかり通している…らしい。
あとメモリが4GB乗ってる。
769:デフォルトの名無しさん
09/07/06 09:01:42
CUDAというよりハードウェアの話なんですが質問させてください
TESLA C1060をMM3500に刺したいんですが、この状態だとBIOSが拝めません
ビープ音「-・・(長短短)」って音がするんでAwardで調べたらビデオアダプタ不良らしい
マザーボードだけを他のに変えたら正しく起動するので、電源やTESLAが悪いわけではなさそうです
TESLAなしのMM3500だけならUbuntuのBoot CDからMemtestが走るとこまで行きました
770:デフォルトの名無しさん
09/07/06 09:34:48
スレ違いどころか板違いだ
判ってるなら該当板いけよ
771:デフォルトの名無しさん
09/07/06 22:26:16
>>769
買ったとこに聞いた方が良いかと...
772:デフォルトの名無しさん
09/07/07 00:46:08
>>772
ありがとう まずはVIAにメールしてみます
773:NVIDIAの営業の受け売りw
09/07/07 09:05:04
・GeForce
NVIDIAはパーツ選択にはノータッチ。各社さんが勝手に安い部品を積んでいるから動作しなくても当然。
プロならそんなアキバ的発想はやめて、QuadroFXかTeslaを使ってください。
・QuadroFX
NVIDIAの厳しいテスト基準に合格した高品質の出力を保証しているから決して安くありません。
プロにも安心してお使いいただけます。
・Tesla
QuadroFX以上に品質に重点を置いてテストを行なっています。HPCにはこれ以外の選択肢はありえません。
774:デフォルトの名無しさん
09/07/07 09:07:57
>>768
OpenGL向けもDirectX向けもないよ。>773にもある通り、NVIDIAがテストしているかどうかの違い。
なんせ、GeForceの製造販売を行なっているELSAの営業の前で堂々と>773みたいなことを仰ってる。
10倍の価格差も、当然ということなのでしょう。
775:デフォルトの名無しさん
09/07/07 22:07:57
そりゃカノプーが手を引くわけだよな
どうしたってGeForceは価格競争になっちまう
776:デフォルトの名無しさん
09/07/08 00:28:37
不特定多数の客向けのプログラムでGPGPUを使うコードを書くやつはアホウ、ってことだな。
777:デフォルトの名無しさん
09/07/08 06:57:16
全てアホウと決め付けるのはねぇ
中には超やばいものを開発するかもよ(世界は広い)
特にロシア東欧は要注意!
778:デフォルトの名無しさん
09/07/09 00:40:40
>>777
アホウと言っているのが、nVIDIAの営業ってことだよ。
779:デフォルトの名無しさん
09/07/11 00:02:30
「阿呆」とは言わなかったけれど、「動かなくても当然ですから」くらいのことは言ってたなぁ。
780:デフォルトの名無しさん
09/07/11 00:17:01
今月末に CUDA2.3 が出るとさ。
PGI compiler 9.0 は2週間体験できるから、Fortran で単純な行列積の
コードを書いて試してみたけど、Core2 Quad + GeForce9800GTX で
CUDA 2.0 という古い組み合わせのせいか,
!$acc region の設定の効果が全く現れなかった。
pgf95 -ta=nvidia:cc11 matrix.f
というコマンドでいいと思うんだけど。
781:デフォルトの名無しさん
09/07/11 19:31:18
CUDA用の姫野ベンチをGTX285で実行しようとしたのですけど動きませんでした。
何が原因かわかりません、どなたかわかる方いらっしゃいましたらお願いします。
782:デフォルトの名無しさん
09/07/11 20:08:49
原因はわかりますが、何をお願いされているのかわかりません。
783:デフォルトの名無しさん
09/07/11 21:19:47
その原因について詳しく教えて頂きたいのですが
784:デフォルトの名無しさん
09/07/11 22:37:16
>>783
原因なら簡単ですよ。
あんたが人間じゃなくて人だからです。
785:デフォルトの名無しさん
09/07/11 23:13:59
動くかどうかも保障してないものが普及するとか思ってるのか?
786:デフォルトの名無しさん
09/07/11 23:20:06
>>785
>779のことを言っているのなら、QuadroFXとTeslaがあるから大丈夫だと思っている
頭に蛆が涌いているとしか思えないNVIDIAの営業に言ってあげてください。
無駄だけどw
787:デフォルトの名無しさん
09/07/15 19:53:47
visual profilerについて質問です
プロファイラの項目GPUTimeを見ると全体で3000くらいなのですが、
プログラム中で cutCreateTimer( &timer) を使って計測すると 18ms~60msのバラけた値が出ます
これってどちらが正しい値なのでしょうか?
788:デフォルトの名無しさん
09/07/15 21:31:07
>>781
バイナリのCUDA SDK1.1だからだろ
789:デフォルトの名無しさん
09/07/15 23:02:02
>>787
cutCreateTimer()の実装を見てみた?
790:デフォルトの名無しさん
09/07/20 19:00:37
Fixtarsの資料面白いね、祝日に更新ご苦労さんだわ
この調子で本家資料全部訳してくれないかなw
URLリンク(gpu.fixstars.com)
791:デフォルトの名無しさん
09/07/22 08:05:55
2.3来たね、やっと64bit版で32bitコンパイルできるようになった
792:デフォルトの名無しさん
09/07/23 13:44:49
Mac版の2.3.0ドライバーインストールしてみたら、一回目libcuda.dylibだけ入らなかったことに気付かなくて、全然見当違いの所で原因探してて苦労したよ。
一発で入るようにしてください、nVidia様
793:デフォルトの名無しさん
09/07/25 22:10:54
URLリンク(www.nv-info.com)
20年前の高校生は参加しちゃダメかな?
794:デフォルトの名無しさん
09/07/25 22:13:36
Teslaプレゼントしろよ
相変わらず一貫してないな
795:デフォルトの名無しさん
09/07/26 23:27:14
CUDAで動くトリップ検索ツール頂ける方いらっしゃいませんか
796:デフォルトの名無しさん
09/07/27 00:50:11
ノシ
797:デフォルトの名無しさん
09/07/27 03:25:45
【レポート】中高生がCUDAにチャレンジ! NVIDIAがGPUコンピューティングの体験イベント開催 | パソコン | マイコミジャーナル
URLリンク(journal.mycom.co.jp)
798:デフォルトの名無しさん
09/07/27 10:10:10
>>795
あれ?まだ誰も作ってなかったの?
799:デフォルトの名無しさん
09/07/27 10:43:20
あと6年早ければ・・・
800:デフォルトの名無しさん
09/07/27 11:08:28
>>798
らしいです
801:デフォルトの名無しさん
09/07/27 22:53:08
じゃぁ俺が作るか。
まずはCUDA無いバージョンのソースがあるURL教えてw
802:デフォルトの名無しさん
09/07/28 00:02:52
まあ、待て屋。
803:デフォルトの名無しさん
09/07/28 00:07:41
>>802
それはラデ用のしかなかったような…
804:デフォルトの名無しさん
09/07/28 00:11:46
CUDA無しを所望のようだからこれで良くね?
CPU用のコードも当然あるよ。
805:デフォルトの名無しさん
09/07/28 00:17:31
>>804
nVIDIAのVGAしか持ってないんだorz
806:デフォルトの名無しさん
09/07/28 00:22:33
>>805は>>795か?
俺は>>801に向けて書いたんだが・・・
807:デフォルトの名無しさん
09/07/28 00:26:42
>>806
あ、はい。
俺は>>805であり、>>795です。
ID出てないと面倒だね
808: ◆hEpdoZ.tHU
09/07/28 06:51:10
>>807
トリップ使ってけれw
809: ◆DokuomoeW.
09/07/28 16:50:48
>>808
おk
>>807です
810:,,・´∀`・,,)っ-○○○
09/07/29 21:19:39
Larrabee向けのソースコードなら多分あるんだがwwwww
811: ◆DokuomoeW.
09/07/30 12:59:13
まだ手元にある定額給付金で
ラデ買ってくるかな…
それも一つの選択肢
812: ◆DokuomoeW.
09/07/31 21:10:00
かつてTripcode ExplorerのCUDA版があったらしいね
でも、今はもう消えてる…
813:,,・´∀`・,,)っ-○○○
09/07/31 21:52:43
ギコハハハ
814:デフォルトの名無しさん
09/07/31 22:14:27
>>812
がはは!それはネタだからーw
815: ◆DokuomoeW.
09/07/31 23:11:08
>>814
そうなんだwwwwww
816:,,・´∀`・,,)っ-○○○
09/07/31 23:31:10
ふふふ
817:デフォルトの名無しさん
09/08/01 05:48:13
あらあらふふふ
818:デフォルトの名無しさん
09/08/01 07:37:39
これでいいじゃん
URLリンク(tmkk.hp.infoseek.co.jp)
819:デフォルトの名無しさん
09/08/02 20:49:45
300Wも消費する物体を数週間動かすとは恐ろしいw
820:デフォルトの名無しさん
09/08/03 07:25:23
shared memoryって,CPUで言うL1キャッシュみたいなもん??
821:デフォルトの名無しさん
09/08/03 08:04:31
>>818
これって使うとどれくらい寿命減るの?
作った人って絶対に高負荷かけて石を壊そうとしてるよね・・・
822:デフォルトの名無しさん
09/08/03 15:36:31
>>821
なにいってるの・・・
まあたしかにファンがクソだと熱で死ぬ可能性はあるが
823:デフォルトの名無しさん
09/08/04 03:54:01
>>820
大分違う。つーか、CPUとは考え方を変えないと使いこなせないよ。
824:デフォルトの名無しさん
09/08/04 10:08:33
>>820
CPUで言うレジストリみたいなもんだ
825: ◆DokuomoeW.
09/08/04 13:52:22
>>818
for Macだ…と
826:,,・´∀`・,,)っ-○○○
09/08/04 21:07:21
Windows用に直せるだろこんなん。(と言ってやらない)
827:,,・´∀`・,,)っ-○○○
09/08/04 22:06:06
Vistaだと困ったことに、描画に支障ない程度に負荷調整しないとAeroが死ぬwww
828:デフォルトの名無しさん
09/08/08 22:45:00
だれかトリップ生成のアルゴリズム説明して?
趣味でCUDA処理のコード書いてみたいからー
>>818のコード読めって話だけど、ハッシュとか暗号系はアルゴリズム知ってないと、時間かかるんでお願いします。
829:デフォルトの名無しさん
09/08/08 23:22:43
309 名前:◆cZfSunOs.U []: 2009/06/19(金) 11:46:10 ID:MLNb4KfK0 (17)
生キー指定以外の12桁以上「##~」形式も将来の拡張用にしておきましょう.
で,まとめ:
if (length $handle_pass >= 12)
{
my $mark = substr($handle_pass, 0, 1);
if ($mark eq '#' || $mark eq '$')
{
if ($handle_pass =~ m|^#([[:xdigit:]]{16})([./0-9A-Za-z]{0,2})$|)
{
$GB->{TRIPSTRING} = substr(crypt(pack('H*', $1), "$2.."), -10);
}
else
{
# 将来の拡張用
$GB->{TRIPSTRING} = '???';
}
}
else
{
use Digest::SHA1 qw(sha1_base64);
$GB->{TRIPSTRING} = substr(sha1_base64($handle_pass), 0, 12);
$GB->{TRIPSTRING} =~ tr/+/./;
}
}
else
{
# 従来形式
}
830:デフォルトの名無しさん
09/08/08 23:23:28
インデント消えたorz
831:デフォルトの名無しさん
09/08/08 23:25:49
Kernel用のCRYPTを自前実装しないといけないのか・・
832:,,・´∀`・,,)っ-○○○
09/08/09 00:05:13
C++用のコード晒してみる。これは実際に某ツールで使ってる。
char* trip_sha1(const char* key) {
SHA1Context sha1;
SHA1Reset(&sha1);
SHA1Input(&sha1, reinterpret_cast<const uint8_t*>(key), std::strlen(key));
uint8_t digest[SHA1HashSize];
SHA1Result(&sha1, digest);
static char cryptresult[13]; /* encrypted result */
static const char base64mod[] = /* 0..63 => ascii-64 */
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789./";
cryptresult[0] = base64mod[digest[0] >> 2];
cryptresult[1] = base64mod[(digest[0] << 4 | digest[1] >> 4) & 0x3F];
cryptresult[2] = base64mod[(digest[1] << 2 | digest[2] >> 6) & 0x3F];
cryptresult[3] = base64mod[digest[2] & 0x3F];
cryptresult[4] = base64mod[digest[3] >> 2];
cryptresult[5] = base64mod[(digest[3] << 4 | digest[4] >> 4) & 0x3F];
cryptresult[6] = base64mod[(digest[4] << 2 | digest[5] >> 6) & 0x3F];
cryptresult[7] = base64mod[digest[5] & 0x3F];
cryptresult[8] = base64mod[digest[6] >> 2];
cryptresult[9] = base64mod[(digest[6] << 4 | digest[7] >> 4) & 0x3F];
cryptresult[10] = base64mod[(digest[7] << 2 | digest[8] >> 6) & 0x3F];
cryptresult[11] = base64mod[digest[8] & 0x3F];
cryptresult[12] = 0;
return cryptresult;
}
833:デフォルトの名無しさん
09/08/09 00:36:34
sh1のCUDA版くらいありそうだけど
834:828
09/08/09 00:38:07
ご両人、コードさんくす~
実はC住人なんで(汗
蛇足だが関数内のstaticの使い方が気持ち悪いです(笑
さー昔しらべたSHA-1の資料でもひっぱってくるかー
835:,,・´∀`・,,)っ-○○○
09/08/09 01:53:23
オリジナルのcrypt(3)でもchar配列はstaticでとってるんだよな
たしかにキモイ
std::stringとか使ってみ?
CUDAに移植できへんで?
836:デフォルトの名無しさん
09/08/09 01:56:33
笑えるくらいきれいなワンツーw
837:デフォルトの名無しさん
09/08/09 01:57:37
ごば
838:デフォルトの名無しさん
09/08/09 13:04:04
CUDAでrandは使えない?
839:デフォルトの名無しさん
09/08/09 13:11:14
>>838
使えないよ。自分で用意しないと。
840:デフォルトの名無しさん
09/08/09 13:25:21
CUDA上でのSHA1の実装というとこのあたりか?
URLリンク(forums.nvidia.com)
841:デフォルトの名無しさん
09/08/10 22:49:48
r0,g0,b0,r1,g1,b1,r2,....
というようなグローバルメモリにあるchar型の配列に対して、GPU側からuchar4型変数で
{r0,g0,b0,r1} {r1,g1,b1,r2},....
というようにアクセスすることは可能でしょうか?
842:デフォルトの名無しさん
09/08/11 01:04:40
y*4+x
843:841
09/08/11 01:59:08
あーこれじゃ駄目だった
ごめんなさい、忘れてください
844:828 ◆TripEQ.VNLIV
09/08/11 21:13:55
だめだー
SHA1と総当り攻撃じゃ現実的じゃない。。。
4桁適合ならまだ使える感じorz
845:デフォルトの名無しさん
09/08/21 13:47:21
誰かRADEON HD48xx向けのCUDAドライバ開発してないの?
846:デフォルトの名無しさん
09/08/21 14:23:41
>>845
どちらかというと
AMD Accelerated Video Transcoding(AVT)
では?
847:デフォルトの名無しさん
09/08/21 16:05:07
いや、CUDA互換機能つけて
CUDA対応ソフトを使えるようにならんかなーと。
848:デフォルトの名無しさん
09/08/21 17:49:44
>>847
OpenCLじゃだめですか?
849:デフォルトの名無しさん
09/08/21 17:50:52
ラッパー作ってくれるならいいけど・・・
既存のソフトでCUDAにしか対応してないやつとか
CUDA以外の開発環境が整わなさすぎて、見切り発車でCUDA使いたいなとか
あるんで。
850:デフォルトの名無しさん
09/08/21 18:44:14
CUDAってOpenCL取り込んでたような……気のせい?
851:,,・´∀`・,,)っ-○○○
09/08/21 20:13:56
CUDAは環境。
OpenCLは言語・フレームワークで、CUDA向けのプログラムを記述出来る物のひとつ。
従来の「CUDA言語」は "C for CUDA" という扱いになった。
852:デフォルトの名無しさん
09/08/21 20:36:51
x64でCUDAをしようと思ったんだけど,vitual studioでプロジェクトが作れない.
CUDA_VS_Wizard_W64.2.0を入れて,
CUDA64WinAppはテンプレートとして表示されるようになったが,
選択してもうまく生成されない.
CUDAWinApp(32bit)の方はうまく生成される.
64bitで開発してる方や,
症状の原因がわかりそうな方,ご教授願う.
853:デフォルトの名無しさん
09/08/21 21:00:40
おっと,自己解決.
スレ汚しスマソ.
854:デフォルトの名無しさん
09/08/21 23:07:09
>>853
いや、教えてよ(笑)
855:デフォルトの名無しさん
09/08/23 20:28:04
共有メモリのBank Conflictがいまいちわからないのですが、
同じ配列のアドレス(添え字)に複数のスレッドが同時にアクセスしなければいよいのでしょうか?
856:デフォルトの名無しさん
09/08/26 07:21:12
最近のマザボってPCIEx16が普通に2,3個あるよな
ところで違う世代のGeForce9800、GTX280とかを積んだ場合
CUDAはどちらのGPUも使ってくれるの?
857:デフォルトの名無しさん
09/08/26 09:24:02
>>856
CUDAはGPUチップを一つだけしか使えない。
どれを使うかは、cudaSetDevice()で指定しないといけない。
サンプルの、MultiGPUを参照のこと。
858:デフォルトの名無しさん
09/08/26 18:32:52
ということは,
最近のグラボ一枚にGPUが2つ積んであるヤツでも,
GPUを指定してやらないといけないのか.
859:デフォルトの名無しさん
09/08/26 18:39:49
そそ、しかも1スレッド1GPUに拘束される。
860:デフォルトの名無しさん
09/08/26 19:17:17
>>858
未確認だけど、SLIの場合はドライバで1つのGPUに見せかけるらしい。
2チップを積んでいるカードは内部でSLI接続されているらしいし、
1デバイスの場合と同じでもいいかもしれない。
861:デフォルトの名無しさん
09/08/26 23:51:13
SLIとCUDAは同時使用できないとかじゃないのか?
862:デフォルトの名無しさん
09/08/27 00:10:58
URLリンク(forum.nvidia.co.jp)
* SLIグループ内の各GPUは個別に列挙されるようになったため、
計算アプリケーションはSLIがグラフィックス向けに有効になっている
場合でも、マルチGPUの性能を活用することができます。
と、リリースノートにはあるね
863:デフォルトの名無しさん
09/08/27 00:25:41
>>862
2.3からはSLIの場合でもCUDAからは個別に見えるように変更なのか。
SLIでゲームの中でPhysXとかCUDAを使う場合とかは特定のチップに負荷が集中して
そのせいで利用効率が落ちたりしないのかな?
864:デフォルトの名無しさん
09/08/27 01:23:53
プログラマが生理整頓するか,
CUDAさんよろしくお願いしますするか,どっちがいいかってことか.
でも,一度の演算に対して,1コアにスレッドが重複しない限りは,
無駄に複数のGPUに処理を分配する必要性はないよな.
演算の命令ごとにGPUを切り替えるなら,効果はありか.
SLIの場合って,GPUのRAMは共有されるのか?
>>859
GPUはGPU内の大量のコアがそれぞれ1スレッドずつ受け取る仕組みじゃないのか?
1スレッド1GPUって並列演算ってレベルじゃねーぞ.
865:デフォルトの名無しさん
09/08/27 03:53:53
>>864
「スレッドを受け取る」っていう意味がわからんのだが。
CPUの1スレッドがGPU1個使って、そのGPUが複数スレッドを実行する。
866:デフォルトの名無しさん
09/08/27 04:59:54
>>865
CPUのスレッドなのね.
スレッドのことをGPUのハードウェアスレッドかと勘違いしてた・・・orz
867:デフォルトの名無しさん
09/09/01 18:44:53
CUDAがでてきた2005年当時は、シングルコアの限界も見えてきて、それなら
有り余るグラフィックボードの性能を、3Dレンダリングや、フォトショップフィルタなど、ゲーム以外にも有効活用と歌ってたけど
あれよあれよという間に、インテルCPUがマルチコア化してきて、そっちの方が上記の用途に、大きな効果があり、メインになってきて、
結局グラフィックボードは、結局またGPUはゲーム以外に用なしになったなw
868:デフォルトの名無しさん
09/09/01 19:21:06
U-BASICってバージョンアップしないの?
869:デフォルトの名無しさん
09/09/01 19:38:01
>>867
コンシューマーはそうかもしれんけど、エンタープライズはまた少し違うんじゃない?じゃなきゃNVIDIAもTESLAなんて作らんよ。
870:デフォルトの名無しさん
09/09/01 20:10:53
ああシールの貼り替えで10倍の金を取るために始めたアレか
871:デフォルトの名無しさん
09/09/01 23:00:56
>>870
本気でそう思ってるなら偏狭すぎる。少しは頭使えよ
872:デフォルトの名無しさん
09/09/02 00:04:27
>>869
むしろ、nVIDIAはTESLA以外作りようが無かったんでしょ。
だってCPU作れないんだもん。
873:デフォルトの名無しさん
09/09/02 02:29:04
NVIDIA は、2009年8月17日、業界標準の線形代数ライブラリ、LAPACK を、超並列処理の NVIDIA CUDA 対応 GPU に最適化した実装「CULA」のベータ版が EM Photonics 社からリリースされたと発表した。
LAPACK ルーチンは何百万人もの開発者が活用し、数値物理学、構造力学、電子設計オートメーションなどさまざまな問題の解決に役立てられている。
CULA により、ワークステーションやデータセンターで使われている NVIDIA Tesla GPU の力を活用し、クアッドコア CPU 1個の場合でパフォーマンスを最大10倍に引き上げることが可能になるとされる。
EM Photonics には、CULA Basic、CULA Premium、CULA Commercial からなる CULA tools という製品ファミリがある。CULA ライブラリとは、LAPACK ルーチンの実装の1つで、GPU の能力を活用して高速に処理が行えるようにしたもの。
LAPACK というのは線形代数でよく使われる関数の集合体で、科学分野や工学分野で活用されている。科学分野や工学分野の問題は線形モデルで近似できることが多いため、線形代数ルーチンで解が得られる。
CULA は、NVIDIA GPU が持つ超並列 CUDA アーキテクチャを活用し、LAPACK ルーチンの多くを高速で処理できる。
874:デフォルトの名無しさん
09/09/02 08:05:49
>>872
それ以外作りようがなかったからって…事前事業でやってるんじゃないんだぞ?「しょうがなくTESLA作る」とかありえないんだよ。純粋に、戦略的なマーケティングの結果だろ。
875:デフォルトの名無しさん
09/09/02 08:10:12
>>874
× 事前
◯ 慈善
876:デフォルトの名無しさん
09/09/02 09:31:55
戦略的なマーケティングの結果、マザボは作れてもCPUは作れないNVIDIAは仕方なしに、
TESLAをでっち上げたわけですね、判ります。
877:デフォルトの名無しさん
09/09/02 12:41:59
CPUは作れないってどういう意味で言ってるんだろ
x86互換プロセッサなんて作れるところはいくらでもある
ただライセンスの問題なダケ
あとはマーケットな
878:デフォルトの名無しさん
09/09/02 12:46:20
x86互換プロセッサぐらいなら大学の授業でFPGAに実装したことあるぞ
879:デフォルトの名無しさん
09/09/02 12:51:56
互換なんてダレでも作れるべ
性能はムリだが
880:デフォルトの名無しさん
09/09/02 12:58:32
DXCSがくるからCUDAはもういらないかもー
881:デフォルトの名無しさん
09/09/02 12:59:56
作るだけならVIAにだってできる
882:デフォルトの名無しさん
09/09/02 13:07:09
↑↑お前出来ないだろw
883:408
09/09/02 14:49:32
NVIDIAってCUDA捨てたん?
ここ1年ぐらい見る限りすげーやる気なさそうなんだけど。
884:デフォルトの名無しさん
09/09/02 15:18:52
捨ててないけどやることないだけだろ
885:デフォルトの名無しさん
09/09/02 17:51:42
今はOptiXに期待
886:デフォルトの名無しさん
09/09/02 18:43:14
URLリンク(news.developer.nvidia.com)
おまいら,
9月30日以降に期待ですよ.
887:デフォルトの名無しさん
09/09/02 21:10:27
CUDAで最適化したいプログラムに条件分岐満載で
実際の演算部分がほとんどなくてDate並列化できそうもないときって
あきらめるしかないのかな・・・。
888:,,・´∀`・,,)っ-○○○
09/09/02 22:49:22
URLリンク(www.atmarkit.co.jp)
Fixstarsのエンジニアからの有り難い言葉
889:デフォルトの名無しさん
09/09/02 23:43:18
条件分岐でシーケンスを発生させる事そのものが目的でなけりゃ、
何か手はあるんでないの?
何しようとしてるか知らんけど、今使ってるアルゴリズムに以外に
GPU向きの手がないか調べてみたらいいんでない?
890:デフォルトの名無しさん
09/09/03 15:42:37
やっぱりx86コアが100個も200個もあるほうがいいんじゃね?
891:デフォルトの名無しさん
09/09/03 17:29:08
>>889
なるほど
もっとソースを読んで見るよ。
あとCUDAについてのオススメの文献あるかな?
892:デフォルトの名無しさん
09/09/03 21:47:44
>>891
GPU Gems3。訳本はアホみたいに高いが、英語でよければネットで公開されてる。途中までだけど。
893:デフォルトの名無しさん
09/09/03 21:52:19
>>890
そりゃそうかもしれんが、コスト見合わんだろ。
894:,,・´∀`・,,)っ-○○○
09/09/03 22:31:48
x86のほうが性能マシな演算用途こそ、GPUが何百台あってもコスト的に見合わないんじゃないかと
895:デフォルトの名無しさん
09/09/03 22:43:05
>>892
thx
でかい書店いって立ち読みして検討するかな。
>>894
そうとも限らない。
32bit単精度浮動小数点を扱えるプロセッサが数百個あるわけで、
プログラムの仕方によっては高速化する。
まあ向き不向きがあるのは事実だし、どっちが良いとは決め付けられない。
896:,,・´∀`・,,)っ-○○○
09/09/03 22:47:43
向き不向きでいえばGPUに向いてない(というか使うことすらできない)演算の方が圧倒的に多い。
897:デフォルトの名無しさん
09/09/04 01:37:54
円周率の計算とかに使えればいいじゃん。
898:,,・´∀`・,,)っ-○○○
09/09/04 02:08:24
なにそれ誰が得するの?
899:デフォルトの名無しさん
09/09/04 02:10:35
円周率を100万桁まで暗記してる人が、あれ?次なんだったっけって言って調べられる
900:デフォルトの名無しさん
09/09/04 05:48:21
GPUが今後発展するなら、GPUに向いたアルゴリズムが開発されてくるでしょう。
でも、普通のCPUが高速化してくるので、結局特定の分野しか使えないのかもね。まさにハードウェアアクセラレータ。
901:デフォルトの名無しさん
09/09/04 16:30:49
全く依存性がなく並列に計算できるものに向いてるんだっけ?
あんまり計算用途には向いてない気もするんだけど。
902:デフォルトの名無しさん
09/09/04 17:05:27
実際高速化されてるものもあるんだし、得している奴はいるだろ
903:デフォルトの名無しさん
09/09/04 17:31:22
粒子法では,GPUかなり美味しいです^^
904:デフォルトの名無しさん
09/09/04 17:34:46
画像や文字のパターンマッチングにもそれなりに使えるよ。
905: ◆TripEQ.VNLIV
09/09/04 21:24:41
実は一般ユーザーが恩恵を受ける事はほとんどない事実。。。
906:デフォルトの名無しさん
09/09/04 22:19:54
ATI臭くなってきたぞ,このスレ
907:デフォルトの名無しさん
09/09/05 01:41:57
ATIのGPUでCUDAが使えるならともかく使えないのに、
なぜかCUDAスレでATIの話題がされる不思議。
908:デフォルトの名無しさん
09/09/05 04:37:45
ATOM330搭載PCでCUDAなグラボを付けたら幸せになりますか?
909:デフォルトの名無しさん
09/09/05 05:32:50
>>908
気持ち次第です。
910:デフォルトの名無しさん
09/09/05 07:55:02
NVIDIAへの財務次第です
911:408
09/09/05 09:50:44
あきらかに落ち目でしょNVIDIA