AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Geschwindigkeit einer Funktion messen

Ein Thema von Gargamel · begonnen am 23. Jul 2008 · letzter Beitrag vom 23. Jul 2008
Antwort Antwort
Seite 1 von 2  1 2      
Gargamel

Registriert seit: 19. Mär 2007
171 Beiträge
 
#1

Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 14:59
Hallo

Kennt jemand eine Lösung bzw. ist es überhaupt möglich, die Ausführungsgeschwindigkeit einer Funktion zu messen?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:00
Nicht ohne Einfluss auf diese zu nehmen
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#3

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:00
Eine direkte Funktion gibt es nicht, aber mit Hilfe von Hier im Forum suchenQueryPerformanceCounter und Hier im Forum suchenQueryPerformanceFrequency ist es recht einfach möglich.

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#4

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:01
Zitat von mkinzler:
Nicht ohne Einfluss auf diese zu nehmen
Wieso, wenn man die Zeitmessung vor und nach dem Aufruf ausführt, dann sollte es doch ohne Probleme gehen.

......
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:06
Zitat von sakura:
Zitat von mkinzler:
Nicht ohne Einfluss auf diese zu nehmen
Wieso, wenn man die Zeitmessung vor und nach dem Aufruf ausführt, dann sollte es doch ohne Probleme gehen.

......
Stimmt
Markus Kinzler
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:06
Auch noch zu erwähnen: Mit MSDN-Library durchsuchenGetThreadTimes bist du unabhängiger von anderen Threads, die gleichzeitig laufen, als wenn du QueryPerformanceCounter oder GetTickCount nimmst.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer
Online

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:08
Falls es öfter benötigt wird um sein Programm schneller zu machen: AQTime ist sein Geld wert!
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Meflin
Meflin

Registriert seit: 21. Aug 2003
4.856 Beiträge
 
#8

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:11
Zitat von Bernhard Geyer:
Falls es öfter benötigt wird um sein Programm schneller zu machen: AQTime ist sein Geld wert!
Wollte ich auch schon vorschlagen, wobei ich nicht weis, ob es für absolute Zeiten so gut geeignet ist. Wenn ich mich recht erinner, hat der Profiler die Ausführung doch erheblich verlangsamt...
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer
Online

Registriert seit: 13. Aug 2002
17.201 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:17
Zitat von Meflin:
Zitat von Bernhard Geyer:
Falls es öfter benötigt wird um sein Programm schneller zu machen: AQTime ist sein Geld wert!
Wollte ich auch schon vorschlagen, wobei ich nicht weis, ob es für absolute Zeiten so gut geeignet ist. Wenn ich mich recht erinner, hat der Profiler die Ausführung doch erheblich verlangsamt...
Es kommt ja auf die verhältnisse an bzw. was ich machen will.
Wenn mir der Proviler sagt das 90% der Rechenzeit an 5 Quellcodezeilen verbraten werden ist es egal ob diese um den Faktor 5 verlangsamt wurden.
Und erheblich verlangsamt wird es nur wenn der Line-Profiler verwendet wird.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von Forlan
Forlan

Registriert seit: 17. Feb 2008
Ort: Herford
265 Beiträge
 
Delphi 2007 Architect
 
#10

Re: Geschwindigkeit einer Funktion messen

  Alt 23. Jul 2008, 15:21
Müsste es so nicht klappen????

Delphi-Quellcode:
procedure TForm1.Go;
var start,stop,zeit : integer;
begin
  start := GetTickCount;
     //Hier deine Funktion
  stop := GetTickCount;
  zeit := stop-start;
  ShowMessage('Gebrauchte Zeit '+ IntToStr(zeit) + ' ms';
end;
Marcel
マルセル
www.youtube.com/beethoven1990
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz