Wie man die Bauzeit mit Bencher verfolgt
Bencher unterstützt die beliebtesten Benchmarking Harnesses direkt.
Manchmal möchten Sie jedoch messen, wie lange es dauert, Ihre Auslieferungen selbst zu bauen,
wie zum Beispiel die Kompilierungszeit eines ausführbaren Programms.
Zum Glück unterstützt Bencher auch die Verfolgung von Bauzeiten.
Der einfachste Weg, Bauzeiten zu verfolgen, ist die Verwendung des
bencher run
-CLI-Unterbefehls
mit dem --build-time
-Flag.
Im Hintergrund gibt bencher run
die Ergebnisse als Bencher Metric Format (BMF) JSON aus.
Daher ist es eine gute Praxis, den „json“-Adapter explizit zu verwenden.
Wenn Sie ein Skript unter ./my_build_script.sh
hätten, das Ihr Binary baut,
könnten Sie die Bauzeit dieses Binaries mit
bencher run
und dem json
Adapter verfolgen.
Das --build-time
Flag erfordert einen Benchmark-Befehl.
Das generierte BMF-JSON würde so aussehen,
wenn Ihr Build-Skript 87,0
Sekunden zur Fertigstellung benötigte:
Beachten Sie, dass der Benchmark-Name /bin/sh -c ./my_build_script.sh
ist.
Dies liegt daran, dass unser Befehl nur ein einziges Argument ist, daher
verwendet bencher run
standardmäßig die Shell-Form für die Ausführung.
Alternativ, wenn Sie die Verwendung der Exec-Form erzwingen möchten,
können Sie entweder mehrere Argumente angeben oder das --exec
Flag verwenden.
Wenn dieser Exec-Form-Build 86,98
Sekunden dauerte,
würde das generierte BMF-JSON wie folgt aussehen:
Jetzt ist der Benchmark-Name einfach ./my_build_script.sh
.
Das ./my_build_script.sh
Objekt enthält den build-time
Schlüssel.
build-time
ist das Kürzel für die eingebaute Buildzeit-Messung.
Die Buildzeit-Messung wird nicht standardmäßig für alle Projekte erstellt.
Wenn Sie jedoch die Buildzeit-Messung verwenden,
wird sie automatisch für Ihr Projekt erstellt.
Das Buildzeit-Messobjekt enthält eine Metrik
mit dem Bauzeitwert in Sekunden, 87,0
und 86,98
in unseren Beispielen.
Die Bauzeit wird immer auf die nächsten zwei Dezimalstellen gerundet.
Das heißt, sie wird niemals eine lange Dezimalzahl wie 42,666666
sein.
Dateigröße verfolgen
Sie möchten möglicherweise die Dateigröße verfolgen Ihrer Liefergegenstände,
zusätzlich dazu, wie lange es dauert, diese zu bauen.
bencher run
unterstützt sowohl das Verfolgen von Bauzeiten als auch von Dateigrößen.
Wenn die Ausgabe Ihres ./my_build_script.sh
Build-Skripts
ein Binärprogramm im Pfad ./path/to/my_binary
war,
könnten Sie sowohl die Compile-Zeit als auch die Größe des Binärprogramms mit diesem Befehl verfolgen:
Wenn my_binary
eine Größe von 42
Bytes hätte,
würde das generierte BMF JSON so aussehen:
🐰 Glückwunsch! Sie haben gelernt, wie Sie Ihre Bauzeit verfolgen! 🎉