Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.199 Beiträge
 
Delphi 12 Athens
 
#5

AW: D12 - 1' 20" Kompilierzeit für 10 Zeilen Code und 5 Komponenten??

  Alt 20. Jan 2024, 13:04
@Uwe Das Compilieren mit einer/keiner geänderten Unit, oder wirklich ein kompletter Build?



In der Ereignisanzeige vom Windows ist nicht zu sehn, dass irgendwas massig Meldungen/Fehlermeldungen raushaut?


Nja, erstmal der Taskmanager und der Ressourcenmonitor %windir%\system32\perfmon.exe /res könnten einen Blick wert sein, um grob zu sehn, ob man irgendwas bremsendes sieht.
Es gibt ja nicht nur die CPU, sondern auch RAM und den Datenträger.
Beim RAM vor allem die Ein-/Auslagerung (PageFaults bei den Details im Taskmanager)
Beim Datenträger nicht nur die reine Menge der Daten, sondern auch die Anzahl/GrößeKleine der I/Os.

Und da es eine VM ist, das Ganze auch nochmal auf Seiten des Hosts.


Für mehr dann noch der bekannte Prozessmonitor https://learn.microsoft.com/de-de/sysinternals/downloads/procmon (wobei man hier mehr nur erkennt, ob z.B. zu viele "fehlerhafte" Zugriffe bremsen)
oder sogar das Log des Windows selbst (ihr wollt nicht wissen, was es alles loggt, aber zum Glück normal nicht alles auswertet/speichert)

Also bissl ausführlicher über den Windows Performance Recorder C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit\wpr.exe bzw. wprui.exe und Viewer/Analyzer wpa.exe
Falls es nicht teilweise durch Delphi bereits installiert ist -> bestimmt im https://developer.microsoft.com/en-u...s/windows-sdk/
Das Verzeichnis ist knapp 180 MB winzig, ohne Redistributables, legacy und gpuview, und kann einzeln kopiert werden.
(k.A. wozu, da das WMI/WindowsHighPerformanceLog im Windows schon seit ewig installiert ist und ich es mit einer nichtmal 1MB-Delphi-App auch ansprechen kann)



Falls du selbst damit nicht klar kommst, dann das WPRUI starten, mehr Optionen und
bei Recource-Analysis noch bissl was aktivieren
Scenario auf General lassen
Mode in Memory oder besser File (Einiges kann eh nur Live oder in eine Datei geloggt werden)
und starten
Speichern und das Log jemandem zur Analyse geben.

Beachte, dass diese Logs sehr groß werden können. (alles genannte angehakt, auch schonmal über 1 GB die Minute, da ohne Filter)

ACHTUNG: nach dem Start unbedingt Speichern+Stoppen oder Stoppen (Cancel) und nicht einfach das Programm schließen.
An viele Logs kann sich nur ein Recorder anhängen und wenn das im Hintergrund weiterläuft *, war's das. (Du kannst dann nur hoffen dass kein Autostart für den Logger angegeben wurde somit ein Neustart des Windows hilft)
*) Dieses LogTool ist kein LiveLogger, sondern sagt Windows nur was wohin geloggt werden soll.




Wir haben auch grade bei zwei Kunden mit je einem Rechner ein Problem, dass dort unser Programm langsam läuft.
Bei einem ist es ein defekter Festplattenkontroller (laut Logs in der Ereignisanzeige) und der Andere ... weiß noch nicht.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (20. Jan 2024 um 13:14 Uhr)
  Mit Zitat antworten Zitat