Vous êtes sur la page 1sur 3

El Dhrystone es un pequeño benchmark sintético que pretende ser representativo

de programación entera de sistemas. Está basado en estadísticas publicadas


sobre uso de particularidades de los lenguajes de programación, sistemas
operativos, compiladores, editores, etc.

Una prueba de rendimiento o comparativa (en inglés benchmark) es una técnica


utilizada para medir el rendimiento de un sistema o uno de sus componentes. Más
formalmente puede entenderse que una prueba de rendimiento es el resultado de
la ejecución de un programa informático o un conjunto de programas en una
máquina, con el objetivo de estimar el rendimiento de un elemento concreto, y
poder comparar los resultados con máquinas similares. En el ámbito de las
computadoras, una prueba de rendimiento podría ser realizada en cualquiera de
sus componentes, ya sea la CPU, RAM, tarjeta gráfica, etc. También puede estar
dirigida específicamente a una función dentro de un componente, como la unidad
de coma flotante de la CPU, o incluso a otros programas.

La tarea de ejecutar una prueba originalmente se reducía a estimar el tiempo de


proceso que lleva la ejecución de un programa (medida por lo general en miles o
millones de operaciones por segundo). Con el correr del tiempo, la mejora en los
compiladores y la gran variedad de arquitecturas y situaciones existentes
convirtieron a esta técnica en toda una especialidad. La elección de las
condiciones bajo la cual dos sistemas distintos pueden compararse entre sí es
especialmente ardua, y la publicación de los resultados suele ser objeto de
candentes debates cuando éstos se abren a la comunidad.

El EEMBC Certification Laboratories, LLC (ECL) es reconocido como el principal


laboratorio de benchmarking y certificación en las industrias de semiconductores y
software, y es el organismo de certificación autorizado para EEMBC. EEMBC
(pronunciado "embassy") es el consorcio de referencia de procesadores estándar
de la industria y fue configurado para crear puntos de referencia basados en
aplicaciones para medir el rendimiento del procesador (y compilador).
A pesar de la creciente adopción de los puntos de referencia de EEMBC, el índice
de referencia de Dhrystone todavía se utiliza de forma incorrecta en la industria.
Para ayudar a las personas y las empresas a evaluar su utilidad, decidimos
analizar Dhrystone en busca de fortalezas y debilidades y explicar nuestros
hallazgos en base a ejemplos reales.

El Benchmarking es un método para medir el desempeño en comparación con un


estándar, o dado conjunto de estándares.
Los estándares surgen de dos maneras:
- Uso común a lo largo del tiempo (es decir, "el estándar contra una medida")

- Creación con propósito por una o más personas.

Una forma útil de caracterizar los puntos de referencia es si son sintéticos, o la


basados en aplicación ("mundo real"). Se crea una referencia sintética con la
intención de medir una o más características de un sistema, procesador o
compilador.

Los puntos de referencia sintéticos pueden intentar imitar combinaciones de


instrucciones en aplicaciones del mundo real, o pueden ser artificiales. Los puntos
de referencia sintéticos son útiles para depurar características específicas, pero no
se pueden relacionar fácilmente con el rendimiento de esa función en una
aplicación. Debido a que son útiles para depurar o aislar funcionalidades
específicas, los puntos de referencia sintéticos tienden a ser pequeños, aunque
esto no es un requisito.

ECL define certificación como el proceso de recreación del entorno de benchmark,


la verificación del procesador y la velocidad del reloj del bus de memoria, la
verificación de los cambios del compilador, la recreación de los puntajes, la
reconstrucción del código para garantizar que los puntajes sean reproducibles, y
así en. ECL tiene más de 50 pasos separados en su proceso de certificación de
puntaje de referencia.

El Dr. Reinhold P.Weicker escribió Dhrystone para modelar lo que luego se veía
como una mezcla de aplicaciones "típicas" operaciones matemáticas y otras. El
rendimiento entero predominaba, con poco o nada los cálculos de punto flotante y
las aplicaciones podrían estar contenidos dentro de la memoria pequeña
subsistemas. A lo largo de la larga historia de Dhrystone, el punto de referencia ha
tenido que enfrentar el siguiendo las revoluciones y evoluciones que han
cambiado las arquitecturas de la computadora.

Desafortunadamente, Dhrystone no tiene en cuenta ninguno de los siguientes:

• Computación del conjunto de instrucciones reducido (RISC)


• Disponibilidad de sofisticadas unidades procesadoras de coma flotante dentro de
los procesadores principales
• Procesadores de vector de instrucción única, datos múltiples (SIMD) dentro de la
principal procesadores
• Diseños RISC superescalares (unidades de ejecución múltiples dentro de un solo
procesador)
• Procesadores de palabras de instrucción muy larga (VLIW)
• Optimización de compiladores
• Grandes subsistemas de memoria, incluidos procesadores y sistemas con L1, L2
y Cachés L3
• Sistemas operativos en tiempo real con una sofisticada programación de
aplicaciones interfaces (API), multitarea, funcionalidad TCP / IP y usuario gráfico
interfaces
• Grandes aplicaciones integradas en tiempo real que proliferan en prácticamente
todas las áreas de vida moderna
• Aplicaciones gráficas, multimedia y de uso intensivo de comunicaciones

La siguiente tabla proporciona un resumen conciso de las características de


Dhrystone y fuerza o debilidad correspondiente:

https://www.eembc.org/techlit/datasheets/ECLDhrystoneWhitePaper2.pdf