You are on page 1of 13

UNIVERSIDAD DE CUENCA

Nombre:

Bryan Coronel

Asignatura:

Organizacin y Arquitectura
de Computadores

Tema:

Ejercicios de aplicacin

Docente:

Ing. Magali Meja

Ciclo:

Marzo 2015- Agosto 2015

ARQUITECTURA Y ORGANIZACION DE COMPUTADORAS

Encontrar la palabra o frase en la lista debajo que mejor empate


con la descripcin en las siguientes preguntas. Use los nmeros de
la izquierda de las palabras in las respuestas. Cada respuesta
debera ser usada por una.
1
2
3
4

Computador usado para ejecutar grandes problemas y por lo general


se accede a travs de una red.
3. supercomputadoras.
10 elevado (15) or 2 elevado(50)
7.Petabyte
Computadoras compuestas de cientos o miles de procesadores y
terabytes de memoria.
5. Sservidores
Las aplicaciones de ciencia ficcin que probablemente sern viables
en un futuro cercano.
1. Virtual worlds

5
6
7
8
9

1.1.5 Un tipo de memoria llamada random Access memory.


12.RAM
Parte de una computadora llamada Central Procesor Unit
13.CPU
Miles de computadores formando un gran cluster
8.Datacenter.
Un microprocesador
10. Multicore processors
Computadora de escritorio sin pantalla o teclado usualmente visitada
va un red
4.Low-end-Servers

10

Actualmente la mayor clase de computadoras que corren una


aplicacin o un conjunto de aplicaciones relacionadas.
2.Desktop computer

11

Lenguaje especial usado para describir componentes de hardware.


VHDL

12

Computadora personal entregando un buen rendimiento a un solo


usuario a un costo bajo.
9. Embedded computers

13

Programa que traduce oraciones en un alto nivel a lenguaje


ensamblador.
15.Compiler.

14

Programa que traduce instrucciones simblicas a instrucciones


binarias.
18.Assembly language

15
16
17
18
19
20

21
22
23
24
25

26

Lenguaje de alto nivel para procesamiento de datos de negocio.


25.Cobol
Lenguaje binario que el procesador puede entender.
18.assembly language
Comandos que el procesador entiende.
19.machine language
Lenguaje de alto nivel para las ciencias de la computacin.
26. Fortran
Representacin simblica de una mquina de instrucciones.
18.ensamblador
Interface entre el usuario del programa y el hardware proporcionando
un variedad de servicios y funciones de supervisin.
14.Operating system.
Software y programas desarrollados por los usuarios.
24.aplication software.
Binario digit (value 1 or 1)
16.Bit.
Capa de software entre la aplicacin software y el hardware que
incluye el sistema operativo y los compiladores.
23.System software
Lenguaje de alto nivel usado para escribir aplicaciones y sistemas de
programas.
20.C
Lenguaje portable compuesto de palabras y expresiones algebraicas
que deberan ser traducidas dentro del lenguaje ensamblador antes
de correr en una computadora.
17.Lenguaje de alto nivel
10 elevado (12) or 2 elevado(40)
6. terabyte

Ejercicio 1.3 Considere los tres diferentes procesadores p1, p2, p3


ejecutando la misma instruccin con la siguiente tabla:

1.3.1 Cual procesador tiene el ms alto rendimiento


Nos proporcionan la frecuencia, y los ciclos por instruccin y sabemos que
se ejecuta solo una instruccin podemos utilizar la siguiente formula:

T deCpu1=0.75s
T de Cpu2= 0.6666666667s
T de Cpu3= 0.8333333333s
Observamos que el procesador 2 es el que tiene ms alto rendimiento.
1.3.2 Si cada procesador ejecuta un programa en 10 segundos,
encontrar el nmero de ciclos y numero de instrucciones.

Utilizamos esta frmula despejando el nmero de ciclos del programa


sabiendo que la frecuencia se mantiene y el tiempo de 10 segundos:

N de ciclos del programa=T de CPU x Frecuencia de Reloj


Ncp1=20 Gc
Ncp2=15 Gc
Ncp3=30 Gc
Ahora calculamos el nmero de instrucciones del programa con la formula

N de instruccioines=

T de CPU x Frecuencia de Reloj


CPI

N instuc1=13.33333333
N instruc2=15

N instruc3=12
1.3.3 Estamos tratando de reducir el tiempo un 30% pero esto
conduce un incremento del 20% del CPI, Que freecuencia deberian
tener para conseguir la reduccion en el tiempo.
Datos conocidos:
Tiempo= 10 segundos -> Nuevo tiempo= (10 - 10*30%) = 7
CPI= CPIo+(CPIo*20%)
Y sabemos el nmero de instrucciones dado para cada uno: entonces
despejando de la formula la frecuencia tenemos:

Frecuencia=

