function [t, Time, TotMem] = MatBenchMC(n); disp('') disp('') disp('') disp('=======================================================') disp('') [v, d] = version; disp( ' MatrixBenchmark test of Matlab') disp([ ' Version : ' v ' ' d]); disp( ' Dell Precision 690, 2 x QuadCore Xeon 5345, 2300MHz, 8GB ram') disp( ' Windows Vista 64bit') disp( ' BLAS Kernel : Intel mkl.dll Version ??') disp( ' Written by Derek O''Connor, Dec 2004, Aug 2006, Jan 2008') disp( ' derekroconnor@eircom.net') disp('') disp( [' Run Date : ' date]) disp('=======================================================') disp('') format='%15.3f'; %n = input('Enter Matrix size: '); NTests = 9; NThrds = 4; A = rand(n,n); B = rand(n,n); t = zeros(NTests,NThrds); A*B; B*A; % Warmup, load dlls? TimeDate1 = clock; k = 0; for thrd = [1 2 4 8] k = k+1; L = maxNumCompThreads(thrd); tic; C = A*B; t(1,k) = toc; tic; [L,U,P] = lu(A); t(2,k) = toc; tic; Ainv = inv(A); t(3,k) = toc; tic; [U,S,V] = svd(A); t(4,k) = toc; tic; [Q,R,P] = qr(A); t(5,k) = toc; tic; [v,d] = eig(A); t(6,k) = toc; tic; d = det(A); t(7,k) = toc; tic; r = rank(A); t(8,k) = toc; tic; c = cond(A); t(9,k) = toc; end; disp(' '); disp(['Multiply ' num2str(t(1,:),format) ' secs']) disp(['LUP Decomp ' num2str(t(2,:),format) ' secs']) disp(['Inv(A) ' num2str(t(3,:),format) ' secs']) disp(['SVD ' num2str(t(4,:),format) ' secs']) disp(['QR Decomp ' num2str(t(5,:),format) ' secs']) disp(['Eigen ' num2str(t(6,:),format) ' secs']) disp(['Det(A) ' num2str(t(7,:),format) ' secs']) disp(['Rank(A) ' num2str(t(8,:),format) ' secs']) disp(['Cond(A) ' num2str(t(9,:),format) ' secs']) disp('----------------------------------------------------------------'); disp(['Total ' num2str(sum(t),format) ' secs']) disp('==================== End of MatBench =============================='); TimeDate2 = clock; Time = [TimeDate1;TimeDate2] Mem = whos; TotMem = 0; for i = 1:10 TotMem = TotMem + Mem(i).bytes; end; TotMem =TotMem/10^6; %--------------- End of MatBenchMC.m --------------------------