Windows Vista-SuperFetch y ReadyBoost
Publicado por primera vez en TECHNET en marzo 29, 2007
Hoy vamos a discutir dos nuevas mejoras de rendimiento de Vista, SuperFetch & ReadyBoost. También discutiremos el uso de la RAM de Vista, ya que todos estos funcionan juntos.
En primer lugar, SuperFetch es una mejora del Prefetcher que probablemente haya visto mencionado en versiones anteriores de Windows. El Prefetcher se encarga de almacenar la información del programa para que los programas y procesos de uso frecuente puedan ejecutarse más rápido. En Vista, el Prefetcher se ha ajustado y cambiado para ser mucho más agresivo e inteligente en su almacenamiento en caché para dar un rendimiento aún mayor. Esta nueva funcionalidad se llama SuperFetch.
SuperFetch realiza un seguimiento de las aplicaciones que utiliza más y carga esta información en la RAM para que los programas se carguen más rápido de lo que lo harían si se tuviera que acceder al disco duro cada vez. SuperFetch de Windows prioriza los programas que está utilizando actualmente sobre las tareas en segundo plano y se adapta a la forma en que trabaja al rastrear los programas que usa con más frecuencia y cargarlos previamente en la memoria. Con SuperFetch, las tareas en segundo plano se siguen ejecutando cuando el equipo está inactivo. Sin embargo, cuando finaliza la tarea en segundo plano, SuperFetch repobla la memoria del sistema con los datos con los que estaba trabajando antes de que se ejecutara la tarea en segundo plano. Ahora, cuando regrese a su escritorio, sus programas continuarán funcionando con la misma eficiencia que lo hacían antes de que se fuera. Incluso es lo suficientemente inteligente como para saber qué día es en caso de que use diferentes aplicaciones con más frecuencia en ciertos días.
OK, entonces, ¿cómo se ve afectado el uso de RAM? Es posible que haya notado que Vista tiende a usar un porcentaje mucho mayor de RAM del sistema que en Windows XP. No es raro ver el Administrador de tareas en una máquina Vista con varios GB de RAM instalados y menos de 100 MB de RAM aparece como libre. Por ejemplo, aquí hay una captura de pantalla del Administrador de tareas de la máquina en la que estoy trabajando ahora.
Como puede ver, esta máquina tiene 4 gb de RAM y solo usa aproximadamente 2,2 gb teniendo en cuenta las aplicaciones que tengo abiertas (actualmente estoy ejecutando Outlook 2007, Word 2007, Windows Live Writer Beta , varias instancias de IE7 con varias pestañas abiertas y algunas de mis herramientas del día a día), sin embargo, muestra una memoria física libre de solo 59 MB. A primera vista, esto parece ser algo de lo que preocuparse y esto tiende a poner a las personas un poco nerviosas, pero una vez que considera el impacto del SuperFetch, esta condición se vuelve menos preocupante.
Muchas personas tienden a pensar en la RAM como algún tipo de recurso, y cuando comienza a agotarse, creen que tienen un problema. En realidad, sin embargo, la RAM es más como un caché. Si su sistema solo usa un pequeño porcentaje de su caché, es un gran desperdicio. Imagine cómo funcionaría su procesador si su caché L2 nunca usara más del 25% de su capacidad. La caché L2 es una pequeña cantidad de memoria de alta velocidad que permite un acceso de alta velocidad a los datos a los que se accede más comúnmente en el sistema.
En versiones anteriores de Windows, el Prefetcher no era muy agresivo al rellenar la memoria RAM. Sin embargo, con Windows Vista, SuperFetch hace todo lo posible para usar tanta RAM como pueda, porque si la tiene, también podría usarla.
Como puede observar en la captura de pantalla anterior, solo muestra aproximadamente 2,2 GB de RAM utilizados, pero no muestra el resto como libre. Esto se debe a que los datos en la caché se consideran de muy baja prioridad y cualquier proceso que entre y necesite usar RAM eliminará estos datos de forma transparente para el usuario o el proceso. Por lo tanto, se está utilizando la memoria, pero en lo que respecta a los procesos, está vacía. Así que esto se reduce a que incluso si ves que tienes muy poca memoria física libre, lo más probable es que no sea nada de lo que preocuparse, es solo un trabajo SuperFetch. Dicho esto, si tiene varios programas que usan mucha RAM, esto podría causar el agotamiento de los recursos del sistema, sin embargo, podría verlo en el gráfico de uso de memoria en el Administrador de tareas. Si deshabilita SuperFetch, Windows Vista se comporta más como Windows XP en términos de Prefetcher. SuperFetch también reconoce y utiliza automáticamente cualquier capacidad que ofrezcan los dispositivos de almacenamiento mejorados para ReadyBoost y ReadyDrive para el almacenamiento en caché de disco de alto rendimiento.
Ahora que hemos introducido SuperFetch, pasemos a ReadyBoost. Cuando hablamos de formas de mejorar el rendimiento de un ordenador, una de las primeras cosas en las que pensamos es en agregar memoria (RAM) a un sistema. Cuanta más memoria tenga un sistema, menos a menudo tendrá que acceder al disco duro para ejecutar aplicaciones. Sin embargo, agregar RAM a un sistema no siempre es una opción viable, ya sea porque la máquina no tiene capacidad para expansión adicional, o porque la RAM en sí no es barata. Recuerde: es importante asegurarse de comprender la diferencia entre SuperFetch que realiza almacenamiento en caché inteligente con RAM disponible y múltiples programas que causan agotamiento de recursos debido a la cantidad de RAM que usan.
Entonces, ¿qué aporta ReadyBoost a la mesa? ReadyBoost es una nueva característica que permite a Windows Vista usar memoria flash no volátil, como una memoria USB o una tarjeta SD, para mejorar el rendimiento del sistema. Los discos duros son ideales para grandes E/S secuenciales.Para esas situaciones, no se utiliza ReadyBoost. El manejo de transacciones de discos pequeños es mucho más rápido en la memoria de estado sólido en comparación con los discos duros, sin embargo, la compensación es que la tasa de rendimiento continuo de una memoria USB o tarjeta SD no se combina bien con un disco duro. ReadyBoost crea una copia de una parte de la memoria caché del disco y la coloca en la memoria flash. Todas las páginas del dispositivo están respaldadas por una página en el disco.
La caché de disco es utilizada por el sistema para almacenar en caché los datos utilizados recientemente. ReadyBoost utiliza la gestión de memoria inteligente de Windows SuperFetch para seleccionar pequeñas cantidades de datos que se obtienen lentamente de la caché del disco duro y hace una copia de ellos en la unidad flash. Es importante recordar que esto es solo una copia, por lo que incluso si el stick está desenchufado, no se pierden datos y el sistema sigue funcionando. El resultado neto es que cuando el sistema necesita acceder a pequeñas piezas de datos no contiguos, puede obtenerlos mucho más rápido desde la unidad flash que desde el disco duro. Si el sistema necesita acceder a trozos más grandes de datos, simplemente utiliza el disco duro. En este punto, es importante señalar que utilizamos AES-128 para cifrar todo lo que escribimos en el dispositivo, por lo que si elimina el dispositivo, sus datos almacenados en el dispositivo seguirán estando protegidos.
OK, entonces, ¿cuáles son las pautas para usar ReadyBoost? En general, se recomienda tener al menos un 1:1 relación entre memoria de estado sólido y RAM. Por lo tanto, si tiene 2 GB de RAM, debe tener al menos una memoria USB o tarjeta SD de 2 GB. Eso se consideraría el mínimo ideal. En el otro extremo del espectro, podría tener una relación de memoria de estado sólido a RAM de 2,5:1. Sin embargo, el límite superior de flash que se puede usar para ReadyBoost es de 4 GB (debido a las limitaciones del sistema de archivos FAT32).
Entonces, ¿qué tipo de aumentos de velocidad es probable que vea? Con toda honestidad, variará de un sistema a otro. En una máquina con solo 1 GB de RAM que se está utilizando en gran medida, ReadyBoost proporcionará un aumento notable del rendimiento. Por el contrario, en un sistema con 4 GB de RAM que realmente no está estresado por el uso de la aplicación, los beneficios de ReadyBoost no serán evidentes.
Aquí lo tiene: una introducción rápida a ReadyBoost. La mejor parte de ReadyBoost es que implementarlo es fácil; todo lo que tienes que hacer es conectar un stick compatible y seleccionar la opción «Acelerar mi sistema usando ReadyBoost» en la interfaz de reproducción automática. Las opciones de configuración de ReadyBoost son muy simples, como puede ver en la imagen de la izquierda, tiene dos opciones cuando conecta su dispositivo: si desea usar o no ReadyBoost y cuánto espacio en el dispositivo asignar a Ready Boost. Para los usuarios no técnicos, abrir la caja de sus sistemas domésticos y agregar RAM puede ser una tarea desalentadora, pero ir a la tienda de computadoras local y recoger una memoria USB barata y compatible debería ser lo suficientemente fácil.
Estos son los requisitos para un dispositivo USB compatible con ReadyBoost:
- La llave USB debe ser al menos USB 2.0
- El dispositivo debe poder realizar 3,5 MB / s para lecturas aleatorias de 4 KB de manera uniforme en todo el dispositivo y 2,5 MB/s para escrituras aleatorias de 512 KB de manera uniforme en todo el dispositivo.
- La llave USB debe tener al menos 64 mb de espacio libre