![]() |
Re: Geschwindigkeit einer Funktion messen
Zitat:
Abgesehen davon: vielleicht will ers ja auch im Programm ausgeben :gruebel: |
Re: Geschwindigkeit einer Funktion messen
Genau die richtigen Hinweise. Danke an alle.
Funktioniert prima. |
Re: Geschwindigkeit einer Funktion messen
Zitat:
|
Re: Geschwindigkeit einer Funktion messen
Zitat:
![]() |
Re: Geschwindigkeit einer Funktion messen
OK. Hier der Quellcode. Wundert Euch bitte nicht, warum ich ständig PChar in String konvertiere. Der Grund ist der, daß ich mit der Torque Game Engine arbeite und die komplett in C++ geschrieben wurde. Da ich aber C++ nur dann anfasse, wenn unbedingt nötig, nutze ich lieber mit der 3D Engine eine zusätzliche DLL, die ich in Delphi schreibe. Daher die Umwandlung.
Die Zeitmessung ist deswegen interessant, da KI und Wegfindung recht aufwändige Berechnungen sind. Und ich will halt wissen, wie schnell die Algorithmen ablaufen.
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var Start, Stop, Frequenzy: Int64; i:integer; name_p:PChar; name_s:string; begin Listbox1.clear; QueryPerformanceFrequency(Frequenzy); QueryPerformanceCounter(Start); for i:=1 to StrToInt(Edit1.text) do Begin name_p:='Ich mag Delphi'; name_s:=StrPas(name_p); listbox1.Items.Add(IntToStr(i)+': '+name_s); End; try QueryPerformanceCounter(Stop); ShowMessage(FormatFloat('0.00', (Stop - Start) * 1000 / Frequenzy) + ' Millisekunden'); finally end; end; |
Re: Geschwindigkeit einer Funktion messen
Das hat Daniel doch schon erwähnt, Robert. Wenn mich meine Erinnerung nicht trügt, wurde hier auch kürzlich ein Problem mit QueryPerformanceCounter erwähnt, das auftritt, wenn der Thread die CPU wechselt.
|
Re: Geschwindigkeit einer Funktion messen
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:05 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz