Hoy hablaremos sobre herramientas abiertas para evaluar el rendimiento de procesadores, memoria, sistemas de archivos y sistemas de almacenamiento.
La lista incluye utilidades ofrecidas por residentes de GitHub y miembros de hilos temáticos en Reddit: Sysbench, UnixBench, Phoronix Test Suite, Vdbench e IOzone.
/ Unsplash / Veri IvanovaEsta es una utilidad para probar servidores de carga MySQL, basada en el proyecto LuaJIT, que desarrolla una máquina virtual para el lenguaje Lua. El autor de la herramienta es programador y experto en MySQL Alexey Kopytov. El proyecto comenzó como un pasatiempo, pero con el tiempo ganó el reconocimiento de la comunidad. Hoy en día, sysbench utiliza grandes universidades y organizaciones de TI
como IEEE en su trabajo.
Durante la conferencia SECR-2017 (hay una grabación del discurso
en YouTube ), Alexey dijo que sysbench le permite evaluar el rendimiento de la base de datos al cambiar de equipo, actualizar la versión de DBMS o cambiar drásticamente el número de consultas. En general, la sintaxis del comando para la prueba es la siguiente:
sysbench [options]... [testname] [command]
Este comando determina el tipo (CPU, memoria, archivo) y los parámetros de prueba de carga (número de subprocesos, número de solicitudes, velocidad de procesamiento de transacciones). En general, la herramienta es capaz de procesar millones de eventos por segundo. Alexey Kopytov habló con más detalle sobre la arquitectura y la estructura interna de sysbench en uno de los
temas del podcast Software Development Podcast .
Un conjunto de herramientas para evaluar el rendimiento de los sistemas Unix. Fue presentado por ingenieros de la Universidad de Monash en 1983. Desde entonces, muchas personas han estado apoyando la herramienta, por ejemplo,
Byte Magazine , el autor de la
revista de tecnología de microcomputadoras
, y David Niemi, miembro de LKML.
Anthony Voellm de Microsoft es responsable del lanzamiento de la próxima versión de la herramienta.
UnixBench es una colección de pruebas individuales. Comparan la velocidad de ejecución del código en una máquina que ejecuta Unix con el rendimiento del sistema de referencia, que es
SPARCstation 20-61. En base a esta comparación, se genera una puntuación de rendimiento.
Entre las pruebas disponibles se encuentran: Whetstone, que describe la efectividad de las operaciones de punto flotante, File Copy, que estima la velocidad de la copia de datos, y varios puntos de referencia 2D y 3D. Se puede encontrar una lista completa de pruebas en el repositorio en GitHub . Muchos de ellos usan máquinas virtuales en la nube para evaluar el rendimiento de las máquinas virtuales.
Este conjunto de pruebas fue desarrollado por los autores del recurso web Phoronix, que publica noticias sobre distribuciones GNU / Linux. El primer Test Suite se introdujo en 2008, luego incluyó 23 pruebas diferentes. Más tarde, los desarrolladores lanzaron el servicio en la nube
OpenBenchmarking.org , donde los usuarios podían publicar sus propios scripts de prueba. Hoy
presenta unos 60 kits de referencia, incluidos los relacionados con el aprendizaje automático y la tecnología de trazado de rayos.
Conjuntos de scripts especializados permiten probar componentes individuales del sistema. Con su ayuda, puede evaluar el tiempo de compilación del núcleo y la codificación de los archivos de video, la velocidad de compresión de los archivadores, etc. Para ejecutar las pruebas, simplemente escriba el comando apropiado en la consola. Por ejemplo, este comando inicia una evaluación del rendimiento de la CPU:
phoronix-test-suite benchmark smallpt
Durante las pruebas, Test Suite monitorea independientemente el estado del equipo (temperatura de la CPU y velocidad del refrigerador), protegiendo el sistema contra el sobrecalentamiento.
/ Unsplash / Jason Chen
Una herramienta para generar carga de E / S en sistemas de disco desarrollados por Oracle. Ayuda a evaluar el rendimiento y la integridad de los sistemas de almacenamiento (hemos preparado una
breve ayuda sobre cómo calcular el rendimiento teórico de un sistema de disco).
La solución funciona de la siguiente manera: en un sistema real, se inicia el programa SWAT (Sun StorageTek Workload Analysis Tool), que crea un volcado con todos los accesos al disco durante un período determinado. Se registran la marca de tiempo, el tipo de operación, la dirección y el tamaño del bloque de datos. Luego, usando el archivo de volcado, vdbench emula la carga en cualquier otro sistema.
La lista de parámetros para administrar la utilidad se encuentra en el
documento oficial de
Oracle . El código fuente de la utilidad se puede encontrar
en el sitio web de la compañía .
Utilidad de consola para evaluar el rendimiento del sistema de archivos. Determina la velocidad de lectura, escritura y sobrescritura de archivos. Decenas de programadores participaron en el desarrollo de la herramienta, pero se considera que el ingeniero de su primera versión
es el ingeniero William Norcott. El desarrollo fue apoyado por compañías como Apple, NetApp e iXsystems.
Para controlar los hilos y sincronizarlos durante las pruebas, la herramienta utiliza el estándar
POSIX Threads . Al finalizar el trabajo, IOzone emite un informe con los resultados en formato de texto o en forma de hoja de cálculo (Excel). La herramienta también incluye el script gengnuplot.sh, que crea un gráfico tridimensional a partir de los datos en las tablas. Se pueden encontrar ejemplos de tales gráficos en la documentación del instrumento (
p. 11-17 ).
IOzone está disponible como perfil de prueba en el ya mencionado Phoronix Test Suite.
Lectura adicional de nuestros blogs y redes sociales:
Un error en Linux 5.1 condujo a la pérdida de datos: ya se ha lanzado un parche de corrección
Algunos dicen que la tecnología DANE para navegadores ha fallado
¿Por qué es necesario el monitoreo?
Copia de seguridad de archivos: cómo estar a salvo de la pérdida de datos
¿Cómo transferir un disco duro del sistema a una máquina virtual?
Todos hablan de fugas de EP: cómo ayudará el proveedor de IaaS
Programa educativo breve: cómo se organiza la firma electrónica
Antecedentes: cómo funciona la ley de datos personales