Comment Suivre le Temps de Construction avec Bencher


Bencher prend en charge les frameworks de benchmarking les plus populaires prĂȘts Ă  l’emploi. Parfois, cependant, vous souhaitez mesurer le temps nĂ©cessaire pour construire vos livrables eux-mĂȘmes, comme le temps de compilation d’un exĂ©cutable. Heureusement pour vous, Bencher prend Ă©galement en charge le suivi des temps de construction. La façon la plus simple de suivre les temps de construction est d’utiliser la sous-commande CLI bencher run avec l’option --build-time. En coulisses, bencher run gĂ©nĂšre les rĂ©sultats en tant que Bencher Metric Format (BMF) JSON. Il est donc conseillĂ© d’utiliser explicitement l’adaptateur json.

Si vous aviez un script situĂ© Ă  ./my_build_script.sh qui construisait votre binaire, alors vous pourriez suivre le temps de construction de ce binaire avec bencher run et l’adaptateur json. Le drapeau --build-time nĂ©cessite une commande de benchmark.

Terminal window
bencher run --build-time --adapter json ./my_build_script.sh

Le JSON BMF généré ressemblerait à ceci, si votre script de construction prenait 87.0 secondes pour se terminer :

{
"/bin/sh -c ./my_build_script.sh": {
"build-time": {
"value": 87.0
}
}
}

Notez que le nom du Benchmark est /bin/sh -c ./my_build_script.sh. C’est parce que notre commande est seulement un seul argument, donc bencher run par dĂ©faut utilise la forme shell pour l’exĂ©cution. Alternativement, si vous souhaitez forcer l’utilisation de la forme exec, vous pouvez soit fournir plusieurs arguments, soit utiliser le drapeau --exec.

Terminal window
bencher run --build-time --adapter json --exec ./my_build_script.sh

Si cette construction en forme exec prenait 86.98 secondes, alors le JSON BMF généré ressemblerait à ceci :

{
"./my_build_script.sh": {
"build-time": {
"value": 86.98
}
}
}

Maintenant, le nom du Benchmark est simplement ./my_build_script.sh. L’objet ./my_build_script.sh contient la clĂ© build-time. build-time est le slug pour la Mesure de Temps de Construction intĂ©grĂ©e Measure. La Mesure de Temps de Construction n’est pas crĂ©Ă©e par dĂ©faut pour tous les Projets. Cependant, lorsque vous utilisez la Mesure de Temps de Construction, elle sera automatiquement crĂ©Ă©e pour votre Projet. L’objet de la Mesure de Temps de Construction contient un MĂ©trique avec la valeur du temps de construction en secondes, 87.0 et 86.98 dans nos exemples.

Le Temps de Construction sera toujours arrondi au plus proche deux dĂ©cimales. C’est-Ă -dire qu’il ne sera jamais un long dĂ©cimal comme 42.666666.

Suivre la Taille des Fichiers

Vous pouvez vouloir suivre la taille des fichiers de vos livrables, en plus de suivre le temps nécessaire pour les construire. bencher run prend en charge le suivi des temps de construction et des tailles de fichiers.

Si le résultat de votre script de construction ./my_build_script.sh était un binaire au chemin ./path/to/my_binary, alors vous pourriez suivre à la fois le temps de compilation et la taille du binaire avec cette commande :

Terminal window
bencher run --build-time --file-size ./path/to/my_binary --adapter json ./my_build_script.sh

Si my_binary avait une taille de 42 octets, le JSON BMF généré ressemblerait à ceci :

{
"/bin/sh -c ./my_build_script.sh": {
"build-time": {
"value": 87.0
}
},
"my_binary": {
"file-size": {
"value": 42.0
}
}
}

🐰 FĂ©licitations ! Vous avez appris Ă  suivre votre temps de construction ! 🎉


Continuez : Comment Suivre les Benchmarks dans CI ➡

đŸ€– Ce document a Ă©tĂ© automatiquement gĂ©nĂ©rĂ© par OpenAI GPT-4. Il peut ne pas ĂȘtre prĂ©cis et peut contenir des erreurs. Si vous trouvez des erreurs, veuillez ouvrir une issue sur GitHub.


Published: Sat, November 9, 2024 at 10:00:00 AM UTC