Tema 4: Rendimiento del procesador.

Documentos relacionados
Rendimiento de sistemas paralelos. Arquitectura de Computadoras II Fac. Cs. Exactas UNCPBA Prof. Marcelo Tosini 2015

Tema 4: Rendimiento del procesador.

Conservación del Momento Lineal y de la Energía

Deducción de parámetros y comportamiento

EXPERIMENTACIÓN COMERCIAL(I)

Tema I: Introducción a los sistemas de instrumentación

Tema 3. Estadísticos univariados: tendencia central, variabilidad, asimetría y curtosis

2.2 TASA INTERNA DE RETORNO (TIR). Flujo de Caja Netos en el Tiempo

La predicción de la demanda en la evaluación de proyectos. Anna Matas José Luis Raymond Mar González-Savignat Adriana Ruíz

Ideas Básicas sobre Métodos de Medida

Histogramas: Es un diagrama de barras pero los datos son siempre cuantitativos agrupados en clases o intervalos.

Capitalización y descuento simple


5. DIAGONALIZACIÓN DE MATRICES

Dasometría / Celedonio L

DEFINICIÓN DE INDICADORES

Trabajo y Energía Cinética

Tema 1: Estadística Descriptiva Unidimensional Unidad 2: Medidas de Posición, Dispersión y de Forma

Algoritmo para la ubicación de un nodo por su representación binaria

PROPORCIONAR RESERVA ROTANTE PARA EFECTUAR LA REGULACIÓN PRIMARIA DE FRECUENCIA ( RPF)

LECTURA 02: DISTRIBUCIONES DE FRECUENCIAS (PARTE I) DISTRIBUCIONES DE FRECUENCIAS EN PUNTOS AISLADOS

Unidad Nº III Unidad Aritmética-Lógica

Ondas y Rotaciones. Colisiones Inelásticas

Unidad I Definición de reacción de combustión Clasificación de combustibles

Regresión no lineal mediante la evolución de modelos Híbridos de Redes Neuronales 1

Apéndice A. Principio de Mínima Acción y Energía Mecánica total.

DETERMINACIÓN DE ERRORES Y TRATAMIENTO DE DATOS. II. Error en una medida: determinación y expresión de errores.

Unidad Central del Valle del Cauca Facultad de Ciencias Administrativas, Económicas y Contables Programa de Contaduría Pública

ONE CLASS SVM para la detección de fraudes en el uso de energía eléctrica

TEMA 10. OPERACIONES PASIVAS Y OPERACIONES ACTIVAS.

Starbridge Networks 305EU Manual

UNIVERSIDAD CARLOS III DE MADRID Ingeniería Informática Examen de Investigación Operativa 21 de enero de 2009

CAPÍTULO V ANUALIDADES

UNIVERSIDAD DE GUADALAJARA, CUCEI DEPARTAMENTO DE ELECTRÓNICA LABORATORIO DE ELECTRÓNICA II

Manual. Starbridge 305EU. Contenido

22. COLUMNA DE DESTILACION SIMPLIFICADA

XIV Congreso de la Asociación Chilena de Control Automático, ACCA 00 Octubre 2000

12-16 de Noviembre de Francisco Javier Burgos Fernández

Pipelining o Segmentación de Instrucciones

OPERACIONES ARMONIZACION DE CRITERIOS EN CALCULO DE PRECIOS Y RENDIMIENTOS

Guía de ejercicios #1

CÁLCULO DE INCERTIDUMBRE EN MEDIDAS FÍSICAS: MEDIDA DE UNA MASA

CAPÍTULO 3 METODOLOGÍA. En el siguiente capítulo se presenta al inicio, definiciones de algunos conceptos actuariales

Gases ideales. Introducción a la Física Ambiental. Tema 3. Tema 3.- " Gases ideales ".

Tema 2. Diseño del repertorio de instrucciones

Smoothed Particle Hydrodynamics Animación Avanzada

Distancias e Indices Parciales de Medidas Difusas

[1] [1 ] Esta condición evita que haya rotación del sistema Composición de fuerzas paralelas.

CONCEPTOS GENERALES DEL CAMPO MAGNÉTICO

COMPUTADORES SEGMENTADOS (DLX)

TEMA N 2.- TEORÍA DE REDES (PERT Y CPM)

Qué es la EN81-28? Atrapado en el ascensor?

Comparación entre distintos Criterios de decisión (VAN, TIR y PRI) Por: Pablo Lledó

INSYS Advanced Dashboard for Enterprise

ACTIVIDADES INICIALES

TEMA 4 Variables aleatorias discretas Esperanza y varianza

RESISTENCIAS EN SERIE Y LEY DE LAS MALLAS V 1 V 2 V 3 A B C

Matemática Financiera Sistemas de Amortización de Deudas

Tema 2: Arquitectura del repertorio de instrucciones. Visión del computador que tiene el programador en bajo nivel.

Pruebas Estadísticas de Números Pseudoaleatorios

TEMA 6 AMPLIFICADORES OPERACIONALES

Título: Dos métodos de diagnóstico de circuitos digitales de alta y muy alta escala de integración.

Conclusiones. Particionado Consciente de los Datos

TEMA 1.- CONCEPTOS BÁSICOS

Media es la suma de todas las observaciones dividida por el tamaño de la muestra.

Explicación de las tecnologías - PowerShot SX500 IS y PowerShot SX160 IS

SISTEMAS COMBINACIONALES

Módulo 3. OPTIMIZACION MULTIOBJETIVO DIFUSA (Fuzzy Multiobjective Optimization)

QUÉ ES LA RENTABILIDAD Y CÓMO MEDIRLA. La rentabilidad mide la eficiencia con la cual una empresa utiliza sus recursos financieros.

