problemas de rendimiento

Upload: gustavoencarnacion

Post on 06-Jul-2018

222 views

Category:

Documents


0 download

TRANSCRIPT

  • 8/17/2019 Problemas de Rendimiento

    1/5

    Problemas de Rendimiento

    1

    1.  Acabas de terminar el diseño de un nuevo procesador y su compilador asociado.

    Esta máquina trabaja a 1 GHz y tiene unas características que se muestran en la

    tabla siguiente (M1). Debes decidir si producir el diseño tal cual está o si emplear

    algún tiempo más en realizar algunas mejoras. Existen dos tipos de mejoras:

    hardware y software. Las mejoras hardware consisten en aumentar la frecuencia

    del procesador a 1.2 GHz y modificar un poco el diseño con lo cual se obtienenunas características que se muestran también en la tabla siguiente (M2). Las

    mejoras software consisten en mejorar el compilador de forma que genere menor

    número de instrucciones, con lo cual se obtiene la utilización de instrucciones

    mostrada en la tabla siguiente (M3).

    M1 M2 M3

    Tipo CPI Frecuencia

    de uso

    CPI Frecuencia

    de uso

    % instruc ejecutadas

    respecto a M1

    A 2 40% 2 40% 90%

    B 3 25% 2 25% 90%

    C 3 25% 3 25% 85%

    D 5 10% 4 10% 95%

    La decisión está en producir la máquina M1, la M2, o la M3 (para M3 considere

    por ejemplo, si la máquina M1 ejecutaba 1000 instrucciones de la clase A, M3

    ejecutará 0.9 x 1000 = 900 instrucciones de la clase A).

    Responda a las siguientes cuestiones:

    a.  (1,0 ptos) ¿Cuál es el CPI de cada máquina?

    b.  (1,0 ptos) ¿Cuánto más rápida es M2 que M1?

    c. 

    (1,0 ptos)¿Cuánto más rápida es M3 que M1?

    d.  (2,0 ptos) El equipo de trabajo señala que es posible implementar las mejoras

    de hardware y de software en un procesador M4, ¿cuántas veces es más rápida

    M4 que M1?

    2.  (3 puntos) Considere el siguiente mix de instrucciones para determinado

    programa:

    Tipo de instrucción Frecuencia de aparición Ciclos de ejecución

    ALU 45% 1

    LOAD 15% 3STORE 30% 4

    BRANCH 10% 2

    a.  (1.5 puntos) Calcule el tiempo de CPU del programa, al ejecutarlo en un

    computador cuyo CPU opera a una frecuencia interna de reloj de 2GHz, si sabe

    que el programa consta de 12000 instrucciones.

    b.  (1.5 puntos) ¿Cuál de las dos alternativas de optimización del CPU brindaría los

    mejores resultados para la ejecución de este programa: incrementar la

    frecuencia de reloj a 2.6GHz o agregar una mejora que acelere las operacionesSTORE a 2 ciclos de reloj?

  • 8/17/2019 Problemas de Rendimiento

    2/5

    Problemas de Rendimiento

    2

    3.  (3 puntos) Estamos interesados en dos implementaciones de una máquina. Una

    con hardware especial de punto flotante y otra sin él. Considerar un programa P,

    con la siguiente mezcla de instrucciones:

    Tipo de instrucción Frecuencia de aparición Ciclos de ejecución

    Multiplicación en punto

    flotante

    10% 6

    Suma en punto flotante 15% 4

    División en punto flotante 5% 20

    Instrucciones enteras 70% 2

    La máquina MFP (máquina con punto flotante), tiene hardware de punto flotante y

    puede ejecutar directamente las operaciones en punto flotante. La máquina MNFP

    (máquina sin puntos flotante) no tiene hardware de punto flotante y por ello debe

    realizar las operaciones en punto flotante mediante instrucciones con manejo deenteros. Todas las instrucciones con números enteros necesitan dos ciclos de

    reloj. El número de instrucciones enteras necesarias para implementar cada una de

    las operaciones en punto flotante es como sigue:

    Operación en punto flotante Número de instrucciones con

    enteros para realizarla

    Multiplicación en punto

    flotante

    30

    Suma en punto flotante 20

    División en punto flotante 50

    Ambas máquinas tienen una frecuencia de reloj de 100MHz. Determine los MIPS y

    MFLOPS nativos para ambas máquinas.

    4.  Una Agencia de Turismo Aventura ofrece una atractiva excursión: Se recorren en

    Jeep un trayecto que dura 5 horas. Posteriormente sigue un sendero que se puede

    recorrer a pie y dura 8 horas, o a caballo con una duración de 4 horas. ¿Cuál es el

    Speedup que se logra usando el caballo?

    5. 

    Una mejora en un procesador permite correr programas 10 veces más rápido queel procesador original, pero la mejora sólo se puede usar el 40% del tiempo. ¿Cuál

    es el Speedup que es gana con la mejora?

    6.  Se puede mejorar la velocidad de una CPU en un factor de 5 por 5 veces el costo.

    La CPU se usa el 50% del tiempo (el otro 50% se espera por I/O). El costo de la CPU

    es 1/3 del costo del computador. ¿Es una buena inversión desde la perspectiva del

    costo/desempeño?

  • 8/17/2019 Problemas de Rendimiento

    3/5

    Problemas de Rendimiento

    3

    7.  Un diseñador de compiladores tiene el siguiente dilema: se desea generar código

    de máquina para una instrucción de alto nivel. Existen dos alternativas y ambas

    consideran 3 clases de instrucciones de máquina:

      La clase A tiene CPI = 2

      La clase B tiene CPI = 1

     

    La clase C tiene CPI = 3

      Alternativa 1:

      1 instrucciones clase A

      2 instrucción clase B

      2 instrucciones clase C

      Alternativa 2:

      3 instrucciones clase A

      2 instrucción clase B

      1 instrucción clase C

    ¿Cuál alternativa conviene?

    8.  El diseño del procesador PI, realizado hace varios años, posee las siguientes

    características: Frecuencia de funcionamiento de 500 MHz, cuatro tipos de

    instrucciones (A, B, C, D) cada una con un CPI de 1, 2, 4 y 6 ciclos respectivamente,

    y frecuencias de uso de estos tipos de instrucciones de 40%, 15%, 25% y 20%,

    respectivamente. Recientemente se ha realizado un diseño mejorado del

    procesador PI, llamado PII, en el que se ha conseguido que la frecuencia de

    funcionamiento llegue a los 800 MHz, y donde las instrucciones del tipo D ya no se

    utilizan. En su lugar, cada instrucción tipo D se sustituye por dos instrucciones tipo

    B, más sencillas.

    a) 

    (1.5 ptos) Explique qué factores de la ecuación del tiempo de CPU se venmodificados en el procesador PII y por qué.

    b)  (1.0 ptos) ¿Cuánto más rápida es PII respecto a PI?

    c)  (1.5 ptos) ¿Qué parte de la ganancia de rendimiento se debe al aumento de la

    frecuencia y cuál se debe a la sustitución de las instrucciones tipo D?

    9.  (4.0 ptos) Suponer que se sustituye la CPU Celeron de un computador compatible

    por otro CPU Pentium III (PIII) y que este cambio hace que la máquina mejore en

    un factor 4. Suponer que el costo de la CPU PIII es de $150.00 y el costo de la CPU

    Celeron es la tercera parte. Como la CPU PIII no requiere más potencia, los demás

    componentes del computador se mantiene igual. Si la CPU se utiliza el 60% deltiempo y el tiempo restante lo emplea en las operaciones de E/S. Suponer que el

    costo del CPU es el 25% del computador

    Se pide:

    a.  ¿Cuál es la aceleración obtenida con el cambio realizado?

    b.  Desde el punto de vista de costo/rendimiento, ¿Se justifica la inversión

    realizada?

  • 8/17/2019 Problemas de Rendimiento

    4/5

    Problemas de Rendimiento

    4

    10.  Imagina por un momento que has terminado la carrera y ahora trabajas para la

    empresa EUIntel  que se dedica al diseño y fabricación de sistemas

    computadores. Esta empresa ha introducido una mejora en su procesador

    Sextium que consiste en disminuir el tiempo de ejecución de las instrucciones de

    acceso a memoria por 3. Tu primer trabajo en la empresa consiste en diseñar un

    programa de prueba que consiga un speedup (incremento de velocidad) de 2 para

    así poder impresionar a los usuarios y convencerles de que se compren el nuevo

    procesador.

    a)  (2.0 ptos) ¿Qué características debe tener el programa que te han encargado

    diseñar? Explica la respuesta.

    b)  (2.0 ptos) ¿Crees que podrías diseñar un programa que obtenga un speedup

    de 3? Razona la respuesta.

    11.  (4 ptos) Se tiene una CPU con la frecuencia de 100 MHz y un ciclo de máquina

    equivalente a 1*T (1 periodo). Dado el siguiente programa en lenguaje assembler

    que calcula el promedio de 200 datos de 16 bits almacenados en memoria a partirde la dirección de memoria 500H. A partir de este programa encontrar: el CPI y los

    MIPS del procesador.

    12.  Se desea mejorar el repertorio de instrucciones de un computador, y para ello se deben

    analizar las siguientes alternativas, todas ellas tienen el mismo costo:

      Mejorar las instrucciones de suma

      Mejorar las instrucciones de salto condicional

      Mejorar las instrucciones de carga-almacenamiento

     

    Mejorar el resto de las instrucciones

    En la tabla siguiente se recoge el porcentaje de veces que se emplean las instrucciones

    después de realizar la prueba benchmark SPECint2006 y el factor de mejora que se puede

    observar en cada una de ellas son:

    Tipo de instrucción Porcentaje de empleo Factor de mejora

    Instrucciones de suma 25% 5

    Instrucciones de salto condicional 43% 4

    Instrucciones de carga-almacenamiento 32% 2

    Resto de instrucciones 4% 7

    Se pide:

    MOV AX, 2000H …….  1C

    MOV BX, 500H …….  1C

    MOV CX,200 …….  1C

    SUMA: ADD AX, [BX] ….....  2C

    INC BX …….  1C

    INC BX …….  1C

    LOOP SUMA …….  3C

    MOV BX, 200 …….  1C

    DIV BX …….  4C

    MOV PROMEDIO, AX …….  2C

  • 8/17/2019 Problemas de Rendimiento

    5/5

    Problemas de Rendimiento

    5

    a) Indicar cuál de las mejoras anteriores es la que recomendaríamos.

    b) Si un programa tardaba antes de la mejora 28,3 segundos en ejecutarse calcule cuánto

    tardará con la mejora que hemos elegido en el ítem anterior (a).