Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Benötigte Zeit Für Proceduren & Funktionen... (https://www.delphipraxis.net/33757-benoetigte-zeit-fuer-proceduren-funktionen.html)

Kedariodakon 12. Nov 2004 09:31


Benötigte Zeit Für Proceduren & Funktionen...
 
Gibt es eine bessere und genauere Lösung für das Berechnen der Berechnungszeit einer Berechnung, als GetTickCout vorher und nachher auszulesen?


Bye

Stevie 12. Nov 2004 09:33

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
Guck mal nach den Funktionen Delphi-Referenz durchsuchenQueryPerformanceCounter und Delphi-Referenz durchsuchenQueryPerformanceFrequency.

Kedariodakon 12. Nov 2004 09:42

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
In der OH find ich die nicht...

Soll ich wo anders nach suchen? :gruebel:


Bye

jim_raynor 12. Nov 2004 09:45

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
entweder in der MSDN oder bei google oder hier im Forum.

Es gab/gibt ein Tool gpProfiler oder so ähnlich. Damit konnte man recht einfach solche Auswertungen machen. Das Tool ist allerdings dafür da Performanceschwachstellen zu finden und nicht für eine Allgemeine Zeitmessung

Stevie 12. Nov 2004 09:48

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
Zitat:

Zitat von Kedariodakon
In der OH find ich die nicht...

Soll ich wo anders nach suchen? :gruebel:


Bye

:shock: Huch, sind ja überhaupt nicht in der OH!
Na dann: MSDN-Library durchsuchenQueryPerformanceCounter und MSDN-Library durchsuchenQueryPerformanceFrequency

shmia 12. Nov 2004 09:50

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
Mit der Unit JclCounter aus der JCL geht das recht einfach.
Es handelt sich um eine Kapselung von QueryPerformanceCounter und QueryPerformanceFrequency.
Hier ein Beispiel:
Delphi-Quellcode:
var
   counterA, counterB : TJclCounter;
begin
   StartCount(counterA);
   BerechnePrimzahlen(1, 5000);
   counterA.Stop;

   StartCount(counterB);
   BerechnePrimzahlen_Fast(1, 5000);
   counterB.Stop;

   ShowMessageFmt('A:%f B:%f', [CounterA.ElapsedTime, CounterB.ElapsedTime]);
   
   StopCount(counterA);
   StopCount(counterB);
end;

Kedariodakon 12. Nov 2004 10:08

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
Gut werd da mal in der MSDN nachschaun...

Aso Nochwas:
Ich hab da im Netz was gefunden zum Thema Zeitmessung....

Oder Besser ein Codeschnippsel:

Delphi-Quellcode:
   Function RDTSC: Int64;
   Asm
      RDTSC
   End;
:gruebel:

Was macht das? Ich bin kein Stück ASM bewandert....

Auf jedenfall gibt es mit eine Zahl aus, dass seh ich selber :zwinker:
Aber was is das für eine Zahl?


Bye

Tubos 12. Nov 2004 10:10

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
Das ist ungefähr dasselbe wie QueryPerformanceFrequency in Assembler.

Allerdings funktioniert es nur auf Intel-Prozessoren (der AMD stammt von Intel ab, vielleicht geht es da auch?).

Sharky 12. Nov 2004 10:11

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
Zitat:

Zitat von Kedariodakon
...Aber was is das für eine Zahl?..

Hai Kedariodakon,

guckst Du hier ;-)

Sharky 12. Nov 2004 10:15

Re: Benötigte Zeit Für Proceduren & Funktionen...
 
Ha,

wenn ich bei Tante Google nach "RDTSC" suche und nur ergebnisse auf deutsch haben möchte führt mich der erste Link zu einer Seite von luckie und einem Code von negaH


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:04 Uhr.
Seite 1 von 2  1 2      

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