Représentation visuelle des chiffres de latence que les programmeurs devraient connaître
- Référence au cache L1 : 1 nanoseconde
- Échec de prédiction de branchement : 3 nanosecondes
- Référence au cache L2 : 4 nanosecondes
- Verrouillage/déverrouillage de mutex : 17 nanosecondes
- Transmission de 1 Ko de données sur un réseau à 1 Gbit/s : 44 nanosecondes
- Référence à la mémoire principale : 100 nanosecondes
- Compression de 1 Ko de données avec Zippy : 2 microsecondes
- Lecture séquentielle de 1 Mo en mémoire : 3 microsecondes
- Lecture aléatoire 4K sur SSD : 16 microsecondes
- Lecture séquentielle de 1 Mo sur SSD : 49 microsecondes
- Temps d’aller-retour au sein du même datacenter : 500 microsecondes
- Lecture séquentielle de 1 Mo sur disque : 825 microsecondes
- Recherche sur disque : 2 millisecondes
- Aller-retour d’un paquet entre la Californie et les Pays-Bas : 150 millisecondes
L’avis de GN⁺
- Ces données peuvent servir de référence importante aux programmeurs lors de la conception d’un système ou de l’optimisation des performances. Savoir combien de temps prend chaque opération ou tâche permet d’identifier les goulets d’étranglement et de les améliorer.
- Par exemple, en comparant le temps d’accès mémoire et la latence réseau, on comprend qu’il est bien plus rapide de minimiser les appels réseau et de traiter les données en mémoire. Cela peut constituer un point crucial dans la conception de systèmes distribués.
- Ces latences peuvent évoluer avec les progrès du matériel et des technologies, il est donc important de disposer d’informations à jour. Par exemple, les progrès des SSD ont considérablement réduit les temps de lecture sur disque.
- Lors de l’adoption de nouvelles technologies ou de logiciels open source, il faut tenir compte de ces latences pour prévoir les performances du système et déterminer quelle technologie sera la plus efficace en conditions réelles. Par exemple, l’utilisation d’une solution de cache en mémoire peut réduire la latence réseau, mais elle nécessite aussi une réflexion supplémentaire sur la cohérence du cache et la synchronisation des données.
4 commentaires
https://colin-scott.github.io/personal_website/research/…
Ici, la présentation est plus agréable.
Oh là là, l’UI/UX ne me plaît vraiment pas...
C'est vraiment ça, pff...
Commentaires Hacker News
Résumé du premier commentaire :
latency-containeret affiche la latence de chacun.Résumé du deuxième commentaire :
Résumé du troisième commentaire :
Résumé du quatrième commentaire :
Résumé du cinquième commentaire :
Résumé du sixième commentaire :
Résumé du septième commentaire :
Résumé du huitième commentaire :
Résumé du neuvième commentaire :