RAID5: smart path vs. caché en discos SAS SSD y HDD

Las controladoras smart array de Hewlett Packard Enterprise tienen diferentes opciones de configuración, dependiendo del sistema las opciones por defecto pueden suponer un deterioro del rendimiento…

Tomamos como base para las pruebas un servidor HPE Proliant DL360 Gen10 (P06453-B21) con controladora Smart Array P408i-a SR (836260-001) con 2 GB de caché, batería y 8 líneas SAS en 2 puertos internos. Esto nos vendrá bien para los test, ya que vamos a utilizar 4 discos SAS 10K de 1.2 TB (876938-002) en un puerto contra 4 discos SAS SSD de 800 GB 12G (P19913-B21) en el otro puerto. Ambos configurados en RAID 5 (256 KiB / 512 KiB) sin caché de escritura habilitada e inicializados correctamente:

P408i a_Gen10 sobre hpe_smartarray

NOTA: al crear por primera vez el RAID, el cálculo de paridad se añade en cola, dependiendo de la configuración de la controladora puede tardar en iniciar y terminar el proceso, además se deben escribir datos sobre la unidad para comenzar

El sistema operativo Windows Server 2019 está actualmente sobre los discos SAS, esta comparativa no busca el detalle con ciertos parámetros que para otros sistemas deberían tenerse más en cuenta, sino la configuración por defecto y la recomendada en estas situaciones. Los drivers, software, firmware están actualizados con el último Service Pack para ProLiant (SPP) disponible en marzo de 2024

Al realizar la copia de archivos inicial era lenta… esto no debería pasar con discos de estado sólido frente a los antiguos SAS de 10.000 rpm… así que realizamos pruebas de rendimiento… Preguntamos al soporte de HPE si existía una herramienta oficial para medir en estos entornos… a lo que nos derivó a herramientas de terceros sin comentar ninguna en concreto… Inicialmente probamos con CrystalDiskMark, ATTO disk benchmark y IsMyHdOk. Utilizaremos las de CrystalDiskMark para ilustrar los cambios y establecer puntos de referencia:

P408i a_Gen10_SAS_HDD_RAID5_crystal sobre hpe_smartarray
RAID 5 SAS HDD
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_ON_crystal sobre hpe_smartarray
RAID 5 SAS SSD inicial

Vaya decepción… ¿como puede ser tan lenta una nueva unidad lógica sobre discos SSD? Aprovecho para especificar que los discos SSD son Mixed Use (MU) de entre todos los posibles, me repito, en otros entornos se debe evaluar en detalle las opciones disponibles. HPE implementa la funcionalidad Smart Path y la activa por defecto para los SSD… veamos si desactivándolo…

P408i a_Gen10_SAS_SSD_RAID5_SmartPath_ON_crystal sobre hpe_smartarray
RAID 5 SSD Smart Path ON
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_OFF_crystal sobre hpe_smartarray
RAID 5 SSD Smart Path OFF

Bueno… pequeña diferencia en este entorno pero todavía muy lejos de los discos mecánicos… al desactivar Smart Path se vuelve a habilitar la cache para el volúmen pero es necesario hacerlo manualmente, aquí mismo podemos ajustar el porcentaje destinado a escritura o lectura:

P408i a_Gen10_cache_config sobre hpe_smartarray
Smart Path ON sobre SSD
P408i a_Gen10_cache_config_smartPath_OFF sobre hpe_smartarray
Smart Path OFF sobre SSD

Utilizaremos la caché de la controladora sobre las dos unidades lógicas:

P408i a_Gen10_cache_config_smartPath_OFF_cache_ON sobre hpe_smartarray
Smart Path OFF, Caché ON

Y volvemos a lanzar la prueba de rendimiento sobre la unidad:

P408i a_Gen10_SAS_SSD_RAID5_SmartPath_OFF_crystal sobre hpe_smartarray
RAID 5 SSD Smart Path OFF, Caché OFF
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_OFF_CACHE_ON_crystal_01 sobre hpe_smartarray
RAID 5 SSD Smart Path OFF, Caché ON

Esto ya empieza a verse mejor en este escenario, aunque «ya que»… creo recordar que otro servidor más básico utilizaba SSD… vamos a «comparar» con un HPE ML110 Gen10 (P21440-421) con controladora S100i SR Gen 10 sin caché y discos SATA SSD Read Intensive 6G (8P18422-B21)

