Verfasst am: 02.12.2009, 14:47
Titel: "Script ausführen" schneller als "Evaluate C
Hallo zusammen,
ich habe gerade festgestellt, dass das Ausführen eines Scripts F5 schneller ist, als wenn ich auf "Evaluate Current Cell Strg+Enter" klicke.
Muss das so? Was mich wundert ist, dass die for Schleife im Script durchs ausführen schneller als die Vektoroperation ist. Nun wollte ich doch gerade einem Kollegen erklären, dass for Schleifen unter Matlab aus Performancegründen weitestgehend vermieden werden sollten...
Code:
%% Einfacher Vergleich Vektorisierung % Vektorlaenge
n = 1e6;
Warum das Ausführen im Cell Mode generell langsamer ist kann ich verstehen. Es geht halt um das Experimentieren und Entwickeln von Code. Überall laufen Syntax und M-Lint Optionen mit.
Warum die Schleife schneller ist schaue ich mir gleich mal an.
Andreas
ActionAndi
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 02.12.2009, 15:07
Titel:
Hallo Andreas,
wenns hilft: Ich habe hier Matlab 7.4.0 (R2007a) am laufen.
Viele Grüße
Andi
ActionAndi
Gast
Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
Verfasst am: 02.12.2009, 15:07
Titel:
Hallo Andreas,
wenns hilft: Ich habe hier Matlab 7.4.0 (R2007a) am laufen.
Liegt vielleicht am Rechner (4 CPUs). Wenn ich JIT ausschalte, kommt auch das richtige raus.
Dumm ist nur, dass mein einfacher Beweis für die Vorteile der Vektorisierung nicht funktioniert. Hast Du evtl ein einfaches Script bzw. einen Tipp?
Auch wenn ich nach "matrix loop performance best practice" Suche kommen fast nur Hits auf ihren Blog.
Andreas
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.