"El núcleo único del M1 procesa la memoria en paralelo en más de 28 etapas"
-
El acceso a memoria es más costoso que el trabajo de cómputo
-
En teoría, el modelo ingenuo de que al acceder a
xse puede leer casi gratis algo cercano comox+1puede parecer razonable, pero no permite predecir el rendimiento -
¿Cuándo falla esta predicción de rendimiento? Los núcleos de CPU intentan acceder a varios lugares de memoria al mismo tiempo
-
Si se hacen 7 accesos a memoria al mismo tiempo, será más lento que acceder a uno solo, pero ¿será 7 veces más lento?
-
Mediante un programa de benchmark se probó cuántos accesos simultáneos (
lane, rutinas independientes de seguimiento de punteros) son posibles
→ A partir del punto en que el rendimiento de los accesos simultáneos empieza a caer, se puede estimar cuántos lane tiene
- Se supone que un solo núcleo del Apple M1 tiene 28
lane, ya que el rendimiento empieza a caer al superar ese número
→ Por eso, debido al alto nivel de procesamiento en paralelo, falla la estimación de costos de ese modelo ingenuo
5 comentarios
Cada vez que sale el tema de la CPU
https://ridibooks.com/books/443000037
este libro me está siendo de gran ayuda. Si alguien quiere seguirlo desde el principio, creo que si leen este libro antes, les será un poco más fácil entenderlo.
Para evitar que esto parezca publicidad de Ridibooks (...), el nombre del libro es: La historia de las CPU multinúcleo que los programadores no conocían. La razón por la que es Ridibooks es que la edición en papel está descatalogada y, de las tiendas que aún quedan, el libro electrónico solo está disponible en Ridibooks, así que no me quedó de otra más que ponerlo ahí.
Así que el señor Kim Min-jang también escribió un libro de este tipo... ya pasaron 10 años, cómo pasa el tiempo ^^;
Esta es realmente una parte difícil. Es complicado generalizar. Pero en una situación como la actual, en la que han aumentado mucho las arquitecturas de CPU y el procesamiento en paralelo, parece que podría ser bastante efectivo. Da la impresión de que también se están haciendo muchos experimentos para mejorar la arquitectura de hardware.
Quizá porque lo escribió un profesor de informática, dejó anotados exactamente solo los hechos que él mismo identificó..
Si se combinan los comentarios de esa publicación con los comentarios en HN, https://news.ycombinator.com/item?id=25659615
básicamente parece que puede entenderse como que el M1, gracias a una paralelización de más de 28 vías y al tamaño de la caché L1, muestra un rendimiento excelente incluso al hacer acceso aleatorio a múltiples lugares.