Medición del rendimiento

Slides:



Advertisements
Presentaciones similares
Capítulo 2: Rendimiento de un computador
Advertisements

ARQUITECTURA DE COMPUTADORES - PERFORMANCE
Métricas de Rendimiento de Sistemas Operativos
Evaluación de Performance mediante Benchmarks
Rendimiento y/o desempeño.. RENDIMIENTO “El computador A es más rápido que el computador B” Como se determina el rendimiento de un computador para: El.
COMPUTACION PARALELA GLORIA PATRICIA FLOREZ ANGIE PAOLA ANCHICO.
PROGRAMACIÓN I CENTRO DE ESTUDIOS INTEGRADOS EL MARISCAL - CEIM Ing. Luisa Fernanda Arenas Castañeda Feb 6 de 2016.
Uso de TICs basadas en Software Libre. Objetivo Introducir al mundo del software libre Conocer proyectos y aplicaciones de software libre Realizar prácticas.
PLACA MADRE DE UNA COMPUTADORA IPCC - INFORMATICA APLICADA- -Baolini María Belén -Camargo Facundo.
Vania Mora Velázquez Sistemas operativos aplicados.
El procesador Datapath y control. Universidad de SonoraArquitectura de Computadoras2 Introducción En esta parte del curso contiene: Las principales técnicas.
ITESCO – Arquitectura Computadoras L. S. C. A. Raúl Monforte Chulin - MORCH Systems 1.1. Arquitectura básica y sus operaciones. Objetivo: El estudiante.
1 LENGUAJES DE PROGRAMACIÓN. Son aplicaciones específicas diseñadas para crear otras aplicaciones o programas. Son programas para crear programas. 2.
Introducción a la Programación Multimedial
TERMINOLOGÍA BÁSICA Informática: conjunto de conocimientos científicos y técnicas que hacen posible el tratamiento automático y racional de la información,
Organización de computadoras
Hardware de Computador
Procesadores superescalares
Quinta generación de computadoras
Ministerio del Poder Popular para la Educación Superior
Pipelining Peligros de control.
Ley de Amdahl.
Superescalares Scheduling estático.
Datapath para las instrucciones aritméticas y lógicas
Datapath para las instrucciones de brinco
Seguridad en aplicaciones con Tecnología Java
ALGORITMOS, LENGUAJES Y TECNICAS DE PROGRAMACION
En la siguiente presentación veremos algunos términos que debemos conocer para iniciar la educación virtual.
Un Software es un Conjunto de programas y rutinas que permiten a la computadora realizar determinadas tareas.
Resource standard Metrics (RSM)
Otros temas sobre cachés
Diferencias entre las arquitecturas de 64 bits de AMD e intel.
Presentamos.
Tema 6. Conceptos básicos de programación Clase 1
COMPUTER DATA SYSTEMS CDS.
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 2)
PREZI..
Salir de la presentación
Integración de las TIC en Educación Informática y Educación
Las herramientas Case Julian madrigal.
EL ORDENADOR es una máquina electrónica que recibe y procesa datos para convertirlos en información útil. Las instrucciones dentro del computador se representan.
TAREA DEFINICIONES: Software: Equipamiento lógico o soporte lógico de una computadora digital; comprende el conjunto de los componentes lógicos necesarios.
Almacenamiento El computador tiene 2 aspectos
Fundamentos de Programación
PROGRAMACIÓN 1 INTRODUCCIÓN
Diagnostico Avanzado del Rendimiento en SQL Server
Herramientas Entorno Web
Sabes Que es un ALGORITMO
DISEÑO Y ANALISIS DE EXPERIMENTOS
SOFTWARE.
Tecnologías y Arquitecturas
CURSO PROGRAMACIÓN BÁSICA SEMANA 2
Fundamentos de la Programación I
Estadística Conceptos Básicos.
Pipelining Peligros de control.
Números complejos MATEMÁTICAS I.
Introducción a la Estadística Informática
Optimización de Procesos.
ESTADISTICA DESCRIPTIVA
Introducción a los sistemas operativos en red
Tema 7. Introducción a lenguaje de programación Visual Basic (clase 2)
El procesador Datapath y control.
Media Geométrica En matemáticas y estadística, la media geométrica de una cantidad arbitraria de números (por decir n números) es la raíz n-ésima del producto.
Ejercicio 5.6 sobre cachés
Otros temas sobre cachés
AUTOR: SALGADO ESCOBAR STALIN SEBASTIAN DIRECTOR: ING. JOSE SANCHO
Estructura de un equipo microinformático
Memoria Rendimiento del caché.
Pipelining Peligros de control.
Valor esperado o esperanza III medio 2019
Transcripción de la presentación:

