- 805 名前:名無しさん@お腹いっぱい。 mailto:sage [2009/03/11(水) 10:01:18 ]
- >>803
GotoBlasを入れて15GFlopsにしても、一部のプログラムでGotoBlas+Cygwin版が 2GFlopsのMSVC版よりも極端に遅い事があったのです。それで調べてみました 行列のベクトル積 MSVC octave:1> A=randn(100);tic;for jj=0:1000;C=A*A;end;toc Elapsed time is 0.938295 seconds. Cygwin octave:1> A=randn(100);tic;for jj=0:1000;C=A*A;end;toc Elapsed time is 0.25 seconds. Cygwinの方が4倍ぐらい速いしループのオーバーヘッドはほとんど無い 比較処理 MSVC octave:2> A=randn(100);tic;for jj=0:10000;B=(A>0)*1;end;toc Elapsed time is 1.797 seconds. Cygwin octave:2> A=randn(100);tic;for jj=0:10000;B=(A>0)*1;end;toc Elapsed time is 40.28 seconds. Cygwin版は比較処理が致命的に遅い! 一部の関数計算に比較処理を使うのですが、これが遅いと非常に困るんですよね そういう意味でMSVC版のリリースは続けて欲しいのでう感じなのです。 それと自前でBuildしたlibgoto.dllを使えるようにして欲しいですね。 ちなみにMatlabだと1.68秒なのでMSVCとほぼ同じなんですが。
|

|