Predicción de rama estática vs dinámica

2
  

Supongamos que se usa una tubería de 5 etapas en cada uno de los dos procesadores P1 y P2. El 30% de todas las instrucciones ejecutadas son ramas. Se toma el 60% de todas las ramas. Los resultados de la rama se calculan durante la etapa de decodificación (etapa 2). Las penalizaciones de rama son la única fuente de paradas. Tanto P1 como P2 funcionan a la misma frecuencia de reloj.   Supongamos que P1 usa la predicción de rama estática (y supone que NO SE HA TOMADO); mientras que P2 usa la predicción de rama dinámica.

     
  1. ¿Qué precisión de predicción de rama debe tener P2 para poder desempeñarse tan bien como P1?

  2.   
  3. Si la precisión de la predicción de ramificación para P2 es del 90%, ¿cuál es la aceleración de P2 sobre P1?

  4.   

Para (1) Sé que el retraso para P1 se puede calcular como (.3) (. 6) (1), ¿eso significa que P2 necesita tener una precisión del 40%?

Para (2) Sé que speedup = T slow / T fast , así sería ((.3) (. 6) (1)) / ((.3) (. 1) (1))?

    
pregunta John Takiyama

1 respuesta

1

(1 )

La eficiencia de la predicción de ramificación estática de P1 es \ $ \ eta_ {Branch_1} = 0.4 \ $ (ya que se toma el 60% de las sucursales).

Para que P2 se desempeñe tan bien como P1, debería tener la misma eficiencia en la predicción de rama.

(2 )

Tu definición de aceleración parece extraña. Yo diría que:

$$ SU = \ frac {Troughput_ {P2} -Troughput_ {P1}} {Troughput_ {P1}} $$

donde

$$ Rendimiento = < fracción \ _de \ _nonbranches > * 1 + < fracción \ _of \ _branches > < mean \ _throuhput \ _of \ _branches > $$

donde

$$ < mean \ _throuhput \ _of \ _branches > = < fraction \ _of \ _correct \ _predictions > * 1 + < fraction \ _of \ _incact \ _predictions > * & it; $$

La penalización por predicción incorrecta parece ser 1 ciclo de reloj (porque está "fija" en la etapa 2). Esto significa que la penalización fraccionaria es \ $ \ times2 \ $. Esto significa que el rendimiento de las predicciones incorrectas es \ $ 0.5 \ $ (una instrucción en dos ciclos de reloj).

Sustituir todo conduce a:

$$ SU = \ frac {0.985-0.91} {0.91} = 0.082 = 8.2 \% $$

    
respondido por el Vasiliy

Lea otras preguntas en las etiquetas

Comentarios Recientes

Actividad. Esto tiene todos los beneficios del análisis de series de tiempo, pero presenta datos en formatos novedosos para un análisis de series de tiempo sin precedentes. Proporciona un funcionamiento para la gestión de los KPI: nivel 3, nivel 3, agregación de control y usuarios. Publish_Bubble, Publish_Byte, Publish_Decimal. Fecha, fecha y hora, duración. Java Release 23 Plataforma (s) de destino Dispositivo de Juniper Networks 1 (LSA1) Dispositivo de Juniper Networks 10 M & L (SB66040) Notas de salida SwitchRank:... Lees verder