Análisis de Capabilidad (Defectos Por Unidad)

CONSEJERÍA DE EDUCACIÓN

Tipos de amplificadores según su ganancia

GESTION FINANCIERA. TEMA 4º. El INTERES COMPUESTO. 1.- Capitalización compuesta.

Respuesta A.C. del FET 1/14

Tema 3: Adaptadores de Señal

Cantidad de Momento, Conservación, Choques, Centro de Masa

Diagramas de Heissler para la solución de problemas de conducción transitoria.

Material realizado por J. David Moreno y María Gutiérrez. Asignatura: Economía Financiera

PROBLEMAS DE ELECTRÓNICA ANALÓGICA (Diodos)

Tema 4: Rendimiento del procesador. 1. Medidas del rendimiento de un computador

Disipación de energía mecánica

DELTA MASTER FORMACIÓN UNIVERSITARIA C/ Gral. Ampudia, 16 Teléf.: MADRID

rsums Aproxima la integral de f mediante sumas de Riemann y realiza una representación gráfica de los rectángulos.

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

Investigación y Técnicas de Mercado. Previsión de Ventas TÉCNICAS CUANTITATIVAS ELEMENTALES DE PREVISIÓN UNIVARIANTE. (IV): Ajustes de Tendencia

Gráficos de flujo de señal

CAPÍTULO 2 - CORRIENTES ALTERNAS

De factores fijos. Mixto. Con interacción Sin interacción. No equilibrado. Jerarquizado

Ejercicios. 5.2 [5] < 5.3> Este ejercicio es similar al 5.1, pero ahora considere los fallos causados por permanecer en 1 (la señal es siempre 1).

Aplicación de la teoría de Agentes al modelo de grafos para la detección de patrones en Textos

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

2.5 Especialidades en la facturación eléctrica

Tu área reservada Organización Simplicidad Eficiencia

Sistemas cíclicos. Juan Antonio de la Puente DIT/UPM. Objetivos

UNIVERSIDAD DE PUERTO RICO

Mª Dolores del Campo Maldonado. Tel: :

Convertidores Digital-Analógico y Analógico-Digital

Simulación y Optimización de Procesos Químicos. Titulación: Ingeniería Química. 5º Curso Optimización.

COLECCIÓN DE PROBLEMAS SOBRE BUSES

GUIAS DE ACTIVIDADES Y TRABAJO PRACTICO Nº 22

Transcripción:

Objetvos: Tea 4: Rendento del procesador Introducr los conceptos y crteros que pertan edr de fora cuanttatva el rendento de los procesadores Estudar los dferentes patrones de edda (benchark) Analzar de fora cualtatva y con datos reales la nfluenca que tenen las dferentes alternatvas de dseño, estudadas en teas anterores, sobre el rendento Sntetzar el resultado del anteror análss en un conjunto de alternatvas de dseño que son deternantes para auentar el rendento del procesador y que se concretan en la alternatva RISC Analzar la fora de explotar al áxo el rendento del procesador desde análss del prograa realzado por el coplador Contendo: Meddas del rendento de un coputador 2 Patrones de edda (Bencharks) 3 Influenca en el rendento de las alternatvas de dseño 4 Influenca de los copladores de lenguajes de alto nvel 5 Procesadores RISC y CISC Meddas del rendento de un coputador Cuando se queren coparar dferentes procesadores es necesaro establecer el crtero de edda que perta cuantfcar los resultados de la coparacón En este sentdo exsten dos conceptos que convene aclarar prevaente: la undad de edda y el patrón de edda El prero se refere a la étrca utlzada para cuantfcar la coparacón Y el segundo a la carga de trabajo respecto a la que se realza la coparacón El tepo es la undad de edda por excelenca cuando se coparan varos procesadores, aunque no sepre concdan los puntos de vsta de los dferentes observadores Así, el usuaro de un procesador puede decr que el procesador A es ejor que el procesador B cuando A ejecuta su prograa en enor tepo que B En cabo el responsable de un centro de cálculo entenderá que A es ejor que B s es capaz de ejecutar ayor núero de trabajos por undad de tepo El prero estará nteresado en el tepo de respuesta (response te) del procesador entras que el segundo lo estará en la productvdad (throughput) Pero en abos casos la clave es el tepo: el procesador que realza la sa cantdad de trabajo en el enor tepo posble será el ás rápdo, la dferenca estrba en s edos una tarea (tepo de respuesta) o uchas (productvdad) El patrón de edda ás sgnfcatvo es el conjunto de prograas reales que se ejecutan en los procesadores Sn ebargo aquí surge de nuevo y con ás ntensdad la dversdad de puntos de vsta En efecto, el usuaro de un edtor de texto querrá edr el rendento de un procesador respecto a la efcenca para ejecutar su prograa, que posbleente no concda con el

