KINGSTON.COM Mejor práctica para servidores: Referencia de rendimiento Canales, frecuencia y rendimiento de la memoria Aunque la mayoría de gente no se da cuenta, el mundo funciona a través de muchos diferentes tipos de bases de datos, todos ellos con un elemento en común: la necesidad de una memoria de alto rendimiento que proporcione datos de una manera rápida y fiable. Desde el momento en que nos despertamos con una llamada procesada por la base de datos de registro de clientes de nuestros proveedores de servicios celulares, al pago semanal electrónico por las compras procesado por la base de datos de transacciones de instituciones financieras, a nuestra experiencia de transmisión en tiempo real de películas a altas horas de la noche proporcionándonos una base de datos de recomendaciones de películas basadas en nuestros hábitos de visualización, todas y cada de estas bases de datos ofrecen respuesta a muchas de nuestras consultas diarias y deben ejecutarse ininterrumpidamente de manera rápida, además de ir aumentando de una manera dinámica para satisfacer las necesidades del cliente. Proporcionar datos mediante un rendimiento continuado e integridad de las transacciones no es una tarea fácil y a menudo requiere bases de datos integradas en memoria que nos faciliten esas recomendaciones de visualización u otros datos relacionados de un modo casi inmediato para diversos usuarios. La bases de datos integradas en memoria (IMDB) confían principalmente en el uso de grandes capacidades y, lo que es más importante, en memorias Dynamic Random Access Memory (DRAM) de alto rendimiento. Presentan la capacidad de dar respuesta a un gran volumen de solicitudes hasta x veces más rápido que las bases de datos tradicionales vinculadas a discos, además de servir como núcleo en cualquier escenario que requiera tiempos de respuesta rápidos en el momento de consultar datos útiles y pueden usarse para complementar aplicaciones con datos de gran volumen. Los módulos Dual In-line Memory Module (DIMM) de memoria basados en la tecnología Double Data Rate (DDR3) Synchronous Dynamic Random Access Memory (SDRAM) se ofrecen en diferentes capacidades y velocidades. A la velocidad de un módulo de memoria se le refiere a menudo como frecuencia de la memoria y se mide en MegaHertz (MHz). La frecuencia de la memoria presenta una relación directa con su rendimiento, es decir, a medida que la frecuencia de la memoria aumenta, también lo hace su rendimiento. La memoria DRAM es, no obstante, tan solo una pieza del engranado a la hora de lograr un rendimiento óptimo del subsistema de la memoria. Mejor práctica para servidores: referencia de rendimiento Se hace necesario disponer de un controlador de la memoria que permita gestionar dicho subsistema. Asimismo, las diversas normas de alimentación que rigen dicho controlador de la memoria van a afectar su frecuencia o velocidad, además de la latencia a la que puede gestionarse un módulo de memoria. Los controladores de memoria de las más recientes generaciones ahora van integrados en los procesadores con el objetivo de proporcionar un mejor rendimiento; sin embargo, ello requiere atención, puesto que algunos controladores de memoria solo pueden ejecutar el subsistema de la memoria a un ancho de banda de la memoria máximo de 800MHz. Al usar las 24 ranuras disponibles de los módulos DIMM (Dual Inline Memory Module) de las plataformas Romley de Intel® conectadas al subsistema de la memoria de la serie Intel Xeon E5, podemos calibrar el ancho de banda continuado de la memoria en diferentes configuraciones usando el banco de pruebas de memoria STREAM integrado en SiSoft Sandra 2012 a partir de diferentes alimentaciones de los canales de la memoria y velocidades. La serie Intel Xeon E5 incorpora numerosas mejoras de rendimiento en comparación con la generación anterior de los procesadores de servidor Xeon 5500 y Xeon 5600, que incluye dos actualizaciones importantes relacionadas con el rendimiento y que se tratan en este artículo: memorias de cuatro canales que gestionan y admiten velocidades de memoria de DDR3 (Double Data Rate) a 1600MHz (MegaHertz) con una microarquitectura QuickPath Interconnect (QPI) más rápida a 8 GigaTransferencias por segundo (GT/s), que beneficia el ancho de banda de la conectividad disponible en favor de una menor latencia en el sistema de la memoria. Mejor práctica para servidores: referencia de rendimiento Rendimiento a partir de la alimentación de los canales Figura 1. Rendimiento a partir de la alimentación de los canales calibrado con SiSoft Sandra 2012 La configuración de las pruebas incluyó el banco de pruebas de memorias SiSoftware Sandra 2012 en la plataforma Romley S2600GZ de Intel con dos procesadores Xeon E5-2665 a 2,40GHz y 64GB de memoria (2 x KVR16R11D4K4/32 a 1600MHz) instalados. Hyperthreading de CPU y funciones de ahorro de energía deshabilitados. Tal como se aprecia en la figura 1, el rendimiento del subsistema de la memoria aumenta casi linealmente desde la configuración más lenta, un único canal de memoria alimentado en cualquier controlador de memoria de procesador Xeon por un único módulo de memoria DDR3 a 1600 MHz de 8 Gigabytes (GB); hasta la más rápida, que usa cuatro canales (también conocido como subsistema de memoria) alimentado por 1 DIMM por canal (DPC) con cuatro módulos de memoria de 8GB a 1600MHz y que alimenta cada ranura de la memoria en el primer banco de memoria disponible de cada procesador. Incluso con una mayor carga eléctrica de una configuración de cuatro canales (1 DPC), se observa un aumento cuadriplicado del rendimiento del subsistema de la memoria a ~70GB/s comparado con una configuración de un único canal, una solución ideal para aplicaciones que requieren un alto rendimiento de las aplicaciones que exigen muchos recursos tales como IMDB. Mejor práctica para servidores: referencia de rendimiento Rendimiento a partir de la frecuencia de la memoria Figura 2. Rendimiento relativo a partir de la frecuencia de la memoria calibrado con SiSoft Sandra 2012 La configuración de las pruebas incluyó el uso del banco de pruebas de memoria SiSoftware Sandra 2012 en la plataforma Intel Romley S2600GZ con dos procesadores Xeon E5-2665 a 2,40GHz y 192GB de capacidad de la memoria (2 x KVR16R11D4K4/32) instalados.Hyperthreading de CPU y funciones de ahorro de energía deshabilitados. En la figura 2, se han utilizado los mismos ocho módulos de memoria DDR3 de 8GB ejecutándose a cuatro velocidades (MHz) de memoria diferentes simétricamente en ambos subsistemas de memoria de la serie Intel Xeon E5 a fin de lograr una configuración equilibrada y dar con el rendimiento en el mejor de los casos de todas las velocidades de la memoria. Ejecutando los módulos de memoria a 800MHz, podemos apreciar cómo se obtiene el rendimiento más lento, con velocidades de transferencia continuadas de ~40GB/s habiendo sido calibradas con el banco de pruebas de memoria STREAM integrado con SiSoft Sandra 2012. A medida que vamos ampliando a una frecuencia más alta, podemos apreciar cómo el rendimiento de la memoria aumenta casi linealmente hasta un máximo de ~70GB/s al ejecutarse a 1600MHz, lo que es ideal para aquellos entornos en los que los recursos escritos en la memoria requieren el rendimiento más alto posible para permanecer eficaces. Mejor práctica para servidores: referencia de rendimiento Capacidades de la memoria frente al rendimiento de la frecuencia Figura 3. Capacidades de la memoria frente al rendimiento de la frecuencia calibrados con SiSoft Sandra 2012 La configuración de las pruebas incluyó el uso del banco de pruebas de memoria SiSoftware Sandra 2012 en la plataforma Romley S2600GZ de Intel con dos procesadores Xeon E5-2665 a 2,40GHz y 192GB de memoria (KVR16R11D4K4/32) instalados. Hyperthreading de CPU y funciones de ahorro de energía deshabilitados. Para concluir nuestro estudio sobre el rendimiento de memorias, en la figura 3 observamos el rendimiento de un subsistema de memoria alimentado con 192GB de memoria ejecutándose a 1066MHz frente a una configuración que usa 128GB y 64GB de memoria, ambos ejecutándose a 1600MHz. El aumento de la capacidad de la memoria al ejecutarse a la misma velocidad de 1600MHz usando bien 128GB (16x 8GB) bien 64GB (8 x 8GB), extendidos de manera simétrica a ambos subsistemas de la memoria muestra el mismo rendimiento continuado de aproximadamente 70GB/s. Una mayor capacidad de la memoria de 192GB (24 x 8GB), aunque se ejecute a una frecuencia menor de 1066MHz, indica una caída insignificante de ~17GB/s en el rendimiento sostenido en favor de un aumento de la capacidad de la memoria. Mejor práctica para servidores: referencia de rendimiento Conclusión Ateniéndonos a las normas de alimentación de canales específicas del procesador del servidor y del controlador de la memoria, obtenemos el equilibrio adecuado para la optimización para un mejor rendimiento de nuestra memoria: usando pasos tan sencillos como alimentar los cuatro canales de la memoria y, con ello, aumentar el rendimiento de la memoria en hasta cuatro veces, aumentando el rendimiento de la inversión (ROI) al tiempo que, simultáneamente, reducimos el coste total de propiedad (TCO) con respecto al ciclo de vida del servidor. Referencias [1] Predicción de las preferencias del usuario en películas usando la bases de datos de NetFlix, Departamento de Ingeniería Eléctrica e Informático de la Universidad Carnegie Mellon. http://users.ece.cmu.edu/~dbatra/publications/assets/goel_batra_netflix.pdf [2] Control de calidad SiSoft Sandra - Banco de pruebas de memorias, SiSoftware http://www.sisoftware.co.uk/?d=qa&f=ben_mem&l=en&a= [3] Hoja informativa sobre la serie de productos de procesadores E5-2600 de Intel® Xeon®, Intel® http://download.intel.com/newsroom/kits/xeon/e5/pdfs/Intel_Xeon_E5_Factsheet.pdf © 2013 Kingston Technology Europe Ltd y Kingston Digital Europe Ltd, Kingston Court, Brooklands Close, Sunbury-on-Thames, Middlesex, TW16 7EP, Reino Unido. Tel: +44 (0) 1932 738888 Fax: +44 (0) 1932 785469 Reservados todos los derechos. Todos los nombres de empresas y marcas registradas son propiedad de sus respectivos dueños. MKF-549