Problermas Entregar Tema1 Estructura Computadores

4
Ejercicios de Estructura de Computadores. Grado en Ingeniería Informática Curso 2014/15 Página 1 Deseamos comparar el rendimiento de dos sistemas diferentes: S1 y S2. Se han realizado las siguientes medidas sobre estos sistemas: Tiempo en Sistema 1 Tiempo en Sistema 2 Programa 1 12 s 15s Programa 2 4 s 5 s ¿Qué sistema tiene mejor redimiendo usando como carga de trabajo los programas 1 y 2? Sabemos que: RENDIMIENTO = 1 /TIEMPO DE EJECUCIÓN Como se utilizan 2 programas tenemos que sumar ambos tiempos Por lo tanto RENDIMIENTO DEL SISTEMA 1 *Sumamos el tiempo de los 2 programas: 12S+4S=16S Rendimiento= 1/16= 0.0625 RENDIMIENTO DEL SISTEMA 2 *Sumamos el tiempo de los 2 programas: 15S+5S=20S 1/20=0.05 COMO SE PUEDE OBSEVAR EL SISTEMA 1 TIENE MAYOR RENDIMIENTO POR OBTENER MAYOR EL RENDIMIENTO EN LA EJECUCION DE LOS PROGRAMAS

description

Estructura Computadores, primera actividad que se brinda al alumno. Resuelta

Transcript of Problermas Entregar Tema1 Estructura Computadores

Page 1: Problermas Entregar Tema1 Estructura Computadores

Ejercicios de Estructura de Computadores. Grado en Ingeniería Informática Curso 2014/15

Página 1

Deseamos comparar el rendimiento de dos sistemas diferentes: S1 y S2. Se han realizado las siguientes

medidas sobre estos sistemas:

Tiempo en Sistema 1 Tiempo en Sistema 2

Programa 1 12 s 15s

Programa 2 4 s 5 s

¿Qué sistema tiene mejor redimiendo usando como carga de trabajo los programas 1 y 2?

Sabemos que:

RENDIMIENTO = 1 /TIEMPO DE EJECUCIÓN

Como se utilizan 2 programas tenemos que sumar ambos tiempos

Por lo tanto

RENDIMIENTO DEL SISTEMA 1

*Sumamos el tiempo de los 2 programas: 12S+4S=16S

Rendimiento= 1/16= 0.0625

RENDIMIENTO DEL SISTEMA 2

*Sumamos el tiempo de los 2 programas: 15S+5S=20S

1/20=0.05

COMO SE PUEDE OBSEVAR EL SISTEMA 1 TIENE MAYOR RENDIMIENTO POR OBTENER

MAYOR EL RENDIMIENTO EN LA EJECUCION DE LOS PROGRAMAS

Page 2: Problermas Entregar Tema1 Estructura Computadores

Ejercicios de Estructura de Computadores. Grado en Ingeniería Informática Curso 2014/15

Página 2

Considerar dos implementaciones diferentes, Computador 1 y Computador 2 del mismo repertorio de

instrucciones. Hay cuatro clases de instrucciones (A, B, C y D) en el repertorio de instrucciones.

Computador 1 tiene una frecuencia de reloj de 2.5 GHz. El Computador 2 tiene una frecuencia de reloj

de 3.2 GHz. El número medio de ciclos para cada clase de instrucciones en Computador 1 y 2 es como

sigue:

Clase Computador1 Computador 2

A 1 ciclo 2 ciclos

B 2 ciclo 2 ciclos

C 3 ciclo 4 ciclos

D 4 ciclo 4 ciclos

Suponer que el rendimiento de pico se define como la frecuencia más rápida a la que una máquina

podría ejecutar una secuencia de instrucciones escogidas para maximizar esa frecuencia. ¿Cuáles son

los rendimientos pico de Computador 1 y Computador 2 expresados como instrucciones por segundo?

COMO HACE REFERENCIA A PICO HAY QUE PONER LA MENOR DE LAS

INSTRUCCIONES YA QUE ES EL MEJOR CASO POSIBLE

Computador 1 frecuencia de reloj de 2,5 109 Hz

Computador 2 frecuencia de reloj de 3,2. 109 Hz

MIPS = 𝐼𝑛𝑠𝑡𝑟𝑢𝑐𝑐𝑖𝑜𝑛𝑒𝑠