punto de vsta del usuaro de un prograa de dseño gráfco Fjar de la fora ás objetva posble los patrones o prograas respecto a los cuales se da el rendento de un procesador será pues una tarea poléca y sepre cuestonada por la coundad de nteresados en los resultados de la edda Tepo de ejecucón El tepo que tarda un prograa en ser ejecutado por un coputador puede ser dfícl de edr, debdo a los Ssteas Operatvos Multtarea y a los dspostvos de E/S, que tenen tepos de respuesta que son ndependentes de la frecuenca de reloj del ordenador Por ello es necesaro dferencar entre el tepo que tarda una CPU en ejecutar el códgo de un prograa, el tepo que utlza el SO para realzar sus tareas, y el tepo necesaro para acceder a los dspostvos de E/S El tepo de ejecucón de un prograa lo dvdreos en las sguentes coponentes: Tepo de respuesta Tepo de CPU A su vez, el tepo de CPU lo dvdos en: Tepo de CPU utlzado por el usuaro Tepo de CPU utlzado por el SO Tepo de respuesta Es el tepo necesaro para copletar una tarea, ncluyendo los accesos al dsco, a la eora, las actvdades de E/S y los gastos del SO Es el tepo que percbe el usuaro Tepo de CPU Es el tepo que tarda en ejecutarse un prograa, sn tener en cuenta el tepo de espera debdo a la E/S o el tepo utlzado para ejecutar otros prograas Se dvde en: Tepo de CPU utlzado por el usuaro Es el tepo que la CPU utlza para ejecutar el prograa del usuaro No se tene en cuenta el tepo de espera debdo a la E/S o el tepo utlzado para ejecutar otros prograas Tepo de CPU utlzado por el SO Es el tepo que el SO eplea para realzar su gestón nterna La funcón te de Unx produce una salda de la fora: 907u 29s 2:39 65%, donde: Tepo de CPU del usuaro = 907 segundos Tepo de CPU utlzado por el sstea = 29 segundos Tepo de CPU= 907 seg+ 29seg = 036 Tepo de respuesta = 2 nutos 39 segundos =59 segundos Tepo de CPU = 65% del tepo de respuesta = 59 segundos*065 = 036 Tepo esperando operacones de E/S y/o el tepo ejecutando otras tareas 35% del tepo de respuesta = 59 segundos*035 = 556 segundos El tepo de respuesta se utlza coo edda del rendento del sstea (con el sstea no cargado), entras que el rendento de la CPU noralente hace referenca al tepo de CPU del usuaro sobre un sstea no cargado El tepo de CPU de un prograa podeos expresarlo coo: Tepo_de_CPU = Núero_de_cclos_de_reloj_de_la_ CPU Tc donde Tc = Duracón_del_cclo_de_reloj Núero _ de _ cclos _ de _ reloj _ de _ la _ CPU Tepo _ de _ CPU Fc 2

donde Fc = Frecuenca_de_reloj = /Tc Adeás del núero de cclos de reloj que necesta la ejecucón de un prograa, tabén se puede edr el núero de nstruccones NI ejecutadas, y podreos calcular el núero edo de Cclos de reloj Por Instruccón o CPI coo: CPI Núero _ de _ cclos _ de _ reloj _ de _ la _ CPU NI por lo que el tepo de CPU podeos expresarlo coo: Tepo_de_CPU = NI CPI Tc o ben: Tepo _ de _ CPU NI CPI Fc NI: depende del coplador y la arqutectura utlzada, y se expresa en nstruccones/prograa CPI: depende de la arqutectura y estructura (organzacón) de la áquna, y se expresa en cclos de reloj/nstruccón Tc: Depende de la estructura y la tecnología de la áquna, y se expresa en segundos/cclo de reloj En deternadas stuacones de dseño puede ser útl calcular el núero total de cclos de reloj de la CPU coo: Núero_de_cclos_de_reloj_de_la_CPU = n CPI donde NI representa el núero de veces que el grupo de nstruccones es ejecutado en un prograa, y CPI representa el núero edo de cclos de reloj para el conjunto de nstruccones El tepo de CPU se evalúa en este caso edante una de las 2 sguentes expresones: Tepo_de_CPU = n CPI NI Tc NI Tepo _ de _ CPU n CPI Fc NI El núero edo de cclos por nstruccón vendrá dado por: 3

CPI n CPI NI NI n ( CPI NI NI ) Esta últa expresón calcula el CPI ultplcando cada CPI ndvdual por la fraccón de ocurrencas de las nstruccones en el prograa CPI debe ser eddo, y no calculado a partr de la tabla del anual de referenca, ya que se deben nclur los fallos de caché y otras nefcencas del sstea de eora Ejeplo Se consderan 2 alternatvas para pleentar el salto condconal en un procesador: CPU A: Una nstruccón de coparacón genera el códgo de condcón, y una de salto bfurca en funcón del valor de códgo generado CPU B: Una únca nstruccón de salto que ncluye la coparacón En abos casos la nstruccón de salto consue 2 cclos de reloj, las deás nstruccones consuen cclo Se gnoran las pérddas debdas al sstea de eora En la CPU A, el 20% de las nstruccones ejecutadas son saltos condconales, y coo en esta CPU cada salto es preceddo por una coparacón, otro 20% de las nstruccones ejecutadas son coparacones Debdo a que la CPU A no ncluye la coparacón en el salto, su cclo de reloj es un 25% ás rápdo que el de la CPU B Bajo estas condcones Qué CPU es ás rápda? Solucón Coparacones Saltos CPU A 20 % 20 % CPU B 20 % Otras nstruccones 60 % 00 80 60 % Tc_B/ Tc_A = 25 ==> Tc_B = 25 Tc_A NI_B = 08 NI_A Tepo de CPU_A = NI_A CPI_A Tc_A Tepo de CPU_B = NI_B CPI_B Tc_B Tepo de CPU_B = (0 8 NI_A ) CPI_B ( 25 Tc_ A ) Tepo de CPU_B = (08 25) NI_A * CPI_B Tc_A 4