N instrucciones x CPI
TiempoCpu

Las frecuencias son:


F1=3.42 Ghz
F2 = 2.57 GHZ
F3= 5.14 GHz

Para los siguientes problemas usar la siguiente informacin:

1.3.4 Encontrar la IPC para cada procesador)mal


Usamos la frmula del Tiempo de CPU despejando el CPI:
CPI

Tiempo CPU x frecuencia


Nuinstrucciones

CPI1= 7x10-7
CPI2=5x10-10
CPI3=3x10-10

1.3.5 Encontrar la frecuencia de p2 que reduzca el tiempo de


ejecucin al de p1
De la formula anterior despejamos la frecuencia y consideramos el nuevo
tiempo de 7s:
Y obtenemos una frecuencia= 2.14GHz
1.3.6 Encontrar el nmero de instrucciones para p2 que reduzca su
ejecucin a la de P3.
De igual manera despejamos ahora el nmero de instrucciones y
resolvemos:

Num instrucciones=

Tiempo CPU x frecuencia


CPI

Con Tiempo= 9 segundos tenemos:


Num instrucciones = 5.4 x1010

Ejercicio 1.4 Considerar las dos diferentes implementaciones del


conjunto de instrucciones. Hay 4 clases de instrucciones A,B,C and
D. se da la frecuencia y el CPI en la tabla.

1.4.1 Dado un programa con 106 instrucciones dividido en clases


asi: 10% class A, 20% class B, 50% class C and 20% class D, cual
implementacin es la ms rpida?
Podemos calcular el nm
ero de instrucciones por cada una de las calases con los porcentages:
Num instrucc A= 100000
Num instrucc B=200000
Num instrucc C=500000
Num instruc D= 200000

Entonces utilizamos la formula

T de CPU1=

Num instACPIa+ Num instBCPIb+ Num instCCPIc + Num instDCPId


Frecuencia de reloj

T de CPU1=1.866x10-3 s
T de CPU2

Num instACPIa+ Num instBCPIb+ Num instCCPIc + Num instDCPId


Frecuencia de reloj

T de CPU2=1x10-3 s
T de CPU2 es menor lo cual indica que la implementacin P2 es ms rpida.

1.4.2 Cual es el CPI total para cada implementacin.


Conocemos el tiempo total de cada implementacin, la frecuencia, y
cada uno de los nmeros de instrucciones ejecutadas.
Haciendo la media ponderada con los CPI que nos proporcionan debido a los
diferentes pesos (porcentajes) que tienen cada uno en cuanto a las
instrucciones.
CPI total1=

1 x 0.1+20.2+3 x 0.50+ 4 x 0.2


=2.8
0.1+0.2+ 0.5+0.2

CPI total1=

2 x 0.1+ 20.2+2 x 0.50+2 x 0.2


=2
0.1+0.2+0.5+0.2

1.4.3 Encontrar los ciclos de reloj en ambos casos.


Poseemos los CPIS y los nmeros de instrucciones utilizamos la frmula:

Ciclos CPU1= (1x106)x2.8= 2800000


Ciclos CPU1= (1x106)x2= 2000000
La siguiente tabla muestra el nmero de instrucciones para un
programa:

1.4.4 Asumiendo que las instrucciones de Arith toman 1 ciclo, load


and store 5 ciclos y branch 3 ciclos. Cul es el tiempo de ejecucin
de un programa en un procesador de 2GHz
Utilizando la frmula :

T de CPU =

No ciclos
1+5+5+2
=
Frecuencia de reloj
2Ghz

T de CPU= 6.5s
1.4.5 Encontrar el CPI para el programa.
Ahora que conocemos el T de CPU , las instrucciones y la frecuencia de reloj
es posible calcular CPI as:
CPI

Tiempo CPU x frecuencia


Nuinstrucciones

CPI= 0.0185
1.4.6 Si el nmero de instrucciones de Load puede ser reducido una
mitad que velocidad, Cual es la aceleracin y el CPI?
Num instrucciones total 650.
Load= 50 instrucciones y toma 2.5 ciclos
Sacamos el nuevo tiempo:

T de CPU =

No ciclos
1+5+2.5+2
=
Frecuencia de reloj
2Ghz

T de CPU =5.25
Para calcular la aceleracin encontramos n:

n=

de CPU
6.5
=
=1.24
T de CPU 5.25

Decimos que con la variacin es 1.24 veces ms rpido.


1.6 Compiladores tienen un gran impacto en el rendimiento de las
aplicaciones sobre un procesador dado. Este problema se explorara
el impacto que los compiladores tienen en el tiempo de ejecucin.

1.6.1 Para el mismo programa, dos diferentes compiladores fueron


