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.
bencher run --build-time --adapter json ./my_build_script.shLe 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.
bencher run --build-time --adapter json --exec ./my_build_script.shSi 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 :
bencher run --build-time --file-size ./path/to/my_binary --adapter json ./my_build_script.shSi 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 ! đ