CPI_A = (NI_salto_A /NI_A) CPI_salto + (NI_resto_A/NI_A) CPI_resto = (20/00) 2 + (80/00) = 02 2 + 08 = 2 CPI_B = (NI_salto_B /NI_B) CPI_salto + (NI_resto_B/NI_B) CPI_resto = (20/80) 2 + (60/80) = 025 2 + 075 = 25 Luego la alternatva de dseño correspondente a la CPU A sería ás rápda La gananca de velocdad de la alternatva A sobre la B valdrá: Tepo de CPU_A = 2 NI_A Tc_A Tepo de CPU_B = 25 NI_A Tc_A La gananca de velocdad valdrá: Tepo de CPU_B Tepo de CPU_A 25 2 046 2 Otros paráetros de rendento MIPS (Mllones de Instruccones Por Segundo) NI MIPS Tepo _de _ejecucón 0 6 CPI * 0 6 * Tc Fc CPI * 0 6 Tepo _ de _ ejecucón NI 6 MIPS* 0 Los MIPS dependen del repertoro de nstruccones, por lo que resulta un paráetro dfícl de utlzar para coparar áqunas con dferente repertoro Varían entre prograas ejecutados en el so coputador Pueden varar nversaente al rendento, coo ocurre en áqunas con hardware especal para punto flotante, que eplean enor tepo que las que no dsponen de este hardware y por tanto tenen ejor rendento Sn ebargo presentan un enor valor de los MIPS porque ejecutan enor núero de nstruccones En defntva, los MIPS pueden fallar al dar una edda del rendento, puesto que no reflejan el tepo de ejecucón Por esta razón se han vendo utlzando los MIPS relatvos, que den cuantas veces ás tarda en ejecutarse un prograa en la áquna a edr que en una de referenca, que por defncón tene un MIPS (VAX-/780): MIPS Tepo de ejecucón en la áquna de referenca Tepo de ejecucón en la áquna a edr relatvos MIPS refeerenca MIPSrefeerenca = (MIPS del VAX-/780) MFLOPS MFLOPS (Mllones de operacones en punto FLOtante Por Segundo) Núero de operacones en coa Tepo de ejecucón 0 flotante de un prograa 6 5

Exsten operacones en coa flotante rápdas (coo la sua) o lentas (coo la dvsón), por lo que puede resultar una edda poco sgnfcatva Por ello se han utlzado los MFLOPS noralzados, que dan dstnto peso a las dferentes operacones Por ejeplo: sua, resta, coparacón y ultplcacón se les da peso ; dvsón y raíz cuadrada peso 4; y exponencacón, trgonoétrcas, etc peso 8 Productvdad (throughput) Núero de tareas ejecutadas en la undad de tepo Gananca de velocdad (speedup): Ley de Adahl Para calcular el auento de rendento que puede obtenerse al ejorar alguna parte de un coputador se utlza la Ley de Adahl: La ejora obtenda en el rendento global de un coputador al utlzar algún odo de ejecucón ás rápdo está ltada por la fraccón de tepo que se puede utlzar ese odo ás rápdo La gananca de velocdad global de un sstea se defne por el sguente cocente: Tepo _ de _ ejecucón_ sn _ ejora(tsn ) gv global Tepo _ de _ ejecucón_ con _ ejora(tcon) S llaaos f a la fraccón de tepo que puede utlzarse el odo de ejecucón ás rápdo, es decr, ntroducendo una ejora, y gvejora la gananca de velocdad propa del eleento o odo ejorado, la gananca de velocdad global del sstea vendrá dada por la sguente expresón: ( - f) * Tsn Tsn Tcon = ( - f) * Tsn + f * Tsn / gv ejora tepo en que se puede utlzar la ejora f * Tsn tepo ahorrado en la ejora f * Tsn / gv ejora gv global Tsn Tcon ( f Tsn )* Tsn f * Tsn gv ejora ( f ) f gv ejora Esta expresón recoge la fora cuanttatva de la ley de Adahl S obteneos el líte cuando la gananca de velocdad del odo ejorado tende a nfnto, es decr, suponeos que el odo ejora nfntaente, obteneos lo sguente: 6

l _ gv global f gv ejora Es decr, la gananca de velocdad global se antene ltada por una expresón de la fraccón f gv global /(-f ) gv ejora Ejeplo Un dsco agnétco 0 veces ás rápdo que en la áquna orgnal El dsco se utlza sólo el 40% del tepo de ejecucón Cual es la gananca de velocdad global? fr=04 gv ejora = 0 CPU gv global gvejora = 0; f = 04 ==> gvglobal = ( 04) 04 0 = = 56 064 l gvglobal = = 666 (áxa gananca para velocdad del dsco nfnta) ( 04) gvejora --> Rendento edo arónco Sean P, P2,, P,P un conjunto de prograas que representan odos de funconaento de una carga de trabajo Por ejeplo, P, puede representar el odo de funconaento entero, P2 el odo real, etc Sean r, r2,, r, r las velocdades de ejecucón en nstruccones/segundo de los prograas anterores, y t, t2,, t, t los tepos de ejecucón edos por nstruccón en segundos/nstruccón: t = /r Se defnen los sguentes paráetros: Tepo de ejecucón edo artétco 7

8 a r t T Velocdad de ejecucón eda arónca a h r T R Tepo de ejecucón edo ponderado * a r f T con f, f2, f, f los pesos de los prograas P, P2,, P,P; f Velocdad de ejecucón eda arónca ponderada * a * h r f T R Velocdad de ejecucón eda artétca a r R Velocdad de ejecucón eda artétca ponderada a r * f R Problea cuando se proedan velocdades en lugar de tepos cuando se quere caracterzar el coportaento de un coputador que funcona con 2 o ás odos: P ejecuta 0000 nstruccones en 5 segundos => r = 2000 nstruccones/segundo P2 ejecuta 0000 nstruccones en 2 segundos => r2 = 5000 nstruccones/segundo