S100i_SR_Gen10_SSD_SmartPath_OFF_crystal sobre hpe_smartarray
Smart Path OFF
S100i_SR_Gen10_SSD_SmartPath_ON_crystal sobre hpe_smartarray
Smart Path ON

Curioso… se mejora en lectura… ¿entonces activo o desactivo, en qué quedamos? Si la controladora tiene caché y batería de respaldo, utilízala siempre, en discos SSD debes desactivar Smart Path para poder activarlo, en controladora más sencillas sí que puede suponer un pequeño aumento de rendimiento pero tocará hacer pruebas.

Para entornos reales en producción, mejor hacer mediciones en horas pico de uso si en el Monitor de recursos de Windows Server la longitud de la cola de disco permanece CONSTANTEMENTE por encima de 5-6 igual es momento de buscar otra solución en el almacenamiento…

monitor_recursos sobre hpe_smartarray
Ejemplo de copia intensiva sobre HDD (disco 0) y SSD (disco 1)

Observaciones adicionales

Podemos diferenciar diferentes tipos de caché:

  1. Caché de escritura: acelera las operaciones de escritura, escribe los datos inicialmente en la caché y posteriormente, el controlador gestiona el proceso de vaciar los datos almacenados en caché en discos físicos.
  2. Caché de reescritura (write-back): los datos se escriben en el caché y se confirman ante el sistema host inmediatamente. Luego, el controlador vacía gradualmente los datos en los discos. Ofrece un rendimiento de escritura mejorado y reduce el impacto de la latencia en cargas de trabajo con muchas escrituras.
  3. Caché de escritura simultánea (write-through): escribe datos inmediatamente en la caché y en los discos simultáneamente. No proporciona el mismo nivel de mejora del rendimiento que el write-back, pero garantiza la durabilidad de los datos en caso de cortes de energía.

Los SSD de grado empresarial pueden tener su propia RAM ¿interna persistente? no queda claro en ninguna configuración si la controladora lo habilita o utiliza en exclusiva la suya propia… En SSD domésticos, por ejemplo, Samsung 980 no lleva DRAM pero la versión 980 Pro sí. Un pequeño caos de especificaciones y versiones

La opción de SmartCache requiere de licencia (280 € PVP por servidor) por lo que no podemos probar la opción híbrida para almacenamiento, ni HPE suministra claves de prueba.

Los SSD requieren tácticas especiales para aprovechar al máximo sus capacidades de baja latencia. HPE SSD Smart Path permite el alto rendimiento de volúmenes lógicos basados ​​en SSD al permitir que ciertos tipos de solicitudes de E/S tomen una ruta más directa a los discos físicos, sin pasar por la mayoría de las capas de firmware del controlador RAID. SSD Smart Path está habilitado de forma predeterminada cuando crea una matriz.

El software del controlador del dispositivo HPE Smart Array se coordina con el firmware del controlador HPE Smart Array para

  • Mantenga la información de asignación de disco necesaria.
  • Decida qué solicitudes de IO son elegibles para HPE SSD Smart Path.

Todas las demás solicitudes, así como cualquier manejo de errores, aún se enrutan a través de la ruta de E/S normal en el controlador HPE Smart Array. Este método tiene los siguientes beneficios:

  • Beneficia las cargas de trabajo de E/S repetitivas y con mucha lectura utilizando la ruta acelerada.
  • Libera más capacidad de manejo de IO en la ruta de IO normal.
Manual técnico de HPE

Comparativas extra

P408i a_Gen10_SAS_SSD_RAID5_SmartPath_ON_atto sobre hpe_smartarray
SSD Smart Path ON
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_OFF_atto sobre hpe_smartarray
SSD Smart Path OFF
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_OFF_CACHE_ON_atto sobre hpe_smartarray
SSD Smart Path OFF, Caché ON
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_ON_hdok sobre hpe_smartarray
SSD Smart Path ON
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_OFF_hdok sobre hpe_smartarray
SSD Smart Path OFF
P408i a_Gen10_SAS_SSD_RAID5_SmartPath_OFF_CACHE_ON_hdok sobre hpe_smartarray
SSD Smart Path OFF, Caché ON

Otras referencias de mediciones

Pruebas de rendimiento de Samsung NVMe 980 Pro sobre AM4, no tiene que ver nada la tecnología, ni la plataforma pero por comparar…

NVMe_980_PRO_atto sobre hpe_smartarray
NVMe_980_PRO_crystal sobre hpe_smartarray
NVMe_980_PRO_hdok sobre hpe_smartarray

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *


El periodo de verificación de reCAPTCHA ha caducado. Por favor, recarga la página.