Azzera filtri
Azzera filtri

Matlab GUI and slow execution

6 visualizzazioni (ultimi 30 giorni)
Alberto Ducci
Alberto Ducci il 11 Mag 2015
Risposto: Jan il 12 Mag 2015
Hello, i'm writing a program that plots some data from 8 temperature sensors . the sensors are connected to the pc through the serial port and the samples arrives every 6 seconds. At start the program works as it should, but after an hour from begin of acquisition it is slower than after a few minutes. I actually do cla every cycle and don't use eval. i've also limited the use of global variables. what can i try to increase performances of my program. thank you alberto

Risposta accettata

Alfonso Nieto-Castanon
Alfonso Nieto-Castanon il 11 Mag 2015
not much we can do without seeing the code, but as you suggest one possible reason for the slowing down could be if the number of graphic objects being displayed is increasing over time (e.g. if you forgot to delete some object during each iteration). I would suggest to either try clf instead of cla, and/or check if numel(findobj(gcf)) is increasing over time. Another potential reason would be if you are accumulating some data into a non-preallocated array (so Matlab needs to reallocate bigger and bigger chuncks of continuous memory to fit that ever increasing variable)
Good luck!
  1 Commento
Alberto Ducci
Alberto Ducci il 12 Mag 2015
solved! thank you very much...i created every cycle a static text...after 10 minutes there were already 500!

Accedi per commentare.

Più risposte (1)

Jan
Jan il 12 Mag 2015
The profiler is the best method to identify the bottlenecks of your code. See doc profile . It is not worth to "optimize" lines, which use only 2% of teh runtime, but usually the profiler reveals, which line uses the majority of the time. Then post the relevant part of the code here - by editing your question. Please do not post important information as a comment or as a pseudo-answer.

Categorie

Scopri di più su Specifying Target for Graphics Output in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by