Borrar filtros
Borrar filtros

How can I show how much time is left for a script to complete?

32 visualizaciones (últimos 30 días)
Mirage
Mirage el 5 de Nov. de 2012
Comentada: Paulo Abelha el 17 de Sept. de 2016
I know there's a function call 'waitbar'; however, I want to show whoever is running my script how much time is left before it will be finished. It is a long script that consists of many different functions and loops.
Thanks, Mirage
  3 comentarios
Mirage
Mirage el 7 de Nov. de 2012
Hi Dave,
The script is pretty long, roughly 900 lines and it's not contained in a for loop so it would be tough to tic toc the first iteration and judge it based on that.
Paulo Abelha
Paulo Abelha el 17 de Sept. de 2016
Hi Dave,
I've coded a function that might help you:
https://uk.mathworks.com/matlabcentral/fileexchange/59187-displayestimatedtimeofloop--tot-toc--curr-ix--tot-iter--

Iniciar sesión para comentar.

Respuestas (2)

Chad Greene
Chad Greene el 6 de Nov. de 2012
Clever use of tic and toc may provide an estimate of how much time the script has been running, and how much time is left.
tic
steps = 10;
for step = 1:steps
% [calculations here]
if step==1
toc1=toc;
end
time_elapsed = toc;
estimated_time_remaining = (steps-step)*toc1;
disp([num2str(time_elapsed),' seconds down, ',num2str(estimated_time_remaining),' seconds to go!'])
end

John Petersen
John Petersen el 6 de Nov. de 2012
One thing you can do is determine where the bulk of the computation time resides. Hopefully this is in a loop. You could then time each loop and then display the time left based on how many iterations remain. Otherwise, it's going to vary too much from computer to computer to be very useful.

Categorías

Más información sobre Dialog Boxes en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by