Comment utiliser Hyperfine ?
Comment utiliser Hyperfine pour comparer les performances de rg et ag
Qu’est-ce que Hyperfine ?
Hyperfine est un outil en ligne de commande qui permet de mesurer et de comparer les performances d’autres commandes. Il est particulièrement utile pour évaluer la vitesse d’exécution de différentes commandes ou scripts, en fournissant des statistiques détaillées comme le temps moyen, l’écart-type, et la plage de temps d’exécution.
Présentation de rg (ripgrep)
Ripgrep, souvent abrégé en rg
, est un outil de recherche de texte ultra-rapide. Il est conçu pour parcourir rapidement des fichiers et des répertoires à la recherche de motifs spécifiques. Ripgrep est connu pour sa rapidité et sa capacité à ignorer les fichiers non pertinents, comme ceux dans les répertoires .git
ou node_modules
.
Présentation de ag (The Silver Searcher)
The Silver Searcher, ou ag
, est un autre outil de recherche de texte, similaire à ack
, mais plus rapide. Il est optimisé pour la recherche dans des projets de code, en ignorant automatiquement les fichiers et répertoires non pertinents. Bien qu’il soit rapide, il est souvent surpassé par rg
en termes de performances.
Comparaison des performances avec Hyperfine
Pour comparer les performances de rg
et ag
, nous pouvons utiliser Hyperfine avec la commande suivante :
hyperfine --warmup 3 'rg -i "Olivier" -g "*php*" .' 'ag -i "Olivier" -G "php"'
Les résultats montrent que rg
est significativement plus rapide que ag
:
rg
a un temps moyen d’exécution de 256.6 ms.ag
a un temps moyen d’exécution de 910.3 ms.
En résumé, rg
est environ 3.55 fois plus rapide que ag
dans ce scénario.
Pourquoi utiliser rg plutôt que ag ?
La comparaison effectuée avec Hyperfine démontre clairement que rg
est plus performant que ag
pour la recherche de texte. Si la vitesse est un critère important pour vous, rg
est donc un choix évident. De plus, rg
offre une meilleure gestion des fichiers ignorés et une intégration plus fluide avec les outils modernes de développement.