P P 2 0000 nstrucones 0000 nstruccones 5 segundos 2 segundos Velocdad de ejecucón eda artétca Ra = (2000 + 5000)/2 = 3500 nstruccones/segundo S con esta velocdad eda calculaos las nstruccones ejecutadas en 7 segundos = 3500 * 7 = 24500 nstruccones 20000 Ta = /2(5/0000 + 2/0000) = 7/20000 => Rh = /Ta =20000/7 =2857,4 S con esta velocdad eda arónca calculaos las nstruccones ejecutadas en 7 segundos = 2857,4 * 7 = 20000 Ejeplo Se ejecutan 4 prograas P, P2, P3, P4 (que representan 4 odos de ejecucón de un prograa general) sobre 3 coputadores A, B y C Por cada prograa se ejecutan 0 8 nstruccones, resultando los sguentes tepos en segundos: Tepo de ejecucón (seg) Coputador Prograa A B C P P2 P3 P4 0000 500 00 0 00 000 800 20 20 50 00 Cuál es el coputador ás rápdo? Los MIPS da cada procesador para cada prograa valdrán: MIPS Coputador Prograa A B C P P2 P3 P4 T a t 00 0, 0,2 0 0, 0,25 r Tepos de ejecucón edos artétcos Ta(A) = /4*(/00+/0,+/0,2+) = 6,0/4 = 4,002 Ta(B) = /4*(/0++/0,+/0,25) = 9,/4 = 4,775 Ta(C) = /4*(/5+/5+/2+) =,9/4 = 0,475 Velocdades de ejecucón edas aróncas Rh(A) = / Ta (A) = 0,25 5 5 2 9

Rh(B) = / Ta (B) = 0,2 Rh(C) = / Ta (C) = 2,2 Luego el ejor coputador (ás rápdo) es C, segudo de A, y segudo de B Velocdad de ejecucón eda geoétrca R g R / Velocdad de ejecucón eda geoétrca ponderada R * g R f Se utlza con eddas de rendento noralzadas con respecto a una áquna de referenca 2 Patrones de edda (Bencharks) Para evaluar el rendento de un coputador podeos utlzar dferentes técncas: Modelos analítcos (ateátcos) de la áquna Modelos de sulacón (algorítcos) de la áquna La áquna real Las dos preras alternatvas se utlzan cuando la áquna no está dsponble Los odelos analítcos tenen ltado su ábto de utlzacón por la dfcultad de expresar en fora de ecuacones ateátcas el coportaento detallado de la áquna y su carga de trabajo Se utlzan en fases uy tepranas de dseño para realzar estacones generales del rendento Los odelos de sulacón pueden construrse con ayor precsón, recogendo especfcacones detalladas de dseño Sn ebargo, estos odelos requeren una gran capacdad coputaconal cuando se ncorporan todos los coponentes báscos de la áquna En la tercera alternatva es la áquna o áqunas reales las que se evalúan con el fn de dsponer de algún crtero de eleccón En este caso (y posbleente en algunos odelos de sulacón) será necesaro dsponer de un conjunto de prograas representatvos de la carga real de trabajo que vaya a tener la áquna, y con respecto a los cuales se realcen las eddas Estos prograas patrones se denonan bencharks, y serán el objeto de estudo de este apartado Podeos utlzar dferentes crteros no excluyentes a la hora de clasfcar los bencharks que se utlzan en la actualdad para evaluar los coputadores Coenzareos con una clasfcacón general en funcón del ábto de aplcacón que representan, es decr, el tpo de recursos coputaconales que ayortaraente ntervenen en la evaluacón En este sentdo los clasfcareos en: Enteros: aplcacones en las que dona la artétca entera, ncluyendo procedentos de búsqueda, operacones lógcas, etc Por ejeplo, SPECnt2000 Punto flotante: aplcacones ntensvas en cálculo nuérco con reales Por ejeplo, SPECfp2000 y LINPACK Transaccones: aplcacones en las que donan las transaccones on-lne y off-lne sobre bases de datos Por ejeplo, TPC-C En segundo lugar los agrupareos por la naturaleza del prograa que pleentan: Prograas reales: Copladores, procesadores de texto, etc Perten dferentes opcones de ejecucón Con ellos se obtenen las eddas ás precsas Núcleos (Kernels): Trozos de prograas reales Adecuados para analzar rendentos 0

