Ich möchte Techniken kennen (Codierung, Bibliotheken, Konfigurationen) für die Dauer der Ausführung von CGI-Perl-Code in verschiedenen Stadien Messen:Wie kann ich perl CGI Performance Messungen, Benchmarks, Zeitmessungen in verschiedenen Phasen der Ausführung durchführen?
- Starten des Perl-Interpreter
- Anfang Ausführen des Perl-Code
- Laden in lokalen Perl .pm Module für Routinen
- abgeschlossen den Code ausgeführt wird
ich besonders interessiert bin in 3 und 4, das tue ich nicht Ich glaube, es gibt viel, was ich über 1) oder 2) tun kann, da ich nicht versuchen möchte, den Perl-Interpreter zu optimieren. Das einzige, was ich hier tun kann, ist, die Hardware auf eine schnellere Maschine zu aktualisieren und/oder mod_perl anstelle von classic zu verwenden CGI.
Mit 3) Laden der lokalen Perl-Module Ich möchte messen, wie lange es dauert, aber ich bin mir nicht sicher, wie das zu programmieren ist, da ich nicht weiß (oder nicht sicher bin), wie Code zuvor ausgeführt werden soll Laden Sie diese Module. Wenn ich das wüsste, würde ich die Zeit vor dem Laden aufzeichnen, dann die Zeit nach dem Laden aufzeichnen und den Unterschied berechnen.
4) sollte am einfachsten zu erreichen sein, da ich die Zeit (in einer Variablen) zu Beginn der Ausführung und dann am Ende aufzeichnen würde.
Ich habe eine Suche auf stackoverflow.com und gefunden getan:
- How can I speed up my Perl program? - das ist, was ich erwarte, dass an einem gewissen Punkt mit werden. ABER ich muss die verkürzte Zeit beweisen (d. H. Die Geschwindigkeitsverbesserung, also muss ich in der Lage sein, an erster Stelle zu messen). Das Werkzeug http://search.cpan.org/dist/Devel-NYTProf sieht nützlich für die Profilierung meiner Quellcode, aber ich bin nicht sicher, es deckt 3) Laden von Modulen
- Does Perl language aim at producing fast programs at runtime? - eher einer ausführlichen Diskussion statt prägnante Antworten, aber gut zu lesen später, wenn die Zeit
Google Suchergebnissen enthalten:
- http://www.testingreflections.com/node/view/3622 - nicht genug Informationen hier
+1 und akzeptierte Antwort - fast alles, was ich brauche. Danke @Alexandr Ciornii – therobyouknow