question on elapsed time

1 vue (au cours des 30 derniers jours)
konoha
konoha le 22 Nov 2016
I am working a problem that require to understand why each operation takes different time. So, I have a
A = randn(100,100);
b = randn(100,1);
tic; x = A\b; toc;
this operation takes about 0.002s
then I do
tic; x= A\b; toc;
MatLab takes slightly shorter times to do the calculation.
As I repeat for a few times, I keep getting two slightly different time. I don't understand why.

Réponses (2)

Star Strider
Star Strider le 23 Nov 2016
You are getting slightly different times because life is inherently stochastic.

Walter Roberson
Walter Roberson le 23 Nov 2016
  • You wiggled the mouse more and that took up some of the computer's attention
  • MATLAB does not invoke its garbage collection every time it does an operation, and the amount of time it takes to collect garbage is not constant
  • Your anti-virus kicked in for some reason
  • Your firewall spent a bit of time disregarding some attack packets from outside
  • Some background operation resulted in the data being moved out of the Level 1 cache of your CPU
  • Your operating system decided to schedule the work for a different processor and spent a moment moving the process
  • Your memory system spent a few jiffy fixing a single bit error
  • Your music player decided it was time to check with the mothership to see if a new version of itself was available
  • Sunspots
  • Because the wise and powerful and rich and wise weasel wished it so

Catégories

En savoir plus sur Performance and Memory dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by