matlab matlab octave octave matlab r12 r11 686 386 r11 6.0 5.3 atlas 5.1 2.1.34 2.1.33 w98 w98 linux linux linux ========================================= a1=hilb(500); a2=rand(500); in=eye(500); 1) [x,y]=eig(a1); 7.80 12.32 7.95 8.10 10.46 2) x=svd(a1); 2.32 5.20 1.78 3.99 5.76 3) x=lu(a2); 0.22 1.80 0.68 2.55 2.06 4) [x,y,z]=lu(a2); 0.22 2.04 0.24 0.64 2.16 5) x=qr(a1); 0.46 1.90 0.41 1.12 2.25 6) [x,y]=qr(a1); 0.85 3.60 0.81 2.22 4.60 7) x=inv(a1+1000*in); 0.66 3.90 3.39 3.30 5.14 % octave 2.1.34 tambien calcula cond 8) x=cond(a1+1000*in); 2.32 4.92 1.86 4.15 5.60 9) x=qz(a1+1000*in,a1); 30.40 81.98 10.27 16.20 84.08 10) x=orth(a1); 12.58 20.61 10.60 14.97 20.78 11) x=pinv(a1); 12.45 20.71 10.60 15.01 21.01 a1=hankel(500); 12) [x,y]=schur(a1+1000*in); 2.18 4.18 2.92 5.60 7.30 a1=hankel(1000)+10*eye(1000); 13) x=chol(a1); 0.76 3.01 0.77 1.89 4.97 a1=hilb(1000); 14) [x,y]=hess(a1); 9.12 26.90 14.43 45.11 32.60 a1=rand(2^20,1); 15) x=fft(a1); 1.10 2.82 2.06(#) 2.10 2.90 a1=rand(2^16+5,1); 16) x=fft(a1); 0.11 9.91 7.73(#) 7.10 10.20 a1=rand(1000); a2=rand(1000); a3=rand(1000); 17) a1=a1+a2*a3; 3.44 16.86 3.24 30.80 29.30 a1=rand(300); a2=hilb(300); a3=a2+1000*eye(300); 18) x=expm(a1); 1.08 5.33 2.74 15.20 8.63 19) x=logm(a3); 9.03 9.60 2.10 4.44 8.36 20) x=sqrtm(a3); 5.18 37.31 2.11 4.46 8.33 21) x=lyap(a1,a2); (*) (*) 7.15 10.86 29.72 a1=rand(200); a2=hilb(200); 22) x=qzhess(a1,a2); (*) (*) 19.06 21.20 (*) tiempos en segundos en un PC con PIII 866Mhz con 256Mb de RAM con sistema operativo Linux Mandrake 8.0 kernel 2.4.3 (*) NO DISPONIBLE (#) Octave no ha sido compilado con fftw. En la version 2.1.35 puede compilarse con fftw y entonces los tiempos son similares a los de MATLAB v6.0 r12