09/03/18 19:06:51
>>797 と >>805 の者です
gcc-4, g++-4, gfortran-4で、Gtoblas, Cblas, Lapack3.1.1, SuiteSparse3.2をmakeしなおした上で
octave-3.0.3をやっとmakeしました。
つまづいたのは libstdc++.dll.a で、エラーの理由はよくわからないのでリネームして隠し
それでもSuiteSparseでエラーが出るので色々やった結果
(octave-3.0.3-1.src.patchをあてたのが効いたか、SuiteSparseのincludeファイルもインストールしたのどちらか)
どうにかmakeに成功したました。
マシンは自宅の Intel Core2Duo 2.1GHzです(2.4GHzマシンの12%落ちぐらいの性能のはず)。
octave:1> n=2000; A=randn(n); B=randn(n);tic; C=A*B; t=toc, MFLOPS=2*n^3/t*1e-6
t = 1.32200
MFLOPS = 12102.9
約12GFlopsでした。まあまあですね。
それで問題の比較演算なんですが、
octave:1> A=randn(100);tic;for jj=0:10000;B=(A>0)*1;end;toc
Elapsed time is 2.245 seconds.
一方、MSVCだと
octave:1> A=randn(100);tic;for jj=0:10000;B=(A>0)*1;end;toc
Elapsed time is 2.42354 seconds.
で、ほぼ同じ。これでやっと使えるようになりました。ありがとうございました。