MATLAB-CPU-Zeit

Ammar Ali 20 Juni 2023
  1. Verwenden Sie den Befehl cputime, um die CPU-Zeit in MATLAB zu überprüfen
  2. Verwenden Sie die Befehle tic und toc, um die CPU-Zeit in MATLAB zu überprüfen
MATLAB-CPU-Zeit

In diesem Tutorial wird die Überprüfung der CPU-Zeit mit den Befehlen tic, toc und cputime in MATLAB behandelt.

Verwenden Sie den Befehl cputime, um die CPU-Zeit in MATLAB zu überprüfen

Wir können den Befehl cputime verwenden, um die CPU-Zeit zu überprüfen, die Matlab beim Ausführen einer bestimmten Aufgabe benötigt. Wir können die CPU-Zeit vor und nach der Ausführung einer Aufgabe notieren, und ihre Differenz entspricht der CPU-Zeit, die von dieser bestimmten Aufgabe benötigt wird.

Lassen Sie uns zum Beispiel die CPU-Zeit finden, die benötigt wird, um ein Oberflächendiagramm in Matlab zu erstellen. Siehe Code unten.

clc
clear

Start_t = cputime;
surf(peaks(50))
End_t = cputime;
Elapsed_time = End_t - Start_t

Ausgang:

Elapsed_time =

    0.3906

Im obigen Code werden die Befehle clc und clear verwendet, um das Befehls- und Arbeitsbereichsfenster von Matlab zu löschen. Die Ausgabe erfolgt in Sekunden, was bedeutet, dass die Aufgabe 390 Millisekunden benötigte, um das Oberflächendiagramm abzuschließen.

Beachten Sie, dass sich die Ausgabe je nach CPU, die Matlab verwendet, ändern kann. Wenn wir den Code wiederholt ausführen, kann sich die Ausgabe ändern, daher ist es gut, das Programm mehrmals auszuführen und den Durchschnitt aller Perioden zu nehmen, um den Fehler zu minimieren.

Der Befehl cputime gibt die Zeit in Sekunden zurück, seit Matlab gestartet wurde. Die Genauigkeit beim Ermitteln der von einer bestimmten Aufgabe benötigten Zeit ist geringer, wenn wir den Befehl cputime verwenden, da sich die Zeit jedes Mal, wenn wir den Code erneut ausführen, dramatisch ändert, also sollten wir die erläuterten Befehle tic und toc verwenden unter.

Verwenden Sie die Befehle tic und toc, um die CPU-Zeit in MATLAB zu überprüfen

Wir können die Befehle tic und toc verwenden, um die CPU-Zeit zu überprüfen, die Matlab beim Ausführen einer bestimmten Aufgabe benötigt. Um die CPU-Zeit zu überprüfen, müssen wir den Befehl tic vor der Aufgabe und den Befehl toc nach der Aufgabe definieren.

Der Befehl tic speichert die aktuelle Zeit, und der Befehl toc verwendet die zuvor gespeicherte Zeit, um die verstrichene Zeit zu berechnen. Lassen Sie uns zum Beispiel die CPU-Zeit finden, die benötigt wird, um ein Oberflächendiagramm in Matlab zu erstellen.

Siehe Code unten.

clc
clear

tic
surf(peaks(50))
toc

Ausgang:

Elapsed time is 0.105429 seconds.

In der obigen Ausgabe können wir sehen, dass die Zeit, die das Oberflächendiagramm benötigt, sich von der Zeit unterscheidet, die wir mit dem Befehl cputime gefunden haben. Wir können ein Experiment mit beiden oben genannten Methoden durchführen, um zu überprüfen, welche Funktion korrekt ist.

Wir können die Funktion pause() verwenden, um dem Programm eine Pause zu geben und dann die Zeit der Aufgabe zu überprüfen, die nahe an der Pausenzeit liegen sollte. Siehe Code unten.

clc
clear

tic
pause(1)
toc

Ausgang:

Elapsed time is 1.010429 seconds.

Im obigen Code haben wir eine Pause von 1 Sekunde gegeben, und die Ausgabe beträgt fast 1 Sekunde. Lassen Sie uns nun den Befehl cputime verwenden, um die benötigte Zeit zu überprüfen.

Siehe Code unten.

clc
clear

Start_t = cputime;
pause(1)
End_t = cputime;
Elapsed_time = End_t - Start_t

Ausgang:

Elapsed_time =

    0.2656

Der Unterschied zwischen der tatsächlichen Pausenzeit und der Ausgabe in der obigen Ausgabe ist sehr hoch. Daher sollten wir die Befehle tic und toc verwenden, um die CPU-Zeit zu überprüfen, die zum Ausführen einer Aufgabe benötigt wird.

Wir können auch die Funktion timeit() verwenden, um die Zeit zu überprüfen, die zum Ausführen einer Funktion benötigt wird, bevor sie in Matlab ausgeführt wird. Überprüfen Sie diesen Link für weitere Details über die Funktion timeit().

Überprüfen Sie diesen Link, um die Leistung Ihres Matlab-Codes genau zu messen.

Autor: Ammar Ali
Ammar Ali avatar Ammar Ali avatar

Hello! I am Ammar Ali, a programmer here to learn from experience, people, and docs, and create interesting and useful programming content. I mostly create content about Python, Matlab, and Microcontrollers like Arduino and PIC.

LinkedIn Facebook