Mostrando entradas con la etiqueta memoria. Mostrar todas las entradas
Mostrando entradas con la etiqueta memoria. Mostrar todas las entradas

jueves, 2 de febrero de 2017

BIOS y ahorro de energía memoria en DDR3 o DDR4 – LowLevelHardware

Si somos usuarios de un sistema con una placa base de gama media o gama alta tendremos a nuestra disposición cientos de ajustes en BIOS para optimizar nuestra máquina.

20151130_085658Ajustes manuales DDR3.

Estos ajustes finos ciertamente pueden marcar la diferencia y hacer que nuestro sistema sea muy superior en todos los aspectos a uno configurado con los mismos componentes por defecto:

  • Rendimiento y velocidad de proceso muy superior (más del 50%).
  • Temperaturas mucho más controladas en cada componente.
  • Menor nivel de ruido de refrigeración.
  • Consumo total de la máquina muy reducido (en ocasiones en cientos de watt).

Sería fácilmente cuestión de cientos de artículos y cientos de miles de palabras detallar estos ajustes y todas sus posibles combinaciones en función del hardware específico, requiere un minucioso estudio de los whitepapers de cada procesador, chipset, placa base e implementación específica de cada BIOS.

En este artículo me referiré a una máquina con un procesador Core i7 3770K hand picked (seleccionado entre decenas de samples) configurada a 4.4 GHz a un voltaje muy reducido de solo 0.020 V superior al nominal mediante offset y con estabilidad absoluta con estos ajustes.

DRAM Power Management and Initialization

Aquí dejo enlaces a los Datasheet PDF relativos a:

La tercera generación Intel Core, Ivy Bridge 22 nm. (parte 1, parte 2).

La cuarta generación Intel Core, Haswell 22 nm. (parte 1, parte 2).

La quinta generación Intel Core, Broadwell 14 nm. (parte 1, parte 2).

La sexta generación Intel Core, Skylake 14 nm. (parte 1, parte 2).

En la sección 4.3.2 del manual en PDF 3rd-gen-core-desktop-vol-1-datasheet.pdf se detallan los ajustes que nos interesan relativos a la gestión de energía de las controladoras de memoria del procesador y de los módulos DDR3.

DRAM_Power_Management_and_Initialization_01DRAM Power Management and Initialization

En síntesis, los ajustes posibles serían:

Deshabilitar totalmente la gestión de energía para obtener las máximas prestaciones (opción 1 de la captura inferior).

Buscar un compromiso óptimo entre prestaciones y consumo (APD – PPD, opción 5).

Ir al máximo ahorro energético, menor consumo y disipación térmica (opción 4).

DRAM_Power_Management_and_Initialization_02DIMM Power Down modes.

En todas las máquinas que diseño me decanto por el ajuste central, el punto 5, APD – PPD, el óptimo compromiso.

DDR3_APD-PPDEl modo APD – PPD ofrece el compromiso perfecto.

En el caso que nos ocupa se consiguen ahorrar 6W de consumo en reposo (idle) y en uso normal (internet, compresión de datos, …) se mantiene en valores similares.

Es importante configurar el siguiente ajuste:

DDR3_Fast_ExitDDR DIMM Fast Exit Mode proporciona ahorro de energía con baja latencia de salida.

Con el ajuste de ahorro de energía deshabilitado no se consigue más velocidad de proceso ni mejores tiempos de cálculo en coma flotante o compresión de datos… pese a lo que sea lógico pensar.

Por ejemplo en WinRAR 5.21 x64, las velocidades y consumos son los siguientes:

Ajuste APD – PPD. Consumo de 94 a 109W y velocidad máxima 10459 KB/s.

Ajuste disabled. Consumo de 98 a 112 W y velocidad máxima 10467 KB/s.

Como podéis ver, no hay cambios significativos en la velocidad de compresión de datos y en cambio se ahorran 3 – 4 W en este test intensivo de memoria.

WinRARWinRAR en modo APD – PPD.

Como antes he señalado, en modo de reposo en el escritorio de Windows, se consiguen 6 W de bajada de consumo en el enchufe para un total de 48W (con 16 GB DDR3 2133 y el ajuste @ 4.4 GHz, SSD Samsung Evo 850 250 GB, disco duro 4 TB WD Caviar Black, tarjeta gráfica AMD 260X GCN 2 GB, tarjeta de sonido SB X-Fi y unidad óptica) desde los 54W con el ahorro de energía de la memoria DDR deshabilitado.

Si consideras útil el contenido de este Blog, ayuda a mantenerlo ojeando algunas de las ofertas que consideres interesantes de nuestros anunciantes. Gracias de antemano.

El que tenga dudas o aportaciones tiene para ello la sección de comentarios, intentaré responder a todos y con la máxima claridad. Los Blogs deben de ser lugares de intercambio y agradezco vuestro feedback.

Memoria G.Skill DDR4 4133 – LowLevelHardware

G.Skill ha lanzado al mercado módulos DDR4 de 8 GB @ 4.133 GHz y 1.40 V para los procesadores Core i7 de sexta generación Skylake de 14 nm, los Core i7 6700K.

