¿Cuál es la diferencia entre el " código hostil de caché " y el código " amigable de caché "? ¿Cómo puedo asegurarme de escribir código eficiente en caché?
A continuación hay dos programas que son casi idénticos, excepto que cambié las variables iy j. Ambos corren en diferentes cantidades de tiempo. ¿Alguien podría explicar por qué sucede esto? Versión 1 #include <stdio.h> #include <stdlib.h> main () { int i,j; static int x[4000][4000]; for (i = 0; i < …
¿Alguien puede darme el tiempo aproximado (en nanosegundos) para acceder a los cachés L1, L2 y L3, así como a la memoria principal en los procesadores Intel i7? Si bien esto no es específicamente una pregunta de programación, conocer este tipo de detalles de velocidad es necesario para algunos desafíos …
Esto puede sonar como una pregunta subjetiva, pero lo que estoy buscando son instancias específicas, que podría haber encontrado relacionadas con esto. ¿Cómo hacer que el código sea efectivo en caché / compatible con caché (más aciertos de caché, la menor cantidad de errores de caché posible)? Desde ambas perspectivas, …
Tengo entendido que la principal diferencia entre los dos métodos es que en el método de "escritura directa" los datos se escriben en la memoria principal a través de la caché inmediatamente, mientras que en la "escritura diferida" los datos se escriben en un "último tiempo". Todavía tenemos que esperar …
Estoy tratando de obtener una descripción precisa de la jerarquía de caché de datos de la CPU actual en Linux: no solo el tamaño de los cachés de datos individuales L1 / L2 / L3 (y posiblemente L4), sino también la forma en que se dividen o comparten núcleos Por …