específcos de las característcas de una deternada áquna: Lnpack, Lverore Loops Patrones conjunto (bencharks suts) Conjunto de prograas que den los dferentes odos de funconaento de una áquna: SPEC y TPC Patrones reducdos (toy bencharks): Prograas reducdos (0-00 líneas de códgo) y de resultado conocdo Son fácles de ntroducr y ejecutar en cualquer áquna (Qucksort,) Patrones sntétcos (synthetc bencharks): Códgo artfcal no pertenecente a nngún prograa de usuaro y que se utlza para deternar perfles de ejecucón (Whetstone, Dhrystone) A contnuacón estudareos con algún detalle tres de los bencharks con ayor dfusón 2 LINPACK Es una coleccón de subrutnas Fortran que analzan y resuelven ecuacones lneales y probleas de ínos cuadrados Los ssteas de ecuacones lneales que contepla utlzan dferentes foras de las atrces: generales, en banda, sétrcas, trangulares etc Se dseñó para edr el rendento en supercoputadores a fnales de los 70 y prncpo de los 80 (Dongarra) Lo coponen las sguentes subrutnas: atrces generales y en banda atrces defndas postvas atrces en banda defndas postvas atrces ndefndas sétrcas atrces trangulares y trdagonales descoposcón de Cholesky descoposcón QR actualzacón de las descoposcones QR y Cholesky descoposcón valores sngulares La tabla sguente uestra los resultados de este benchark para algunos coputadores correndo bajo un sstea operatvo y utlzando un coplador concreto La prera coluna nuérca presenta el resultado en Mflops/segundo, es decr, en llones de operacones en punto flotante por segundo para una atrz de orden 00 La segunda para una atrz de orden 000, y la tercera presenta el rendento de pco de la áquna Para resolver un sstea de n ecuacones se realzan 2/3n 3 + 2n 2 Coputador OS/Coplador N=00 Mflops/s N=000 Mflops/s Peak Mflops/s Cray T96 (8 proc 22 ns) cf77 (60) -Zp -Wd-68 0800 4400 Cray T96 (4 proc 22 ns) cf77 (60) -Zp -Wd-68 57 7200 Cray T96 (2 proc 22 ns) cf77 (60) -Zp -Wd-68 2943 3600 Cray T96 ( proc 22 ns) cf77 (60) -Zp -Wd-68 522 576 800 Cray C90 (6 proc 42 ns) CF77 50 -Zp -Wd-e68 479 0780 5238 Cray C90 (8 proc 42 ns) CF77 50 -Zp -Wd-e68 468 675 769 Cray 3-28 (4 proc 2 ns) CSOS 0 level 29 42 2862 3792 Htach S-3800/480(4 proc 2 ns) 20640 32000 Htach S-3800/380(3 proc 2 ns) 6880 24000 Htach S-3800/280(2 proc 2 290 6000 Htach S-3800/80( proc 2 ns) OSF/ MJ FORTRAN:V03-00 408 643 8000 Cray 3-28 (2 proc 2 ns) CSOS 0 level 29 393 622 896 Cray C90 (4 proc 42 ns) CF77 50 -Zp -Wd-e68 388 3275 380 Cray C90 (2 proc 42 ns) CF77 50 -Zp -Wd-e68 387 703 905 Cray C90 ( proc 42 ns) CF77 50 -Zp -Wd-e68 387 902 952 NEC SX-3/44R (4 proc 25 ns) 520 25600 NEC SX-3/42R (4 proc 25 ns) 8950 2800 NEC SX-3/4R (4 proc 25 ns) 485 6400 NEC SX-3/34R (3 proc 25 ns) 2730 9200 NEC SX-3/32R (3 proc 25 ns) 678 9600

NEC SX-3/3R (3 proc 25 ns) 3638 4800 NEC SX-3/24R (2 proc 25 ns) 9454 2800 NEC SX-3/22R (2 proc 25 ns) 56 6400 NEC SX-3/2R (2 proc 25 ns) 2627 3200 NEC SX-3/4R ( proc 25 ns) f77sx 040 R22 -p*:* 368 599 6400 NEC SX-3/2R ( proc 25 ns) f77sx 040 R22 -p*:* 368 2757 3200 Cray 3-28 ( proc 2 ns) CSOS 0 level 29 327 876 948 NEC SX-3/44 (4 proc 29 ns) 3420 22000 NEC SX-3/24 (2 proc 29 ns) 849 000 NEC SX-3/42 (4 proc 29 ns) 7752 000 NEC SX-3/22 (2 proc 29 ns) 4404 5500 NEC SX-3/4 ( proc 29 ns) f77sx 020 R3 -p*:* 34 45 5500 NEC SX-3/2 ( proc 29 ns): f77sx 020 R3 -p*:* 33 2283 2750 Cray Y-MP/832 (8 proc 6 ns) CF77 40 -Zp -Wd-e68 275 244 2667 Fujtsu VP2600/0 (32 ns) FORTRAN77 EX/VP VL0 249 4009 5000 Cray Y-MP/832 (4 proc 6 ns) CF77 40 -Zp -Wd-e68 226 59 333 Fujtsu VPP500/( proc 0 ns) FORTRAN77EX/VP V2L20 206 490 600 Cray Y-MP M98 (8 proc 6 ns) CF77 50 -Zp -Wd-e68 204 733 2666 Fujtsu VP2200/0 (32 ns) FORTRAN77 EX/VP V2L0 203 048 250 Cray 2S/4-28 (4 proc 4 ns CSOS 0 level 29 202 406 95 22 SPEC: (Syste Perforance and Evaluaton Cooperatve) SPEC es una socedad sn áno de lucro cuya són es establecer, antener y dstrbur un conjunto estandarzado de bencharks que se pueden aplcar a las últas generacones de procesadores Se han suceddo ya 5 generacones de bencharks: SPEC89, SPEC92, SPEC95, SPEC2000 y SPEC2006 En lo que sgue nos ltareos a la SPEC2000 y la últa en vgor SPEC2000 (2006) 22 SPEC CPU2000 (2006) Los dseña el OSG (Open Systea Group) de SPEC que es el encargado de los bencharks de coponentes y ssteas En este apartado se encuentran los SPECnt2000 (2006) y SPECfp2000 (2006), representatvos de las aplcacones enteras y reales (punto flotante) Dentro de SPEC exsten otros dos grupos HPG (Hgh Perforance Group) y GPCG (Graphcs Perforance Caracterzaton Group) La áquna de referenca de los SPEC CPU2000 y SPEC CPU2006 es la UltraSPARC0 con un procesador UltraSPARC II, a 300 MHz y 256 MB de eora Esto sgnfca que todos los resultados se calculan coo ratos frente a la áquna de referenca, que por defncón tene SPECnt2000 = 00, y SPECfp2000 = 00 222 SPECnt2000 Lo ntegran los sguentes prograas: gzp: prograa de copresón de datos que utlza el algorto de Lepel-Zv (LZ77) vpr(versatl place and route): pleenta los procesos de ubcacón (placeent) y conexonado (routng) de un crcuto dgtal sobre bloques lógcos de FPGAs Pertenece a la clase de prograas de optzacón cobnatora Utlza sulated annealng coo procedento de optzacón gcc: coplador de C que genera códgo para el procesdor Motorola 8800 cf: Prograa de planfcacón teporal (schedulng) de transporte públco que utlza el códgo MFC del étodo splex de red (versón especalzada del algorto splex de prograacón lneal) crafty: prograa de juego de ajedrez por coputador con un núero sgnfcatvo de operacones enteras y lógcas tales coo AND, OR, XOR y desplazaentos parser: analzador sntáctco de nglés basado en graátcas de enlace (lnk graar) con un dcconaro de as de 60000 palabras eon: trazador de rayos (ray tracer) que transte un núero de líneas 3D (rayos) sobre 2

un odelo polgonal 3D, calcula la nterseccón entre las líneas y los polígonos, y genera nuevas líneas para calcular la luz ncdente en los puntos de nterseccón El resultado fnal es una agen vsta por cáara perlbk: versón del lenguaje de scrpt Perl en el que se han elnado las característcas específcas del SO gap: pleenta un lenguaje dseñado para coputar en grupos (GAP: Groups, Algorth and Prograng) vortex: procede de un OODBMS (sstea de gestón de bases de datos orentado a objetos) que se ha adaptado para conforarlo a las exgencas de SPEC2000 bzp2: basado en la versón 0 de bzpb twolf: paquete de ubcacón (placeent) y conexonado (routng) en el proceso de dseño de crcutos ntegrados basados en celdas standard Utlza el algorto de sulated annealng Intel CINT2000 Result Copyrght 999-2002 Standard Perforance Evaluaton Corporaton Corporaton Intel D850MD otherboard (20A GHz, Pentu 4 processor) SPECnt2000 = 35 SPECnt_base 2000 = 22 SPEC Tested by: lcense # 3 Intel Corporaton Test date: Nov-200 Hardware Jan-2002 Aval: Software Aval: Oct- 200 Benchark Reference Te Base Base Runte Rato Runte Rato 64gzp 400 84 762 82 767 75vpr 400 36 443 35 444 76gcc 00 28 862 28 86 8cf 800 326 552 326 553 86crafty 000 47 68 46 686 97parser 800 249 723 250 72 252eon 300 42 97 22 066 253perlbk 800 209 860 209 860 254gap 00 6 944 6 945 3

255vortex 900 62 7 59 92 256bzp2 500 259 580 254 59 300twolf 3000 596 503 594 505 SPECnt_base2000 722 SPECnt2000 735 CINT2000 Result Copyrght 999-2000 Standard Perforance Evaluaton Corporaton Intel Intel VC820 (0 GHz Pentu III) Corporaton = SPECnt2000 SPECnt_base 2000 = 0 07 4 4 SPEC lcense # 3 Tested by: Intel Corporaton Test date: Mar- 2000 Hardware Aval: Mar-2000 Software Aval: Benchark Reference Te Base Base Runte Rato Runte Rato 64gzp 400 288 486 287 488 75vpr 400 426 329 426 329 76gcc 00 297 37 295 373 8cf 800 70 254 70 254 86crafty 000 200 499 200 499 97parser 800 523 344 523 344 252eon 300 320 406 320 406 253perlbk 800 32 576 33 576 254gap 00 290 379 289 38 255vortex 900 272 697 266 74 4

256bzp2 500 43 363 398 377 300twolf 3000 844 355 820 366 SPECnt_base2000 407 SPECnt2000 40 223 SPECnt2006 400perlbench C PERL Prograng Language 40bzp2 C Copresson 403gcc C C Copler 429cf C Cobnatoral Optzaton 445gobk C Artfcal Intellgence: go 456her C Search Gene Sequence 458sjeng C Artfcal Intellgence: chess 462lbquantu C Physcs: Quantu Coputng 464h264ref C Vdeo Copresson 47onetpp C++ Dscrete Event Sulaton 473astar C++ Path-fndng Algorths 483xalancbk C++ XML Processng SPECnt2006 te reference 483 xalancbk 2 400 perlbench rato te reference rato 00 teprocesador = tepo de ejecucón del benchark en le Máquna de referenca te procesador = tepo de ejecucón del benchark en el procesador a edr 4 Versones peak base speed SPECnt2006 SPECnt_base2006 throughput SPECnt_rate2006 SPECnt_rate_base2006 224 SPECfp2000 Lo ntegran los sguentes prograas: wupwse: croodnáca cuántca sw: odelado del agua superfcal grd: resolutor ult-alla: capo potencal 3D applu: ecuacones dferencales parcales elíptcas/parabólcas 5

esa: lbrería gráfca 3D galgel: dnáca de fludos art: reconocento de ágenes/redes neuronales equake: sulacón de propagacón de ondas síscas facerec: procesaento de agen: reconocento del rostro ap: quíca coputaconal lucas: teoría de núeros/prueba de núeros pros fa3d: sulacón de choques por eleentos fntos sxtrack: dseño de aceleradores de físca nuclear de alta energía aps: eteorología: dstrbucón de contanantes Tepo en una UltraSPARC0 con procesador UltraSPARCII, 300 MHz y 256 MB de eora CFP2000 Result Copyrght 999-2002 Standard Perforance Evaluaton Corporaton Intel Corporaton Intel D850EMV2 otherboard (20A GHz, Pentu 4 processor) SPECfp2000 = 73 SPECfp_base2000 = 764 SPEC lcense # 3 Tested by: Intel Corporaton Test date: May-2002 Hardware Aval: May- 2002 Software Aval: Apr-2002 Benchark Reference Te Base Base Runte Rato Runte Rato 68wupwse 600 68 952 67 957 7sw 300 235 37 233 333 72grd 800 246 730 245 736 73applu 200 263 798 258 85 77esa 400 83 767 82 769 78galgel 2900 268 084 265 094 79art 2600 489 532 484 538 83equake 300 44 905 37 950 87facerec 900 20 947 200 95 88ap 2200 434 507 43 5 89lucas 2000 89 057 89 057 6

9fa3d 200 282 746 28 746 200sxtrack 00 302 365 293 376 30aps 2600 454 572 454 573 SPECfp_base2000 764 SPECfp2000 773 225 SPECfp2006 40bwaves Fortran Flud Dynacs 46gaess Fortran Quantu Chestry 433lc C Physcs: Quantu Chroodynacs 434zeusp Fortran Physcs/CFD 435groacs C/Fortran Bochestry/Molecular Dynacs 436cactusADM C/Fortran Physcs/General Relatvty 437lesle3d Fortran Flud Dynacs 444nad C++ Bology/Molecular Dynacs 447dealII C++ Fnte Eleent Analyss 450soplex C++ Lnear Prograng, Optzaton 453povray C++ Iage Ray-tracng 454calculx C/Fortran Structural Mechancs 459GesFDTD Fortran Coputatonal Electroagnetcs 465tonto Fortran Quantu Chestry 470lb C Flud Dynacs 48wrf C/Fortran Weather Predcton 482sphnx3 C Speech recognton SPECfp2006 te reference 482 sphnx 7 40 bwaves rato te reference rato 00 teprocesador = tepo de ejecucón del benchark en le Máquna de referenca te procesador = tepo de ejecucón del benchark en el procesador a edr 4 Versones peak base speed SPECfp2006 SPECfp_base2006 7

throughput SPECfp_rate2006 SPECfp_rate_base2006 La sguente gráfca uestra la evolucón de los procesadores en los últos años caracterzados por su valor de SPECnt con referenca en el VAX /780 23 TPC (Transacton Processng Perforance Councl) TPC es un consorco de 47 fabrcantes de software y hardware entre los que se encuentran Copaq, Dgtal, IBM, NCR, Sun, Inforx, Intel, Mcrosoft y Oracle dedcado al dseño de bencharks para la edda de rendento de los ssteas nforátcos Estos bencharks analzan la ayoría de los aspectos del sstea en relacón con el procesaento de transaccones, es decr, accesos de consulta y actualzacón a bases de datos Tene el nconvenente de la cantdad de tepo que requeren las pruebas (eses) hacendo que su coste sea elevado (les de euros) Los bencharks TPC-A, TPC-B y TPC-C ya están en desuso TPC-D fue susttudo en abrl de 999 por TPC-H y TPC-R TPC-H: es un benchark de soporte a la decsón Consta de un conjunto preguntas (queres) específcas, orentadas a la actvdad coercal TPC-R: es slar a TPC-H pero perte optzacones adconales basadas en el conocento de las preguntas Adeás, TPC ha ntroducdo un benchark para edr las transaccones en la WEB: TPC-W: La carga de trabajo se confgura en un entorno de coerco que sula las actvdades de un servdor de WEB orentado a las transaccones coercales Estudareos con ás detalle en los sguentes parágrafos los actuales TPC-R y TPC-H TPC-R y TPC-H Los bencharks TPC-R y TPC-H fueron ntroducdos para susttur al TPC-D coo estándar ndustral para aplcacones coercales Los dos son uy slares ya que odelan la sa aplcacón coercal (base de datos, preguntas y funcones de refresco) Se dferencan en las reglas de pleentacón, ya que entras TPC-H lta el uso de índces y esqueas de partcones, TPC-R no lta el uso de estas estructuras en la base de datos 8

Base de Datos La base de datos de TPC-H y TPC-R utlza un esquea en la 3ª fora noral y responde al dagraa relacón-entdad de la sguente fgura (8 tablas): part partsupp lnete suppler custoer orders naton regon TPC dspone de un generador de datos para todas las tablas de la base dependendo del factor de escala SF El factor de escala deterna el taaño de los datos de la base, por ejeplo, SF=00 sgnfca que la sua de todas las tablas de la base es gual a 00 GB Las dos tablas ayores son lnete y orders que contenen el 83% de los datos El taaño de todas las tablas excepto naton y regon tenen un taaño proporconal al factor de escala Carga de Trabajo Las cargas de trabajo para abos bencharks constan de los sguentes coponentes: Construccón de la base de datos Ejecucón de 22 preguntas de solo-lectura en odo onousuaro y ultusuaro Ejecucón de 2 funcones de refresco La construccón de la base de datos ncluye todos los tepos de respuesta para crear las tablas, cargar los datos, crear índces, defnr y valdar restrccones, etc Las 22 preguntas están defndas en SQL-92 coo plantllas (teplates), por lo que antes de ser ejecutada sobre la base de datos se tene que realzar la susttucón de paráetros Se han elegdo para ostrar la capacdad del sstea utlzando todos los recursos en contextos onousuaro y ultusuaro Las dos funcones de refresco (RF y RF2) odelan la carga de nueva nforacón (RF) y la elnacón de nforacón obsoleta (RF2) RF nserta nuevas flas en la tabla lnete y orders, entras que RF2 elna el so núero de flas de las sas tablas Métrca de rendento La prncpal étrca de rendento de TPC es la étrca de rendento copuesta (QphH/QphR) Para calcular la étrca copuesta de un sstea para un factor de escala dado, hay que ejecutar un test de potenca segudo por un test de capacdad de procesaento (throughput) Después se cobnan los resultados de abos tests para calcular la étrca copuesta En un test de potenca se ejecuta la funcón de refresco RF, seguda por la ejecucón de las 22 preguntas en odo de únco usuaro, y por la ejecucón de la funcón de refresco RF2 En el test de capacdad se ejecutan las 22 preguntas (flujos de preguntas S) en orden predefndo en últples sesones concurrentes Adeás en una sesón separada se ejecuta secuencalente un par de actualzacones (RF, RF2) por cada flujo de preguntas 9