Medición del rendimiento

Medición del rendimiento El rendimiento de la CPU es el tiempo de ejecución. Ecuación del rendimiento de la CPU Tiempo CPU = Ciclos de reloj para el programa x Periodo del reloj Alternativamente Tiempo CPU = Número de instrucciones x CPI x Periodo del reloj Donde CPI es el número de ciclos en promedio por instrucción. Universidad de Sonora Arquitectura de Computadoras

Medición del rendimiento Para comparar dos sistemas computacionales: Correr la carga de trabajo (workload) del usuario en los dos sistemas. Correr un benchmark. Un programa o conjunto de programas usados específicamente para medir el rendimiento de una computadora. Universidad de Sonora Arquitectura de Computadoras

Tipos de benchmarks Programas de juguete tipo quicksort. Benchmarks sintéticos. No hacen nada aparte de evaluar el rendimiento de la CPU como Whetstone y Dhrystone. Aplicaciones reales como los benchmarks de SPEC (Standard Performance Evaluation Corporation) y de TPC (Transaction Processing Council). La tercera es la opción con mejor reputación. Universidad de Sonora Arquitectura de Computadoras

Benchmarks clásicos Utilizados hasta principios de los 1990s. Todavía son populares porque son gratis y fáciles de usar y entender. Dos clases de benchmarks clásicos: Universidad de Sonora Arquitectura de Computadoras

Benchmarks clásicos Benchmarks sintéticos: No realizan ninguna computación util. Whetstone. Dhrystone. Benchmarks de kernel. Obtenidos de un programa (o librería) real. Linpack. Livermore loops. Universidad de Sonora Arquitectura de Computadoras

Benchmarks clásicos Cada benchmark viene en dos versiones. Versión optimizada. El benchmark fue compilado con las opciones de optimización del compilador. Versión no optimizada. El benchmark fue compilado sin las opciones de optimización del compilador. La versión optimizada debe correr mas rápido que la versión no optimizada. Universidad de Sonora Arquitectura de Computadoras

Whetstone Publicado en 1976 originalmente en Algol 60. Intenta replicar el comportamiento de un típico programa científico en la computadora KDF9. Contiene varios módulos, cada uno contiene instrucciones de un tipo en particular: Aritmética entera. Aritmética de punto flotante. ifs. Llamadas a funciones (coseno, seno, etc.) Universidad de Sonora Arquitectura de Computadoras

Whetstone Un buen número de las instrucciones son de punto flotante. Se usa para medir el rendimiento de instrucciones de punto flotante. Reporta resultados: KWIPS o MWIPS (kilo/mega instrucciones Whetstone por segundo) Comparación con una VAX 11/780 de 1977. MFLOPS (millones de operaciones de punto flotante por segundo) o MOPS (millones de operaciones por segundo) para cada módulo. Universidad de Sonora Arquitectura de Computadoras

Dhrystone Publicado en 1984 originalmente en Ada. Intenta replicar el comportamiento de un programa no científico. No tiene instrucciones de punto flotante. Menos ciclos y mas ifs y llamadas a procedimiento. Mide el rendimiento de instrucciones enteras. Universidad de Sonora Arquitectura de Computadoras

Dhrystone Reporta resultados en DPS (Dhrystone por segundo) o en DMIPS (Dhrystone MIPS). DMIPS = DPS / 1757. 1757 es el número de DPS obtenido en una VAX 11/780 que supuestamente era una máquina de 1 MIPS. Universidad de Sonora Arquitectura de Computadoras

