Impacto de la caché L3 en el rendimiento: ¿vale la pena un sistema de doble procesador?

Impacto de la caché L3 en el rendimiento: ¿vale la pena un sistema de doble procesador?

Compraré un nuevo sistema de alta gama y me gustaría tener una mejor idea de si un sistema Xeon de doble procesador (estoy considerando el nuevo Xeon E5-2687W de alta gama) podría, de manera realista, proporcionar una notable mejora del rendimiento debido a la duplicación de la caché L3 (20 MB por CPU).

(Esto se suma a la ventaja adicional ocasional debido a la duplicación de núcleos y RAM).

Mi escenario de uso es, aproximadamente, que tengo muchas aplicaciones en segundo plano ejecutándose en cualquier momento: 3 o 4 aplicaciones de copia de seguridad/compresión de datos, un servidor web de bajo impacto, una o dos máquinas virtuales en un momento dado (normalmente bastante inactivas) y quizás 20 programas de utilidad que utilizan una porción notable (pero pequeña) de los núcleos de la CPU. En total, cuando no estoy usando activamente la computadora, aproximadamente el 25% de la potencia total de la CPU se utiliza en mi sistema actual i7-970 de 6 núcleos (12 subprocesos).

Cuando hago un trabajo de rutina, la utilización de la CPU a menudo supera el 50% y, en ocasiones, llega al 75%-80%.

El Xeon E5-2687W no es sólo un i7 de segunda generación (por lo que debería mejorar el rendimiento por ese motivo), sino que también tiene 8 núcleos (16 subprocesos), en lugar de 6 núcleos. Por esta razón, espero encontrarme con el rango de CPU del 75% con menos frecuencia. No obstante, la capacidad de duplicar los núcleos y la RAM es una consideración.

Sin embargo, al final, creo que esta decisión se reduce a si duplicar la caché L3 proporcionará una mejora notable. Hay muchos puntos de referencia y mucha discusión sobre la potencia de la CPU. Sin embargo, encuentro muy poca discusión sobre la utilización de la caché L3 y cómo los aumentos en la caché L3 (como duplicarla con procesadores duales) afectan el rendimiento.

Por ejemplo: si solo haydosprocesos en ejecución, pero cada uno se beneficia de una gran caché L3 (como podría ser el caso de los procesos en segundo plano que escanean con frecuencia el sistema de archivos), tal vez el rendimiento general del sistema podría mejorar notablemente con CPU duales, incluso si solo hay un núcleo activo en cada CPU, debido a que cada proceso tiene el doble de caché L3 efectiva.

Espero que alguien tenga una idea de los beneficios de aumentar (o duplicar) el tamaño de la caché L3.

Nota: la CPU que estoy considerando (la Xeon E5-2687W) tiene 20 MB de caché L3, por lo que un sistema con dos CPU tendría 40 MB de caché L3.

Respuesta1

Como siempre ocurre con las preguntas sobre el almacenamiento en caché, la respuesta sería "depende completamente de su carga de trabajo". El caché solo es útil si los procesos en ejecución pasan una cantidad significativa de tiempo accediendo a la memoria.yexhiben una localidad de referencia notable para el direccionamiento de la memoria (y no están contentos con los cachés L1/L2 más pequeños presentes por núcleo para este asunto).

Tener una gran cantidad de procesos ejecutándose dentro de diferentes subprocesos aumenta las probabilidades de que se afecte la memoria caché compartida y, por lo tanto, disminuye las ganancias de rendimiento que posiblemente se habrían logrado de otro modo. Esta es también la razón para aumentar el tamaño de la caché con un mayor número de núcleos: cuantos más subprocesos que compitan por la memoria tenga en ejecución, es probable que sea más grande la caché compartida para que sea útil.

Hay un artículo antiguo deHardware de TomComparando dos chips P4 antiguos con y sin caché L3 para una serie de cargas de trabajo gráficas/de renderizado. Los números son basura, al igual que todo el punto de referencia, pero contiene una buena explicación de la arquitectura de almacenamiento en caché en general y del almacenamiento en caché L3 en particular.

La conclusión: probablemente no notarás la diferencia, pero si necesitas los números exactos, tendrás que comprar ambas CPU y ejecutar tu carga de trabajo en ambas para comparar los tiempos de ejecución.

Respuesta2

Las personas que dicen "un simple aumento de 20 MB en la caché L3" simplemente no saben de qué están hablando. Es probable que un aumento sensible en el tamaño de la caché para una arquitectura determinada provoque un aumento sensible en el rendimiento, incluso con una carga promedio. Esto es más cierto cuando se piensa en la arquitectura turbo boost implementada en los procesadores Sandy Bridge e Ivy Bridge.

Tuve la oportunidad de experimentar esto personalmente en varias etapas diferentes de la arquitectura x86/x86_64: Sempron vs Athlon, Celeron vs Pentium 4, Pentium4 vs Athlon, Pentium4-m vs Pentium-m, Pentium 4 vs Xeon, i7 vs Xeon E5. Siempre que el caché sea mayor (normalmente se duplica o casi se duplica).

Depende de usted si el costo de duplicar el caché es asequible. Pero los Xeon son mejores para la estabilidad, ya que admiten memoria ECC y tecnologías similares, que obviamente son imprescindibles en ciertas aplicaciones (como simulaciones 3D para fundición a presión de aluminio, que es mi caso).

Respuesta3

Según su descripción de lo que hace y cómo lo maneja su sistema actual, solo puedo preguntarme por qué desea reemplazarlo. En el mejor de los casos, la caché L3 daría un pequeño impulso, pero a un gran costo, pero en el caso de uso descrito no puede esperar ver ninguna diferencia resultante de un simple aumento de 20 MB en la caché L3.

información relacionada