𝑇.𝑒𝑗𝑒𝑐𝑢𝑐𝑖ó𝑛 ×

1

106 = 𝐼𝑛𝑠𝑡𝑟𝑢𝑐𝑐𝑖𝑜𝑛𝑒𝑠

𝐼𝑛𝑠𝑡𝑟𝑢𝑐𝑐𝑖𝑜𝑛𝑒𝑠 ×𝐶𝑃𝐼 × 1

𝑓𝑟𝑒𝑐𝑢𝑒𝑛𝑐𝑖𝑎 𝑟𝑒𝑙𝑜𝑗

× 1

106 =

= 𝐹𝑟𝑒𝑐𝑢𝑒𝑛𝑐𝑖𝑎

𝐶𝑃𝐼 ×

1

106 ;

Computador 1 1 ciclo

MIPS = 𝐹𝑟𝑒𝑐𝑢𝑒𝑛𝑐𝑖𝑎

1 ×

1

106 = 2,5.109

1

106 = 2,5. 103 MIPS = 2500

Computador 2 2 ciclos

MIPS = 𝐹𝑟𝑒𝑐𝑢𝑒𝑛𝑐𝑖𝑎

1 ×

1

106 = 3,2.109

1

106 = 1,6. 103 MIPS = 1600

Page 3: Problermas Entregar Tema1 Estructura Computadores

Ejercicios de Estructura de Computadores. Grado en Ingeniería Informática Curso 2014/15

Página 3

Considérese un Computador con tres tipos de instrucciones A, B, C y los siguientes CPI: CPIA=1,

CPIB=2, CPIC=3. Compilamos un mismo programa usando dos compiladores diferentes y obtenemos

los siguientes valores:

Número de instrucciones

(en miles de millones)

A B C

Compilando con Compilador 1 5 1 1

Compilando con Compilador 2 10 1 1

Asumiendo que la frecuencia de reloj de la máquina es de 3 GHz:

a) ¿Qué secuencia de código se ejecutará más rápido, la generada por el compilador 1 o por el

compilador 2?

Hay que hallar primero los tiempos de ejecución de los compiladores:

Para ello sabemos que el Tejec =Ciclo del reloj CPU/ Frecuencia del Reloj

Para el COMPILADOR 1 tenemos que:

TIPO A: 5*1 Ciclos= 5

TIPO B: 1*2 Ciclos= 2

TIPO C: 1*3 Ciclos= 3

TOTAL CICLOS = 10 . Como la frecuencia está en GHZ=109 = 10*109

CON LO QUE EL TIEMPO DE EJECUCION PARA EL COMPILADOR 1 ES:

10𝑥109

3𝑥109= 3,3 𝑠

Para el COMPILADOR 2 tenemos que:

TIPO A: 10*1 Ciclos= 10

TIPO B: 1*2 Ciclos= 2

TIPO C: 1*3 Ciclos= 3

TOTAL CICLOS = 15 . Como la frecuencia está en GHZ=109 = 15*109

CON LO QUE EL TIEMPO DE EJECUCION PARA EL COMPILADOR 1 ES:

15𝑥109

3𝑥109= 5 𝑠

Con lo que el COMPILADOR 1 obtiene el código más rápido

Page 4: Problermas Entregar Tema1 Estructura Computadores

Ejercicios de Estructura de Computadores. Grado en Ingeniería Informática Curso 2014/15

Página 4

b) ¿Y en cuanto a MIPS?

Sabemos que MIPS=Nº de Instrucciones / Tiempo de ejecución x 106

Por lo que: Nº Instrucciones Compilador 1: (5+1+1)= 7 * 109 como su tiempo de ejecución es de: 3,3s

7𝑥109

3.3𝑥106= 2121,21 𝑀𝐼𝑃𝑆

Nº Instrucciones Compilador 2: (10+1+1)= 12* 109 como su tiempo de ejecución es de: 5s

12𝑥109

5𝑥106= 2400 𝑀𝐼𝑃𝑆

Con lo que se observa que con el Compilador 2 se obtienen mayor nº de instrucciones.

c) ¿Qué nos da mejor medida de rendimiento: el tiempo de ejecución del programa o los MIPS que

se ejecutan?

El tiempo de ejecución, puesto que se ha acordado que se toma como valor referencia para el

rendimiento: el tiempo de ejecución