Core_i7_6700K_4GHzCore i7 Skylake 14 nm 6700K funcionando a 4.2 GHz.

Los roadmap oficiales JEDEC para DDR4 ya apuntaban desde los inicios del standard a velocidades máximas nominales de 4.266 GHz, del mismo modo que en su día, al lanzar en sus inicios la DDR3 se habló de 1.6 GHz y posteriormente 2.133 GHz.

A día de hoy, módulos de este tipo son de una utilidad limitada por sus pésimos timings, llevados al límite para lograr estabilidad a frecuencias superiores a los 4 GHz:

GSkill_DDR4_4133_8GB_Timnings_640Memory timings de G.Skill DDR4 4133.

Como vemos a 3.6 GHz todavía conserva buenos timings de 16 16 16 36 2N pero al llegar a 3.866 GHz y 4.0 GHz se degradan mucho hasta los 18 22 22 42 2N y 19 21 21 41 2N respectivamente.

GSkill_DDR4_4133_8GB_XMPPerfiles XMP del módulo 8 GB DDR4 G.Skill 4.133 GHz.

Lo notable es el voltaje de solo 1.35 V, que no es elevado pensando en las altísimas frecuencias.

En el ajuste de 4.133 GHz necesitan ya un voltaje de 1.40 V y empeoran las latencias hasta 19 25 25 45 2N… simplemente para “homologar” que llegan a esa frecuencia para un ancho de banda por canal de 33.064 GB/s (66.128 GB/s en dual channel).

GSkill_DDR4_4133_8GB_TimingsA 4.133 GHz se degradan en gran manera los timings.

Seguramente yo me quedaría con el ajuste a 3.6 GHz a 16 16 16 36 2N @ 1.35 V en dual channel por su baja latencia. Este ajuste daría un ancho de banda de 28.8 GB/s por canal para un total de 57.6 GB/s, ¡¡simplemente brutal!!

GSkill_DDR4_4133_8GB_640[3]

Si consideras útil el contenido de este Blog, ayuda a mantenerlo ojeando algunas de las ofertas que consideres interesantes de nuestros anunciantes. Gracias de antemano.

El que tenga dudas o aportaciones tiene para ello la sección de comentarios, intentaré responder a todos y con la máxima claridad. Los Blogs deben de ser lugares de intercambio y agradezco vuestro feedback.

Intel Core i7 2600 K. Análisis cachés L0i 6 KB y L3 unificada 8 MB – LowLevelHardware

Con Sandy Bridge, Intel ha innovado en el diseño de cachés y como primicia nos ofrece una caché L0i (caché de instrucciones) que contiene instrucciones ya decodificadas procedentes de la caché L1 de 32 KB y 8 vías a través de los decoders x86.

La micro op cache o L0i de 1500 micro ops

DCache_RAM_Lat_rmma_20110209_055954_0734Data caches: observamos las cuatro zonas de caché y la RAM.

La caché de instrucciones de nivel 0 (L0i) de los procesadores Sandy Bridge es una caché de micro operaciones, es decir, de instrucciones ya descodificadas en un formato interno, propietario del procesador.

Para un análisis a fondo de la micro op cache os recomiendo el siguiente enlace:

Intel Sandy Bridge Core i7 2600 K. Análisis X86 decoders y L0i micro op cache – ProfessionalSAT

La caché L1i e igualmente los niveles superiores contienen las complicadas instrucciones X86 sin descodificar. Intel, que en su día diseño la ISA X86, sabe que es compleja y a veces absurda en su arquitectura y por ello ha tomado esta medida novedosa, la inclusión de un nuevo nivel de caché L0.

SB_uopcacheL0i en Sandy Bridge.

La tasa de aciertos se cifra en torno al 80% para un tamaño sobre los 6 KB y una transferencia pico de 32 bytes / ciclo.

En las prueba de bajo nivel que he realizado su tamaño efectivo ronda los 2 a 4 KB, con unas latencias prácticamente ridículas de 2 ciclos load to use en lectura secuencial o en acceso pseudo aleatorio.

rmma_20110209_064736_0281Instruction cache: la L0i obtiene una increíble latencia de 2 ciclos.

En acceso aleatorio puro (random access) su tasa de aciertos es cero (lógicamente las instrucciones no pueden estar decodificadas y cacheadas previamente a su petición ya que se trata de un patrón aleatorio) y se dan en su caso aciertos de L1i (L1i hits) con los habituales 4 ciclos de latencia.

Caché L3 unificada y multibanco de 8 MB y 16 vías

Sandy Bridge cuenta con una L3 con cuatro bancos de 2 MB y 16 vías. El acceso al banco local de cada core se hace directamente y con baja latencia. A los otros tres bancos  se llega a través del Ring Bus.

SB_4C_630p_coresSandy Bridge 32 nm. Bajo cada core está su banco local L3 de 2 MB.

L3_Lat_2048K_M2_rmma_20110211_135757_0687Acceso L3 con bloque de 2048 KB.

La latencia efectiva se sitúa en los 34 ciclos en acceso pseudo aleatorio y en 40 ciclos en modo random (aleatorio). Son resultados muy brillantes.

