[Practico 3][Ejercicio 2] Duda acerca de como contar las intrucciones

[Practico 3][Ejercicio 2] Duda acerca de como contar las intrucciones

de German Gonzalez Ruiz -
Número de respuestas: 1

Buenas, de este ejercicio no me queda claro como se interpreta la parte que dice "En la CPUa, el 20% de todas las instrucciones ejecutadas son saltos condicionales; como cada salto necesita una comparación, otro 20% de las instrucciones son comparaciones."

Entiendo que tengo un programa (por ejemplo 100 instrucciones) y que para el CPUb son 100 instrucciones mientras que para el CPUa son 120 instrucciones (20% saltos y 20% comparaciones). ¿Está bien pensarlo así?
Siguiendo ese razonamiento, el programa en la CPUb se ejecutaría en 120 ciclos mientras que en la CPUa se ejecutaría en 140 ciclos. ¿Está bien ese razonamiento?

Gracias, Saludos

En respuesta a German Gonzalez Ruiz

Re: [Practico 3][Ejercicio 2] Duda acerca de como contar las intrucciones

de Federico Rivero -

Hola!

Si, está bien pensar que si el programa 'original' tiene 100 instrucciones de las cuales 20% son saltos condicionales, entonces para la CPUa se mantiene en 100 el número de instrucciones y para la CPUb pasan a ser 120 (20 saltos y 20 comparaciones). Lo que está mal es decir que de esas 120, el 20% sean saltos y el 20% sean comparaciones (20 no es el 20% de 120), pero ese es un detalle de la letra o de la interpretación que estamos haciendo.

Sobre la cantidad de ciclos en este caso, yo interpreto que de las dos instrucciones en las que se divide el salto condicional para la CPUa, sólo la segunda toma dos ciclos por ser ésta una instrucción de salto condicional, mientras que la primera toma 1 por ser una simple comparación (instrucción de ALU). Habiendo dicho esto, en realidad no es medular al ejercicio si se interpreta de esta manera o como lo hiciste vos (tomando que ambas duran 2 ciclos), porque el razonamiento que hay que hacer para calcular la aceleración es análogo.

Saludos,

         Federico