Linpack Publicado en 1976, Linpack es un conjunto (paquete) de subrutinas de algebra lineal en Fortran. El benchmark basado en Linpack mide cuánto tarda una computadora en resolver un sistema denso de N x N ecuaciones lineales. Típicamente N = 100, pero puede ser mayor. Hay versiones de precisión sencilla y doble. Los resultados se reportan en MFLOPS. Universidad de Sonora Arquitectura de Computadoras

Livermore loops Publicado en 1986 originalmente en Fortran. Mide el rendimiento de computadoras paralelas. Consiste en 24 ciclos (kernels). Cada ciclo hace una función matemática distinta: Fragmento de hidrodinámica. Gradiente conjugado de Cholesky incompleto. Búsqueda de Montecarlo. Reporta MFLOPS para cada uno de los ciclos. Universidad de Sonora Arquitectura de Computadoras

Desventajas De los benchmarks clásicos: Es fácil hacer trampa, un compilador puede reconocer el benchmark y generar código especial. Reflejan el estilo de programación de 1970 y 1980. No miden las capacidades de las CPUs actuales. No hay control del código fuente. Nadie certifica los resultados. No hay reglas standard. Universidad de Sonora Arquitectura de Computadoras

Desventajas Hacen énfasis en medir MIPS (o MFLOPS). MIPS no siempre son relevantes, p.e., en servidores de web, de correo o de archivos. El número de instrucciones por segundo no dice nada de la complejidad de las instrucciones. No es lo mismo ejecutar instrucciones simples que instrucciones complejas. Universidad de Sonora Arquitectura de Computadoras

Desventajas Para calcular MIPS: Sustituyendo el tiempo de ejecución: Un programa puede tener distinto CPI (por culpa del compilador) y no tener un solo MIPS. Universidad de Sonora Arquitectura de Computadoras

Ejemplo ¿Qué computadora tiene un MIPS mayor? ¿Qué computadora es más rápida? Universidad de Sonora Arquitectura de Computadoras

Ejemplo MIPS = (Velocidad reloj / CPI x 106) Computadora A MIPS = 4 x 109 / (1.0 x 106) = 4 x 103 Computadora B MIPS = 4 x 109 / (1.1 x 106) = 3.6 x 103 Conclusión: A tiene MIPS mayor. Universidad de Sonora Arquitectura de Computadoras

Tiempo de ejecución T = I x CPI / V Computadora A T = 10 x 109 x 1.0 / 4 x 109 = 2.5 segundos Computadora B T = 8 x 109 x 1.1 / 4 x 109 = 2.2 segundos Conclusión: B es más rápida. Universidad de Sonora Arquitectura de Computadoras

Mejor medida Fuente: COD, p. 52 Universidad de Sonora Arquitectura de Computadoras

¿Por qué se estudian? Todavía se mencionan. Son gratis y fáciles de usar. Son útiles como una primera aproximación. En algunos sistemas (por ejemplo controladores) no hay otra cosa. Universidad de Sonora Arquitectura de Computadoras

SPEC Standard Performance Evaluation Corporation Organización sin fines de lucro fundada en 1988. Miembros originales: Apollo, HP, MIPS y Sun. Objetivo: producir benchmarks justos e imparciales. Los resultados se conocen como SPECmarks. Universidad de Sonora Arquitectura de Computadoras

Benchmarks de SPEC Desktop (computadoras de escritorio) Mide el rendimiento de: CPU. SPEC CPU 2006. La máquina virtual de Java. SPECjvm2008. Sistemas de gráficas: SPECviewperf para OpenGL 3D. SPECapc para aplicaciones en 3D como Maya, 3ds Max, SolidWorks, etc. Universidad de Sonora Arquitectura de Computadoras

Benchmarks de SPEC Server (servidores) Mide el rendimiento en: Servidores de correo. SPECmail2008. Servidores de archivos. SPECsfs2008. Servidores de Web. SPECweb2005. Servidores basados en JMS (Java Message Service). SPECjms2007. Servidores de aplicaciones en Java. SPECjAppServer2004. Universidad de Sonora Arquitectura de Computadoras