SandyBridge_dieEl core de Sandy Bridge junto con su banco local L3 de 2 MB.

Para tamaños de acceso mayores de 2 MB, el núcleo de ejecución se ve obligado a acceder a bancos de L2 de 2 MB no locales a través del Ring Bus. Por ello, lógicamente la latencia se incrementa.

L3_Lat_6144K_M2_rmma_20110211_140032_0843Acceso L3 con bloque de 6 MB (6144 KB).

En los Core i7 2600K contamos con la implementación completa de cuatro bancos L3 para un total de 8 MB, en otras versiones inferiores Intel deshabilita uno de los bancos quedando en 6 MB L3.

Conclusiones

Esperad en breve una ampliación de este artículo, tengo bastantes datos técnicos y microarquitecturales que agregar pero voy realmente mal de tiempo… En concreto estoy preparando un análisis más exhaustivo de la L0i o micro op cache incluyendo una investigación del ancho de banda de descodificación con distintos tipos de instrucciones.

Espero que con esta pequeña introducción tengáis material suficiente para pensar como se mejora un diseño ya excelente partiendo de un core Nehalem / Westmere.

Si consideras útil el contenido de este Blog, ayuda a mantenerlo ojeando algunas de las ofertas que consideres interesantes de nuestros anunciantes.

MEMCON10: DDR4 y roadmap de memoria 2015 - LowLevelHardware

El pasado mes de Julio se celebró la convención MEMCON10, donde acuden los principales fabricantes y diseñadores de chips de memoria así como otros expertos en la materia. En este congreso se definieron los roadmaps futuros en el campo de las memorias de acceso aleatorio para sistemas de todos los segmentos y se analizaron las previsiones pasadas y sus desviaciones con la realidad actual.

 7 Roadmap RAM hasta 2015. Fuente: MEMCON10.

En los sistemas actuales la memoria de uso generalizado es DDR3 en frecuencias desde los 1.066 GHz hasta los 1.6 GHz y en modelos concretos llegamos hasta los 2.5 GHz, se estima que el zenit de la memoria DDR3 se alcanzará en los 2.133 GHz a 1.5 V en módulos estándar (como ahora lo son los DDR3 1.333 GHz) a finales de 2014.

b  El cruce en producción DDR2 vs. DDR3 se produjo a principios de 2010.

El desarrollo de DDR4 se ha dilatado en el tiempo más de lo esperado, y esto ha creado la necesidad de crear bins de mayor velocidad en DDR3, lo que nos llevará hasta los 2.133 GHz. La previsión inicial detallaba la DDR4 en sistemas ya en 2013:

6  Roadmap inicial, posicionaba DDR4 en 2013.

El tiempo ha demostrado que es más prudente asegurar el desarrollo de DDR4 y mientras tanto seguir con DDR3 poniendo énfasis en la reducción de voltaje para moderar el consumo.

1  El estado presente de las tecnología RAM.

Como todos sabemos, en el segmento de GPUs la memoria estrella es la GDDR5 en frecuencias que rondan ya los 5 GHz en productos finales (ATI de la serie HD5000) y hasta 7 GHz en chips discretos que serán integrados en la siguiente generación (ATI Southern Islands, ATI HD6000).

m  Proyecciones para DDR4.

En 2015 llega DDR4 con frecuencias iniciales de 2.133 GHz y 1.20 V. Con posibilidad de llegar en futuro sobre los 4.266 GHz. En 2013 se estima estar sobre los 3.2 GHz. Más allá se abre el terreno a la especulación, pero estaremos ya en 2018…

8  Consumos estimados para cada generación de DRAM.

Como vemos, la disipación térmica obliga a ir reduciendo constantemente el voltaje de los chips y con ello su consumo pero con ello se incrementa la sensibilidad al ruido de los canales de transferencia de datos obligando a los diseñadores a agudizar el ingenio con soluciones innovadoras.

Se estima que la DDR3 irá reduciendo su voltaje hasta los 1.25 V en el final de su evolución y la DDR4 empezará en 1.20 V e irá paulatinamente reduciéndolo hasta los 1.05 V.

En las primeras versiones, DDR4 disipará más calor que la DDR3 de voltaje reducido, para, en sucesivas revisiones ir reduciendo su consumo.

d  Conforme avanzan los procesadores multicore aumenta la necesidad de mayor ancho de banda.

La preocupación principal de los expertos estriba en los voraces requerimientos de los procesadores multicore actuales y en su desmedido crecimiento año a año.

La industria de la memoria no es capaz de proporcionar incrementos prestacionales de tal calibre y aumenta cada vez más el vacío de velocidad y latencia entre los cores y la memoria principal.

Para paliar este fenómeno cada vez se integran cachés multinivel de estructura y gestión más compleja y mayores tamaños, así como se amplia en la medida de lo posible el acceso multicanal a los bancos de memoria RAM.

Si consideras útil el contenido de este Blog, ayuda a mantenerlo ojeando algunas de las ofertas que consideres interesantes de nuestros anunciantes.