usados. La tabla nos muestra el tiempo de ejecucin de los dos
programas compilados. Encontrar CPI medio para cada programa
dado que el procesador tiene un ciclo de reloj de 1 ns.
Periodo 1 ns = 1x10-9 segundos
Para obtener el CPI utilizamos la siguiente formula:

Despejamos el CPI:

CPI=

T de CPU
Noinstrucciones x Periodo

CPIaA= 1
CPIbA=0.8
CPIaB=1.17
CPIbB=0.58
1.62 Asumir los cpi promedio encontrados en 1.6.1, pero que los
programas compilados se ejecutan en dos procesadores de

diferencia. Si los tiempos de ejecucin en los dos procesadores son


los mismos, cunto ms rpido es el reloj del procesador que
ejecuta cdigo de compilador de A versus el reloj del procesador
que ejecuta cdigo de compilador de B
Para realizar esta comparacin sabemos que los tiempos son los mismos,
adems el nmero de instrucciones deben ser los mismos para que la
comparacin sea justa, tambin sabemos los CPIs que obtuvimos.
De la Ecuacin del tiempo de ejecucin igualamos los tiempos y obtenemos:

(numinstrucciones)(CPI )( Perido1)=(num instruccciones)(CPI )( Periodo2)

(numinstrucciones)(1.085)(Perido1)=(numinstruccciones)(0.69)( Periodo 2)
Simplificando

(Perido1)=(0.64)(Periodo 2)

l tiempo en que se ejecuta el ciclo con el compilador A es 1.57 veces ms


lento que con el compilador B.
1.63 Un nuevo compilador es desarrollado que utiliza slo 600 millones de

instrucciones y el CPI promedio de 1.1. Cul es la aceleracin de la utilizacin de


este nuevo compilador frente a la utilizacin del compilador A o B en el procesador
original de 1.6.1
Entonces encontramos los tiempos de CPU para el caso del ejercicio 1.6.1 y para este
nuevo compilador y los comparamos.

T de Cpu(1.6.1)=(1E+9)(1.085)(1E-9)=1.085s
T de Cpu(comp C)=(600E+6)(1.1)(1E-9)=0.66s
Obteniendo n dividiento los tiempos =1.64
Decimos que el nuevo compilador es 1.64 ms rpido que el anterior.

Considerar 2 diferentes implementaciones, P1 y P2, del mismo conjunto de


instrucciones. Hay 5 clases de instrucciones (A, B, C, D y E) en el conjunto de
instrucciones. P1 tiene una frecuencia de reloj 4GHz y P2 de 6GHz. La media del
nmero de ciclos para cada clase de instruccin est en la siguiente tabla:

1.6.4 Supongamos que el rendimiento mximo se define como la tasa ms rpida

que una computadora puede ejecutar cualquier secuencia de instrucciones.


Cules son los rendimientos mximos de P1 y P2 expresan en instrucciones por
segundo
Primero encontramos los tiempos de CPU para P1 y P2:

CPI1 medio= 3
CPI2 medio= 2.8
T de CPU p1=

N de Instrucciones x 3
4 GHz

T de CPU p2=

N de Instrucciones x 2.8
=
6 GHz

Ahora encontramos los rendimientos:

Rendimiento1=

4(1 /seg)
ninstrucciones
3 x n intrucciones
n intrucciones

1.333333333
(n instrucciones/ seg)
( ninstrucciones ) 2

Rendimiento2=

6(1/ seg)
ninstrucciones
2.8 x n intrucciones
n intrucciones

2.14
(n instrucciones/ seg)
( ninstrucciones ) 2
1.6.5 si el nmero de instrucciones ejecutadas en un determinado programa se

divide en partes iguales entre las clases de instrucciones en el problema 2.36.4


excepcin de la clase A, Que se produce dos veces ms que cada uno de los dems,
cunto ms rpido es que p2 p1?
T de CPU 1=

2n instruc ( 1 )+ ninstruc ( 2 ) +n instruc ( 3 )+ n instruc ( 4 ) +n instruc (5)


4 GHz

T de CPU 1=

2n instruc ( 2 )+ n instruc ( 2 ) +n instruc ( 2 )+ n instruc ( 4 ) +n instruc (4)


6 GHz

T de CPU1=16 n instruc/4 GHz =4 n instruc(s).


T de CPU2=16 n instruc / 6Ghz = 2.67 n instruc (s)
Ahora obtenemos n:

Se simplifica el nmero de instrucciones y tenemos que Pe es 1.49 veces


ms rpida que P1.

1.6..6 A qu frecuencia P2 tiene el mismo rendimiento que P1 para la mezcla de

instruccin dada en 1.6.5

Este cociente debe ser uno


Tendramos:

4 x ninstrucciones
16 x n intruc
=
1
frecuencia de reloj 2
Simplificamos nmero de instrucciones y despejamos la frecuencia buscada
y obtenemos:
Frecuencia de reloj2 =4 gHz

You might also like