Sé cómo calcular CPI o ciclos por instrucción de las proporciones de aciertos y errores, pero no sé exactamente cómo calcular el miss ratio que sería 1 - hit ratio si no me equivoco. Sé que la tasa de aciertos se calcula dividiendo aciertos / accesos, pero el problema dice que, dado el número de aciertos y errores, calcule el porcentaje de errores.

Mi razonamiento es que teniendo el número de aciertos y errores, en realidad tenemos el número de accesos = aciertos + errores, por lo que la fórmula real sería:

hit_ratio = hits / (aciertos + errores)

Por tanto, la proporción de fallos sería

miss_ratio = 1 – hit_ratio

Si mi razonamiento es correcto, ¿verdad?

¿Cuáles son las latencias de acertar y fallar? Porque los necesito para calcular el mean access time usando las proporciones de aciertos y errores y las latencias de aciertos y errores (en ciclos) …

Responder

Sí. La tasa de aciertos es la fracción de accesos que son aciertos. El índice de fallas es la fracción de accesos que fallan. Sostiene que $$ \ text {miss rate} = 1- \ text {hit rate}. $$

La latencia (hit / miss) (también conocido como tiempo de acceso) es el tiempo que se tarda en obtener el datos en caso de un acierto / error. Si el acceso fue un éxito, este tiempo es bastante corto porque los datos ya están en la caché. Pero si fue un error, ese tiempo es mucho más largo ya que se necesita acceder a la memoria L3 (lenta). La latencia depende de la especificación de su máquina: la velocidad de la caché, la velocidad de la memoria lenta, etc.

Comentarios

  • ¿Puede muéstrame un ejemplo simple de cómo calcularías el mean access time tener de Te lo dije?
  • tiempo medio de acceso == el tiempo promedio que se tarda en acceder a la memoria . Si se necesitan X ciclos para un acierto e Y ciclos para un error, y el 30% del tiempo es un acierto (por lo tanto, el 70% es un error) – > cuál es el promedio (media) tiempo que se tarda en acceder ??
  • Bueno, sabemos que $ X * 0.30 $ es el número total de ciclos en los que tenemos un hit, y que respectivamente $ Y * 0.70 $ es el total número de ciclos en los que tenemos una falla, por lo tanto, el número total de ciclos es la suma de ambos: total_number_of_cycles = $ X * 0.30 $ + $ Y * 0.70 $. Pero todavía no tenemos un promedio de algo, necesitamos dividirlo por el tiempo total: mean_access_time = total_number_of_cycles / 1.0, ¿es ¿verdad?
  • @RanG. ¿Puedes echar un vistazo a mi pregunta de acierto / error de almacenamiento en caché? cs.stackexchange.com/questions/43235/…

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *