NBench , abreviatura de Benchmark modo nativo y más tarde conocido como BYTEmark , es un sintético cómputo de referencia programa desarrollado a mediados de la década de 1990 por la desaparecida revista BYTE destinado a medir de una computadora CPU , FPU y memoria de sistema de velocidad.
Historia
NBench es esencialmente la versión 2 del programa de referencia BYTEmark de BYTE Magazine (anteriormente conocido como Native Mode Benchmarks de BYTE), publicado alrededor de 1995, que fue solo unos años antes de que la revista dejara de publicarse. NBench está escrito en C e inicialmente se centró en las PC que ejecutan el sistema operativo Microsoft Windows . Independientemente de BYTE, en 1996 NBench fue portado a Linux y otras versiones de Unix por Uwe F. Mayer. [1] Más recientemente, Ludovic Drolez preparó una aplicación NBench para el sistema operativo del dispositivo móvil Android . [2] NBench no debe confundirse con AMD N-Bench de nombre similar pero no relacionado. [3]
Diseño
El paquete de algoritmos NBench consta de diez tareas diferentes: [4]
- Ordenación numérica: ordena una matriz de enteros largos.
- Clasificación de cadenas: ordena una matriz de cadenas de longitud arbitraria.
- Bitfield: ejecuta una variedad de funciones de manipulación de bits.
- Punto flotante emulado: un pequeño paquete de software de punto flotante .
- Coeficientes de Fourier: una rutina de análisis numérico para calcular aproximaciones en serie de formas de onda.
- Algoritmo de asignación: un algoritmo de asignación de tareas bien conocido.
- Compresión Huffman: un conocido algoritmo de compresión de texto y gráficos.
- Cifrado IDEA: un algoritmo de cifrado de bloques relativamente nuevo.
- Neural Net: un simulador de red de retropropagación pequeño pero funcional.
- Descomposición LU: un algoritmo robusto para resolver ecuaciones lineales.
Una ejecución del conjunto de pruebas comparativas consta esencialmente de dos fases para cada una de las pruebas. Primero, se ejecuta un ciclo de calibración para determinar el tamaño del problema que el sistema puede manejar en un tiempo razonable, con el fin de adaptarse al hardware informático cada vez más rápido disponible. En segundo lugar, la prueba real se ejecuta repetidamente varias veces para obtener un resultado estadísticamente significativo.
Originalmente, NBench y BYTEmark produjeron dos cifras generales de índice: índice entero e índice de coma flotante. El índice de enteros es la media geométrica de aquellas pruebas que implican solo el procesamiento de enteros (ordenación numérica, ordenación de cadenas, campo de bits, coma flotante emulada, asignación, Huffman e IDEA), mientras que el índice de coma flotante es la media geométrica de aquellas pruebas que requieren el coprocesador de coma flotante: descomposición de Fourier, red neuronal y LU. Las cifras del índice son puntuaciones relativas para tener una idea general del rendimiento de la máquina bajo prueba en comparación con un sistema de referencia basado en una CPU Pentium Intel de 90 MHz.
El puerto Linux / Unix tiene una segunda máquina de referencia, es un AMD K6 / 233 con 32 MB de RAM y 512 KB de caché L2 que ejecuta Linux 2.0.32 y usa GNU gcc versión 2.7.2.3 y libc-5.4.38. El índice de enteros original se dividió en un índice de operación de entero y un índice de operación de memoria, como sugirió Andrew D. Balsa, lo que refleja la comprensión de que la gestión de la memoria es importante en el diseño de la CPU. Las pruebas originales se han dejado en paz, sin embargo, la media geométrica de las pruebas tipo numérico, emulación de punto flotante, IDEA y Huffman ahora constituye el índice de referencia centrado en aritmética entera, mientras que la media geométrica de las pruebas tipo cadena, campo de bits, y la asignación constituye el nuevo índice de memoria. El índice de coma flotante se ha dejado solo, sigue siendo la media geométrica de la descomposición de Fourier, red neuronal y LU.
Usar
La suite de referencia ha tenido un uso constante desde mediados de la década de 1990 por parte de la comunidad informática personal, en PC y otros dispositivos que ejecutan varias versiones de UNIX, incluido Linux [5] [6] o BSD , [7] o Windows (generalmente en combinación con Cygwin ), [8] y también en Mac (en particular, está disponible como puerto Darwin [9] ). El portero original mantiene una página de resultados que se ejecuta en muchas configuraciones de hardware diferentes, desde servidores de múltiples CPU de alta potencia hasta conmutadores de red de baja potencia. [8]
Defectos
El uso de NBench como punto de referencia tiene algunos inconvenientes:
- Estos puntos de referencia están destinados a exponer el límite superior teórico de la CPU, la FPU y la arquitectura de memoria de un sistema. No pueden medir el rendimiento de video, disco o red (esos son los dominios de un conjunto diferente de puntos de referencia).
- NBench es de un solo subproceso. Actualmente, cada prueba de referencia utiliza solo un hilo de ejecución. Sin embargo, la mayoría de los sistemas operativos modernos tienen algún componente multitarea. La forma en que un sistema "escala" a medida que se ejecutan más tareas simultáneamente es un efecto que NBench no explora.
Ver también
Referencias
- ^ Mayer, Uwe F. "Linux / Unix NBench" . Consultado el 9 de junio de 2018 .
- ^ Drolez, Ludovic. "Android NBench" . Consultado el 26 de junio de 2017 .
- ^ Advanced Micro Devices, Inc. "AMD N-Bench" . Consultado el 7 de febrero de 2011 .
- ^ Revista BYTE. "Documentación original de NBench (instantánea archivada)" (PDF) . Consultado el 11 de enero de 2011 .
- ^ Carne fresca. "Proyecto NBench" . Consultado el 7 de febrero de 2011 .
- ^ Shareware novedoso. "NBench" . Consultado el 10 de febrero de 2011 .
- ^ Sitio FTP BSD. "NBench" . Consultado el 10 de febrero de 2011 .
- ^ a b Mayer, Uwe F. "Resultados de NBench" . Consultado el 7 de febrero de 2011 .
- ^ Puertos de Darwin. "NBench" . Consultado el 7 de febrero de 2011 .