Sobre rendimiento de la CPU(2)????

Colapsar
X
 
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • Sobre rendimiento de la CPU(2)????

    Buenas,
    Estudio Ing. Informatica y estoy trabajando con el libro de Hennesey y Patterson "Computer Organization and Design" y en uno de los apartados se presenta el siguiente problema:

    Un aplicacion en java se ejecuta 15 segundos en un procesador de mesa. Un nuevo compilador de java ha salido a la venta requiere solo 0.6 de las instrucciones del viejo compilador. Sin embargo, se incrementa el CPI(ciclos por segundo) en 1.1 (se multiplica por 1.1). Como de rapido podemos esperar que se ejecute la aplicación usando el nuevo compilador??? La solución es 15*0,6*1,1=9,9segundos, PERO NO ENTIENDO LA SOLUCIÓN. ALGUIEN SABE PORQUE DA ESTO??? Mil gracias a todos!

  • #2
    Re: Sobre rendimiento de la CPU(2)????

    Hola,

    Por lo que recuerdo, y ya hace unos años que acabé la carrera, en el estudio teórico del rendimiento de un procesador interviene una fórmula que es la siguiente:

    Tp = I * CPI * f, donde:
    Tp: tiempo que tarda en ejecutarse un programa
    I: cantidad de instrucciones (de código máquina) que contiene el programa a ejecutar
    CPI: ciclos de reloj que se necesitan para cada instrucción (se usa el CPI medio porque no todas las instrucciones tienen porqué usar la misma cantidad de ciclos de reloj)
    f: frecuencia de reloj del procesador.

    Ahora vamos a tu problema. Fíjate que te dice que el Tp es de 15 segundos, y lo que quieren saber es cuál será el nuevo tiempo de ejecución si las instrucciones a utilizar son menos (el 60%) pero el CPI se incrementa multiplicando po 1.1 (esto es un incremento del 10%). Parece que faltan datos pero no es así. No necesitas para nada ni la cantidad de instrucciones, ni el CPI ni la frecuencia, y...¿porqué?.

    Muy sencillo, porque cuando se calcularon los 15 segundos de Tp, en la fórmula original ya se tendrían en cuenta los datos de I, CPI y f. Ahora te modifican algunos parámetros y se necesita saber el valor resultante nuevo. Pues obviamente, y matemáticamente hablando, puesto que la fórmula no son más que productos; multiplicando el resultado anterior, que es 15, por los modificadores de I (que es 0.6) y del CPI (que es 1.1) obtendrás el nuevo tiempo. Te lo pongo de forma algebraica:

    Tp = I * CPI * f = 15

    Por tanto, mira lo que pasa si aplico los modificadores en la fórmula original:
    (I * 0.6) * (CPI * 1.1) * f = 15 * 0.6 * 1.1

    ¿Ves? De ahí sale el hacer 15*0.6*1.1 = 9,9 segundos. Respecto a porqué se decrementa...pues si el CPI aumenta ligeramente pero la cantidad de instrucciones es sustancialmente menor, el tiempo total resultante mejora reduciéndose.

    No se si me he explicado. Espero que te sirva.

    Saludos.

    PD: Esto son matemáticas básicas ehhh xD
    Editado por última vez por Drazhaz 29-08-11, 11:13:11.
    Linux User #344788 - Proud member since early 2005
    NORMAS del foro - Reglas de Netiqueta - Utilizar correctamente un antivirus
    >> Recomendaciones generales para un óptimo funcionamiento del ordenador <<

    Comentario


    • #3
      Re: Sobre rendimiento de la CPU(2)????

      Es verdad!!!!!!!!!!!! Qué depiste! Gracias Drazhaz!!!

      Comentario

      Trabajando...
      X