lunes, 28 de mayo de 2012

6.4 Evaluación del rendimiento



Como podemos deducir del apartado anterior, el tratamiento de un fallo de página es
muy costoso en tiempo comparado con un acceso a memoria paginada. Hay que
tener en cuenta que en la actualidad un tiempo de acceso a memoria paginada típico
(tm) es del orden de 10-7
 segundos o menos, mientras que el tiempo de tratamiento de
un fallo de página (t
f
) es del orden de la decena de milisegundos (básicamente el
tiempo de acceso a disco), es decir cinco órdenes de magnitud superior.
Si la probabilidad de fallo de página es  pf
, el tiempo medio de acceso a memoria
virtual (tv) se calcula como:
tv = tm + pf
 t
f
Para hacernos una idea de en qué órdenes debe moverse la probabilidad de fallo de
página para que el rendimiento del sistema no se resienta demasiado, vamos a partir
de la relación de tiempos tv/tm. Obsérvese que tv/tm – 1 expresa una medida de la
pérdida de rendimiento relativa a tm resultante de introducir en un sistema paginado
memoria virtual, en tanto por 1. Despejando pf
 en la expresión de arriba, podemos
expresarla en función de esta relación:
pf
 = (tv/tm –1) (tm/t
f
)
Por ejemplo, si se pretende que la pérdida de rendimiento en el acceso a memoria
con memoria virtual no supere el 10% con respecto al tiempo de acceso en el mismo
sistema sin memoria virtual, la probabilidad de fallo de página debería ser:
pf
 < 0,1 (tm / t
f
)
que para la relación típica tm/t
f
 de 5 órdenes de magnitud razonada más arriba, da
una probabilidad del orden de 10
−6
.
Afortunadamente, hay algunos factores que permiten matizar estos resultados:

• Si el sistema no fuese de memoria virtual, debería cargar inicialmente todo el
programa, lo que supone un tiempo equivalente al de tratar tantos fallos de
página como páginas tiene el programa.
• La localidad espacial de los programas y el tamaño de las páginas (típicamente
de varios Kb en la actualidad) aseguran que, cargadas las primeras páginas,
habrá gran cantidad de referencias a ellas antes de producir un fallo.
• En sistemas multiprogramados, la CPU puede ejecutar otros procesos
mientras se atiende un fallo de página.
• Con relación a otros niveles de la jerarquía de memoria (por ejemplo la
memoria cache), en memoria virtual el espacio destinado en disco para área de
paginación ha de configurarse de forma que no sea mucho mayor que el
espacio la memoria física disponible
11
.
Una política de reemplazo de páginas adecuada explotará ventajosamente la
localidad temporal de los programas, haciendo posible un rendimiento razonable.

No hay comentarios:

Publicar un comentario