SPEC CPU 2006 12 programas para evaluar instrucciones enteras. 9 escritos en C. 3 escritos en C++. 17 programas para evaluar instrucciones de punto flotante. 6 escritos en FORTRAN. 4 en C y FORTRAN. 4 en C++. 3 en C. Universidad de Sonora Arquitectura de Computadoras

SPEC CPU 2006 http://www.spec.org/cpu2006/publications/CPU2006benchmarks.pdf Universidad de Sonora Arquitectura de Computadoras

Tiempo de ejecución de i en A / Tiempo de ejecución de i en R SPEC CPU 2006 Cada benchmark i se corre en la CPU a evaluar. Se mide el tiempo de CPU de cada benchmark i. Para cada benchmark i se obtiene el SPECmark. Tiempo de ejecución de i en A / Tiempo de ejecución de i en R Donde R es la computadora de referencia: una estación de trabajo Sun Ultra Enterprise 2 con un procesador UltraSPARC II de 296-MHz. Universidad de Sonora Arquitectura de Computadoras

SPEC CPU 2006 Escribir un reporte. Los resultados deben ser reproducibles. El reporte debe decir todo lo necesario para que otra persona obtenga los mismos resultados. Incluyendo sistema operativo y compiladores usados, datos de entrada, etc. Promediar los SPECmark de todos los benchmarks usando la media geométrica. Universidad de Sonora Arquitectura de Computadoras

Ejemplo Universidad de Sonora Arquitectura de Computadoras

Ejemplo Universidad de Sonora Arquitectura de Computadoras

Ejemplo Universidad de Sonora Arquitectura de Computadoras

Intel Core I7 920 Fuente: COD 5, p. 47 Universidad de Sonora Arquitectura de Computadoras

Media geométrica La media geométrica es: En el reporte de SPEC, samplei es el SPECRatio de la computadora A para el benchmark i. Universidad de Sonora Arquitectura de Computadoras

Media geométrica Usando logaritmos la raíz enésima no es necesaria. Universidad de Sonora Arquitectura de Computadoras

Desviación standard Da una medida de la variabilidad de los datos. Sirve para decidir si la media es un buen predictor. La desviación standard aritmética se calcula: Universidad de Sonora Arquitectura de Computadoras

Desviación standard geométrica Se usa en conjunto con la media geométrica. Se calcula como: Universidad de Sonora Arquitectura de Computadoras

Desviación standard Para una distribución lognormal: 68% de las muestras caen en el rango [gmean/gstdev, gmean x gstdev]. 95% de las muestras caen en el rango [gmean/gstdev2, gmean x gstdev2]. Universidad de Sonora Arquitectura de Computadoras

SPECmark Con los SPECmarks se puede comparar dos computadoras sin conocer los tiempos de los benchmarks ni la computadora de referencia. Universidad de Sonora Arquitectura de Computadoras

SPECfp 2000 Universidad de Sonora Arquitectura de Computadoras

Ejemplo Usando los datos del SPECfp 2000 Calcular la desviación standard geométrica de los SPECRatio del Itanium 2 y el Opteron. Calcular el porcentaje de benchmarks que caen dentro de una desviación standard de la media geométrica. Universidad de Sonora Arquitectura de Computadoras

Ejemplo Media geométrica: Desviación standard geométrica: Itanium 2: 27.12 Opteron: 20.86 Desviación standard geométrica: Itanium 2: 1.93 Opteron: 1.38 Rango de una desviación standard: Itanium 2: [27.12 / 1.93, 27.12 x 1.93] = [14.06, 52.30] Opteron: [20.86 / 1.38, 20.86 x 1.38] = [15.12, 28.76] Universidad de Sonora Arquitectura de Computadoras

Ejemplo Porcentaje de benchmarks dentro de una desviación standard de la media: Itanium 2: 10 / 14 = 71% Opteron: 11 / 14 = 78% Universidad de Sonora Arquitectura de Computadoras