How can I measure time on MATLAB?

2 views (last 30 days)
Omar B.
Omar B. on 24 Jul 2020
Commented: Omar B. on 25 Jul 2020
Hi, I am trying to measure the running time of solving system of linear equations using tic , toc. I have to compute the system of linear equation with (A+aI) for different scaler a in one code. How to measure the time of computing the system of linear equations for all a. Do we need to compute the total as I did below or we need to take the average of time?
n=200;
A=full(gallery('tridiag',n,1,2,1));
b=randn(n,1);
tic
[L,U]=lu(A+3*eye(n));
t=L\b;
x=U\t;
time(1)=toc;
tic
[L1,U1]=lu(A+6*eye(n));
t1=L1\b;
x1=U1\t1;
time(2)=toc;
total=time(1)+time(2);

Answers (1)

David Hill
David Hill on 24 Jul 2020
n=200;
A=full(gallery('tridiag',n,1,2,1));
a=[3,6];
b=randn(n,1);
for k=1:length(a)
tic
[L,U]=lu(A+a(k)*eye(n));
t(k)=L\b;
x(k)=U\t(k);
time(k)=toc;
end
totalTime=sum(time);
  5 Comments
Walter Roberson
Walter Roberson on 25 Jul 2020
What is "best" depends upon your needs, but mean() or median() is most often the useful measure.

Sign in to comment.

Categories

Find more on Physics in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!