# Mida el rendimiento de NVMe sin engañarse a sí mismo | SwissOctet Insights https://swissoctet.com/es/insights/nvme-benchmark-methodology/ SwissOctet / Perspectivas / Almacenamiento y recuperación Almacenamiento y recuperación Avanzado · 6 min de lectura Mida el rendimiento de NVMe sin engañarse a sí mismo Defina el patrón de E/S, controle los efectos de caché e inspeccione las distribuciones de latencia antes de extraer una conclusión sobre la aplicación a partir de una prueba de disco. Por SwissOctet Editorial Guardar guía Copiar enlace EN ESTA PÁGINA 01 Comience con una pregunta sobre el almacenamiento, no con una puntuación 02 Describa la carga de trabajo en términos reproducibles 03 Controle el almacenamiento en caché sin pretender que no importa 04 Lea las colas de latencia junto con el rendimiento 05 Mantenga la prueba autorizada y no destructiva 06 Cierre el ciclo con evidencia de la aplicación Su lista de verificación práctica Fuentes y lecturas adicionales Volver a la biblioteca LA RESPUESTA DIRECTA Una prueba de almacenamiento útil hace coincidir el tamaño de la operación, el patrón de acceso, la concurrencia y los requisitos de durabilidad con la aplicación. Registre las condiciones de la prueba y la distribución de latencia, luego confirme el resultado con mediciones de la aplicación. 01 Comience con una pregunta sobre el almacenamiento, no con una puntuación Decida qué necesita saber antes de ejecutar un benchmark. Puede estar investigando confirmaciones de base de datos lentas, el rendimiento de distribución de archivos o un proceso de compilación que crea muchos archivos pequeños. Esas cargas de trabajo no le piden al disco lo mismo. Una copia secuencial grande puede parecer impresionante mientras dice poco sobre el retraso que experimenta un servicio que realiza pequeñas lecturas aleatorias. NVMe fue diseñado para medios no volátiles y E/S paralela eficiente, pero el nombre de su protocolo no describe cada parte de una ruta de almacenamiento alojada. La virtualización, el sistema de archivos, la contención de recursos y la aplicación siguen importando. Escriba una hipótesis de prueba, como si la latencia del almacenamiento está ralentizando una operación concreta, en lugar de intentar producir un número que demuestre que todo el servidor es rápido. 02 Describa la carga de trabajo en términos reproducibles Registre el tamaño de la operación, el patrón secuencial o aleatorio, la proporción de lectura a escritura, el número de trabajos y la profundidad de cola. Incluya el tamaño del conjunto de datos y la duración de la prueba. La documentación de fio explica estos controles de carga de trabajo y los motores de E/S disponibles. Es posible que no todos los motores o configuraciones alcancen la profundidad prevista, así que lea el comportamiento informado además de la configuración que solicitó. Conserve una copia de la descripción de la prueba junto al resultado. Anote el sistema operativo, el sistema de archivos, las opciones de montaje, la actividad del servicio y la capacidad disponible. Si compara configuraciones, cambie una condición relevante a la vez. Una prueba con un patrón de acceso o una concurrencia diferentes no puede presentarse de forma justa como si solo hubiera cambiado el medio de almacenamiento. Patrón de la aplicación Dimensión de la prueba que se debe describir Resultado que se debe examinar Entrega de archivos grandes Lecturas secuenciales y clientes concurrentes Rendimiento sostenido y uso de CPU Búsqueda de registros Lecturas aleatorias pequeñas y concurrencia representativa Distribución de latencia y operaciones completadas Transacción duradera Requisitos de escritura y sincronización Retraso relacionado con la confirmación, no solo la velocidad de escritura en búfer Compilación o extracción Operaciones mixtas con archivos pequeños Duración del trabajo de extremo a extremo y esperas de E/S 03 Controle el almacenamiento en caché sin pretender que no importa Un conjunto de datos que cabe en memoria puede medir principalmente el comportamiento de la caché después de la primera pasada. Eso puede ser útil si la aplicación normalmente se beneficia de la misma caché, pero no debe etiquetarse como rendimiento bruto del dispositivo. Elija deliberadamente si la prueba examina una ruta de aplicación en caliente, un conjunto de datos más frío o un modo de E/S destinado a reducir el efecto de almacenamiento en búfer del sistema operativo. La compatibilidad y la alineación de E/S directa dependen de la plataforma y el motor. Tampoco expresa automáticamente los requisitos de durabilidad de la aplicación ni elimina todas las cachés de la pila. Indique claramente el modo elegido y evite comparar una prueba con búfer con una prueba sin búfer como si representaran el mismo trabajo. Mantenga separados los intervalos de calentamiento y de medición cuando eso ayude a la interpretación. 04 Lea las colas de latencia junto con el rendimiento La latencia promedio puede ocultar operaciones lentas que afectan a solicitudes reales. Examine los percentiles informados y el número de muestras que los respaldan. Un percentil alto describe el límite por debajo del cual cayó una fracción declarada de las operaciones observadas durante esa prueba; no es una garantía de servicio permanente. Las ejecuciones cortas o no representativas ofrecen evidencia limitada sobre los períodos de producción con mucha carga. Una mayor profundidad de cola puede mejorar el rendimiento completado mientras aumenta el tiempo de espera. Esa compensación puede convenir al procesamiento por lotes y perjudicar a un servicio interactivo. Compare los resultados con una concurrencia similar a la de la aplicación y supervise CPU y la presión de E/S al mismo tiempo. Deténgase antes de que la prueba cree una interrupción innecesaria para otra carga de trabajo que comparte el entorno. 05 Mantenga la prueba autorizada y no destructiva Use un directorio de prueba dedicado o un volumen desechable preparado, con suficiente espacio libre y un plan de limpieza explícito. Nunca apunte un benchmark de escritura a un dispositivo sin verificar o a un conjunto de datos de producción. Compruebe el destino y el comportamiento de escritura de la herramienta antes de comenzar, y empiece con una ejecución limitada. La E/S sintética puede consumir capacidad e interferir con los servicios incluso cuando no sobrescribe archivos útiles. Para una evaluación similar a la de producción, acuerde una ventana de mantenimiento y mantenga la monitorización de la aplicación. Utilice datos fabricados cuando sea posible. No infiera la fiabilidad del almacenamiento a partir de una prueba de velocidad: las comprobaciones de integridad, las copias de seguridad y la restauración son tareas separadas. Un dispositivo que completa un benchmark todavía necesita una estrategia de recuperación para eliminaciones, errores de software o pérdida de la máquina. 06 Cierre el ciclo con evidencia de la aplicación Suponga que un servicio de informes pasa gran parte de su tiempo esperando lecturas aleatorias. El equipo prueba un patrón de lectura representativo y luego repite el informe real con datos comparables. Si el informe mejora mientras el resto de su trabajo permanece estable, el resultado respalda la hipótesis del almacenamiento. Si no lo hace, investigue el diseño de las consultas, la memoria u otra dependencia en lugar de repetir pruebas sintéticas más amplias. Pulse NVMe y determinadas configuraciones dedicadas incluyen almacenamiento NVMe en el catálogo SwissOctet. Sus etiquetas son especificaciones, no benchmarks de aplicaciones publicados. Utilice un método controlado para evaluar el entorno entregado y conserve las condiciones junto con los hallazgos. La decisión se vuelve más sólida cuando la medición del almacenamiento y el resultado visible para el usuario responden a la misma pregunta. CONVIÉRTALO EN ACCIÓN Su lista de verificación práctica. ✓ Defina primero la pregunta de la aplicación. ✓ Registre el patrón, el tamaño de bloque, la concurrencia y la duración. ✓ Indique los supuestos de caché y modo de E/S. ✓ Inspeccione los percentiles de latencia además del rendimiento. ✓ Use un destino desechable verificado y una carga inicial limitada. ✓ Confirme el hallazgo con una prueba de la aplicación. Descargar lista de verificación PREGUNTAS FRECUENTES Los detalles que importan. ¿Basta una copia secuencial para comparar el almacenamiento de una base de datos? + Normalmente no. El acceso a la base de datos puede implicar pequeñas lecturas aleatorias, escrituras y sincronización. Modele el patrón relevante y verifique la aplicación real. ¿La E/S directa demuestra escrituras duraderas? + No. El almacenamiento en búfer y la durabilidad son cuestiones separadas. Ajuste el comportamiento de sincronización que requiere la aplicación. ¿Puedo publicar una prueba como velocidad garantizada del plan? + No. Publique sus condiciones y su alcance. Un resultado medido de una ejecución no es una garantía de nivel de servicio ni de rendimiento futuro. REFERENCIAS PRINCIPALES Vaya a la fuente. Estas referencias respaldan los conceptos técnicos de esta guía. Consulte la documentación actual antes de cambiar un sistema de producción. fio: Documentación del probador de E/S flexible fio.readthedocs.io NVM Express: Descripción general de la especificación y preguntas frecuentes nvmexpress.org Kernel de Linux: Pressure Stall Information docs.kernel.org Orientación editorial de SwissOctet. Los ejemplos son ilustrativos. Las especificaciones del servicio, las opciones disponibles y las condiciones contractuales deben verificarse por separado. CONECTE EL CONOCIMIENTO Infraestructura relacionada. Pulse NVMe Suiza Metal Hyper Suiza Metal EPYC Suiza MANTENGA EL HILO Sus próximas notas de campo. Explore todas las guías NOTA DE CAMPO / 01 + Almacenamiento y recuperación Fundamentos Cuándo NVMe marca la diferencia en su aplicación Distinga capacidad, latencia y rendimiento para que una etiqueta de almacenamiento más rápido responda a un problema real de la aplicación. 4 min de lectura Lea la guía NOTA DE CAMPO / 02 + Almacenamiento y recuperación Aplicado Instantáneas y copias de seguridad: elija el fallo que necesita sobrevivir Compare puntos de recuperación, límites de fallo y consistencia de la aplicación en lugar de asumir que una instantánea y una copia de seguridad independiente ofrecen la misma protección. 4 min de lectura Lea la guía NOTA DE CAMPO / 03 + Almacenamiento y recuperación Fundamentos Almacenamiento de objetos, archivos o bloques: elija la interfaz que necesita su aplicación Distinga las interfaces de almacenamiento, la semántica de acceso y las responsabilidades operativas antes de convertir un requisito de capacidad en una arquitectura de aplicación. 4 min de lectura Lea la guía