Quelqu'un peut-il me donner le temps approximatif (en nanosecondes) pour accéder aux caches L1, L2 et L3, ainsi qu'à la mémoire principale sur les processeurs Intel i7?
Bien que ce ne soit pas spécifiquement une question de programmation, connaître ces types de détails de vitesse est nécessaire pour certains défis de programmation à faible latence.
memory
latency
cpu-cache
low-latency
Ted Graham
la source
la source
Réponses:
Voici un guide d'analyse des performances pour la gamme de processeurs i7 et Xeon. Je dois insister sur le fait que cela a ce dont vous avez besoin et plus (par exemple, consultez la page 22 pour certains horaires et cycles par exemple).
De plus, cette page contient des détails sur les cycles d'horloge, etc. Le deuxième lien servait les numéros suivants:
EDIT2
:Le plus important est l'avis sous le tableau cité, disant:
EDIT: Je dois souligner que, en plus des informations de synchronisation / cycle, le document Intel ci-dessus traite beaucoup plus de détails (extrêmement) utiles de la gamme de processeurs i7 et Xeon (d'un point de vue des performances).
la source
Des chiffres que tout le monde devrait connaître
De: À l'origine par Peter Norvig:
- http://norvig.com/21-days.html#answers
- http://surana.wordpress.com/2009/01/01/numbers-everyone-should-know/ ,
- http://sites.google.com/site/io/building-scalable-web-applications-with-google-app-engine
la source
Coût pour accéder à divers souvenirs dans une jolie page
Sommaire
Valeurs en baisse mais stabilisées depuis 2005
Encore quelques améliorations, prévision pour 2020
Voir aussi d'autres sources
Ancienne mais toujours une excellente explication approfondie sur l'interaction entre le matériel mémoire et le logiciel.
Voir également
Pour une meilleure compréhension, je recommande l'excellente présentation des architectures de cache modernes (juin 2014) de Gerhard Wellein , Hannes Hofmann et Dietmar Fey de l' Université Erlangen-Nürnberg .
Les francophones apprécieront peut-être un article de SpaceFox comparant un processeur à un développeur en attente des informations nécessaires pour continuer à travailler.
la source
[A]
posté ci-dessous.Juste pour le plaisir de l'examen de 2020 des prévisions pour 2025:
Au cours des 44 dernières années de la technologie des circuits intégrés, les processeurs classiques (non quantiques) ont évolué, littéralement et physiquement "Per Aspera ad Astra" . La dernière décennie a démontré que le processus classique s'est rapproché de certains obstacles, qui n'ont pas de chemin physique réalisable.
Number of logical cores
peut et peut croître, mais pas plus que ce qui est difficile, voire impossible à contourner, le plafond basé sur la physique déjà atteint peut et peut croître, mais moins que (puissance, bruit, "horloge") ne peut augmenter, mais des problèmes de distribution d'énergie et de dissipation thermique augmentera peut augmenter, ayant des avantages directs de grandes empreintes de cache et des E / S mémoire plus rapides et plus larges et des avantages indirects de la commutation de contexte moins souvent forcée par le système, car nous pouvons avoir plus de cœurs pour diviser d'autres threads / processus entreO(n^2~3)
Frequency [MHz]
Transistor Count
O(n^2~3)
Power [W]
Single Thread Perf
(Les crédits reviennent à Leonardo Suriano & Karl Rupp)
Juste pour le plaisir de l'examen de 2015 des prévisions pour 2020:
Juste pour comparer le paysage de latence CPU et GPU:
Ce n'est pas une tâche facile de comparer même les files d'attente CPU / cache / DRAM les plus simples (même dans un modèle d'accès mémoire uniforme), où la vitesse de la DRAM est un facteur pour déterminer la latence, et la latence chargée (système saturé), où cette dernière règle et est quelque chose que les applications d'entreprise connaîtront plus qu'un système inactif entièrement déchargé.
Les moteurs GPU ont reçu beaucoup de marketing technique, tandis que de profondes dépendances internes sont essentielles pour comprendre à la fois les forces réelles et les réelles faiblesses que ces architectures rencontrent dans la pratique (généralement très différentes des attentes du marketing agressif sifflé).
Comprendre les internalités est donc bien plus important que dans d'autres domaines, où les architectures sont publiées et de nombreux benchmarks disponibles gratuitement. Un grand merci aux micro-testeurs GPU, qui ont consacré leur temps et leur créativité à révéler la vérité sur les véritables schémas de travail à l'intérieur des périphériques GPU testés par l'approche de la boîte noire.
Mes excuses pour une "vue d'ensemble", mais le démasquage de la latence a également des limites cardinales imposées par les capacités smREG / L1 / L2 sur puce et les taux de réussite / échec.
La ligne du bas?
Toute conception motivée à faible latence doit plutôt rétroconcevoir «l'hydraulique d'E / S» (car les 0 1-XFER sont incompressibles par nature) et les latences qui en résultent régissent l'enveloppe de performance de toute solution GPGPU, qu'elle soit gourmande en calcul ( lire : où les coûts de traitement pardonnent un peu plus une mauvaise latence XFER ...) ou pas ( lire : où (peut-être à la surprise de quelqu'un) les CPU sont plus rapides dans le traitement de bout en bout, que les tissus GPU [citations disponibles] ).
la source
Regardez ce tracé "en escalier", illustrant parfaitement les différents temps d'accès (en termes de tics d'horloge). Remarquez que le processeur rouge a une "étape" supplémentaire, probablement parce qu'il a L4 (alors que d'autres ne le font pas).
Tiré de cet article Extremetech.
En informatique, cela s'appelle la "complexité des E / S".
la source