¿Poner la carpeta swapfile & temp en ramdisk es una buena idea en Windows 7 de 64 bits con mucha RAM?

16

Quiero que mi Windows se ejecute lo más rápido posible. Si tengo 12 GB de RAM en Windows 7 64 bits, CPU de cuatro núcleos, y todas las aplicaciones caben en la memoria, ¿alguna vez se utilizará el archivo de intercambio? La pregunta es si es una buena idea colocar el archivo de intercambio en un disco RAM.

¿Un disco RAM ayudaría de alguna manera o Windows usará de manera inteligente toda la memoria disponible para todo su trabajo?

También estoy pensando en poner la carpeta temporal en un disco RAM. Sé que el disco RAM es memoria volátil y no me importa su contenido si se pierde.

Tony_Henrich
fuente
El título me hizo reír un poco, pero en realidad si [...] todas las aplicaciones caben en la memoria, ¿alguna vez se utilizará el archivo de intercambio para algo es una buena pregunta?
Arjan
El archivo de paginación, no es un "archivo de intercambio", se usará según sea necesario para permitir que los programas asignen espacio de direcciones virtuales más allá de lo que permitiría la RAM sola. Esto es necesario incluso si, después de la asignación, en realidad solo usan tanto como cabría en la RAM.
Jamie Hanrahan

Respuestas:

7

Estoy de acuerdo en que poner el archivo de intercambio en un disco RAM no tiene sentido para un sistema operativo de 64 bits. Sin embargo, si uno tiene WinXP de 32 bits, Windows solo puede "ver" los primeros 3,5 GB de RAM. Si uno tiene más RAM, digamos, 9GB, WinXP desperdicia completamente la RAM por encima de 3.5GB. Sin embargo, al usar un programa como SuperSpeed ​​RamDisk Plus, se puede usar la memoria por encima de 3.5GB como un ramdisk, y poner el archivo de intercambio allí tiene mucho sentido (de nuevo, en XP de 32 bits, no Win7 de 64 bits )

Por separado, colocar archivos temporales en un disco RAM casi siempre tiene sentido, en cuanto al rendimiento, a menos que el tamaño previsto ponga una abolladura demasiado grande en la RAM disponible para el sistema operativo.

Floont Artney
fuente
6

Poner el archivo de paginación en un disco RAM es una idea ridícula. Debe comprender que solo una fracción de la paginación total involucrará el archivo de paginación. La mayor parte de la paginación será con archivos ejecutables y otros asignados, y un archivo de paginación en RAM no hará nada para mejorar este rendimiento. Y gracias a la reducción del sistema ram disponible habrá más de esta paginación. El resultado es que el acceso al archivo de página será más rápido, pero los niveles generales de paginación serán más altos con una reducción en el rendimiento.

usuario43161
fuente
4

No diría ridículo; para sistemas de 32 o 64 bits.

Para comenzar con lo obvio, las ventanas de 32 bits (la mayoría de los sistemas en ejecución) simplemente ignoran cualquier cosa por encima de 4 GB. Los Ramdisks pueden utilizar PAE y direccionamiento de memoria de 36 bits, que yo sepa, son la única forma de hacer que las áreas de alta memoria sean útiles en sistemas de 32 bits.

La pregunta es: ¿cómo hacemos uso de un disco duro virtual más rápido / más seguro? Los archivos temporales vienen a mi mente y son bastante triviales de configurar, siempre y cuando sepa cómo asignar una letra de unidad fija en Windows. Lo mismo con la memoria caché de los navegadores. El interés por estos es cuádruple:

  • Acceso / recuperación más rápidos
  • Verdadera eliminación
  • Suprime la mayor parte del desgaste inútil en la costosa memoria SSD.
  • Menos fragmentación del disco.

En cuanto al archivo de intercambio, parece obvio que los sistemas de 32 bits tienen mucho que ganar al colocarlos en la RAM no reclamada. Uno podría pensar en un programa con mucha memoria, que usa hasta 3 GB en sí mismo (con el conmutador de 3GB en boot.ini) que probablemente causará mucho intercambio. Todavía se aplican dos de los mismos bonos: eliminación verdadera y desgaste en SSD. La fragmentación es un problema menor con los archivos de intercambio.

Hay más: es bastante común que los programas mal escritos utilicen la memoria virtual, sin importar cuánta memoria física esté disponible, lo que provoca un acceso inútil al disco. Esto es válido tanto para los programas de 32 y 64 bits. Incluso me encontré con programas que simplemente no se iniciarán en ausencia de un archivo de intercambio.

En pocas palabras, aunque tiene sentido, sin importar qué tenga un disco RAM por debajo de 4 GB y guarde el acceso inútil al disco para el almacenamiento en caché de la carpeta temporal y de los programas, parece preferible instalar más de 4 GB, siendo el precio de la memoria lo que es, en ambos 32 ( con hardware habilitado para PAE) Y sistemas de 64 bits y mueva el archivo de intercambio allí.

Hay que tener en cuenta que MUCHOS usuarios de computadoras profesionales aún no pueden usar 64 bits por razones de soporte de hardware.

Lo que sería ridículo, usar el mismo lenguaje fuerte que el anterior, sería simplemente descartar la idea y confiar no solo en el manejo de la memoria virtual de Microsoft (que es elogiado y con razón) sino también en los programadores de aplicaciones que van desde el gurú de la codificación de ensamblado al idiota del lenguaje de alto nivel que pondrá de rodillas a la PC más agradable y estable solo con el manejo de la mala memoria. He visto ese código en programas convencionales, aplicaciones de productividad, ¡no es broma!

Mi sistema principal tiene un disco RAM de 8GB en XP / 32 y esto ha resultado útil. Es bastante trivial de configurar y debo decir que el único programa que me hizo pasar un mal momento es google chrome, cuya estrategia de instalación / actualización es difícil para el tweaker.

Puede pensar en un uso útil para ramdisks aparte de estos; en mi caso, muestras de audio para recuperar del disco en aplicaciones en vivo: colóquelas allí en el momento del arranque (extremadamente lento) y obtenga un acceso increíblemente rápido a las bibliotecas de varios GB. Pero esto está muy lejos del tema :)

Esta es mi propia experiencia. Desearía que la gente no destruyera el valor de la información útil mediante el uso de un lenguaje fuerte innecesario. Ridículo era una mala elección de palabra en este contexto, por decir lo menos.

usuario102648
fuente
3

Sí, los archivos de paginación se usan incluso si uno tiene mucha RAM; pero la simple existencia de un archivo de paginación no es en sí un factor que afecte el rendimiento del sistema . Además, poner un archivo de paginación en un disco RAM es una tontería. El punto a un archivo de paginación, después de todo, es ser un lugar para guardar datos de página (transitorios) cuando esos datos no están actualmente en la RAM . Los discos RAM están en RAM ...

Por supuesto, colocar archivos temporales en un disco RAM es una caldera de peces completamente diferente.

JdeBP
fuente
1
Esa publicación no explica por qué el sistema operativo necesita extraer algo si el sistema tiene toneladas de memoria RAM y puede contener TODO. El objetivo de la paginación es hacer espacio para procesos más importantes, pero si la memoria puede ser transitoria y nueva y antigua y rara vez se usa y algo en la memoria, ¿por qué no mantener todo en memoria RAM? En cuanto a los vertederos, no me importan. No puedo leerlos ni comprenderlos, por lo que podrían eliminarse y no molestarme en guardarlos, a menos que los envíe a MS para su análisis.
Tony_Henrich
El otro artículo al que hace referencia también tiene el personaje habitual: "algunos" programas "pueden" fallar, sin especificar nunca qué programas realmente son, o cómo pueden fallar.
RolKau
@ Tony, los volcados de memoria son difíciles de leer e interpretar para una persona normal, pero si instala las herramientas de depuración de Microsoft, pueden ser bastante informativas para descubrir por qué ocurrió un BSOD. Si su computadora nunca falla, entonces, por supuesto, es irrelevante, pero he encontrado que los volcados por caída son extremadamente útiles para solucionar problemas de computadoras que fallaron en el pasado, así que no los descarte por completo.
nhinkle
2
@Tony_Henrich "por qué no mantener todo en ram" => porque si hay algo a lo que nunca (o muy raramente) se accede sentado en RAM, está desperdiciando ese espacio. Ese espacio podría utilizarse mejor para almacenar en caché los archivos a los que se accede con frecuencia, lo que proporciona un aumento del rendimiento neto. El sistema operativo puede utilizar cualquier espacio de RAM físico que el código del programa o los datos no utilicen activamente para almacenar en caché los archivos, razón por la cual también no es bueno correr cerca de su capacidad total de RAM.
Bob
La mayoría de las personas que afirman que "el sistema tiene toneladas de RAM y puede contener TODO" nunca ha visto el uso total del espacio de direcciones virtuales en su máquina.
Jamie Hanrahan
1

Dudo que vea mucha diferencia al mover su archivo de paginación a ramdisk. Si desea forzar a Windows a usar ram, puede desactivar el archivo de paginación.

Sin embargo, noté una gran diferencia al mover mis archivos temporales de IE a un disco ram y configurar mis variables ambientales TEMP y TMP para que apunten al disco ram.

También ejecuto Google Chrome con el indicador "-user-data-dir =" R: \ ChromeTEMP "para que almacene los archivos temporales en el disco RAM. Esto hará que olvide su configuración. Pero como uso la función de sincronización no funcionó me afectó mucho. Después de la sincronización inicial todo volvió a la normalidad. Y las pantallas de carga de skyrim son más cortas después de vincular a copias de algunos archivos en mi disco RAM.

Andrés
fuente
Deshacerse de su archivo de paginación (o ponerlo en un disco RAM) no "obliga a Windows a usar RAM". Hay cientos de otros archivos utilizados para paginación y Windows seguirá pagándose desde y hacia ellos.
Jamie Hanrahan
0

Windows continuará utilizando el archivo de intercambio, que (para mi confusión, ya que tengo una configuración idéntica) no tenía ningún sentido para mí. Sin embargo, después de deshabilitar el archivo de paginación, no vi mejoras de rendimiento reales. Desde entonces, volví a usar un archivo de página, ya que Windows lo usa para otras cosas que no sean la memoria virtual (creo que también escribe volcados de memoria, cuando haces una pantalla azul) que necesito. También he volado mis 12 GB de RAM varias veces, y estaba agradecido de tener la sala de maniobras.

En resumen, Windows seguirá utilizando el archivo de página, pero no debería notarlo como un golpe de rendimiento.

En cuanto a los archivos temporales, moverlos a un disco RAM debería aumentar sus velocidades de acceso, aunque asegúrese de que no necesitará nada allí para persistir durante un reinicio / bloqueo y que el controlador de ramdisk se carga y crea el ramdisk antes de cualquier aplicación o el sistema necesita usar la carpeta temporal.

Darth Android
fuente
Creo que los mini volcados se guardan en una carpeta especial en Windows. No estoy seguro acerca de los volcados completos, pero tal vez se guardan en el archivo de página. Pero no me importa poner un archivo de página en ninguna unidad no root. Solo espero que Windows sea lo suficientemente eficiente como para usar el RAM disponible tanto como sea posible y use el archivo de página solo cuando sea absolutamente necesario.
Tony_Henrich
@ Tony: se guardan en el archivo de la página hasta que se reinicia, momento en el que se guardan en la carpeta Minidump en% SYSTEMROOT%.
Hola71
1
MS afirma que la desactivación del archivo de intercambio probablemente disminuirá el rendimiento incluso en sistemas de alta memoria. La gestión de memoria del sistema operativo está diseñada en torno al intercambio.
Keltari
Tenga en cuenta que es posible hacer que Windows prepare volcados de memoria en un archivo dedicado, lo que evita el requisito de que haya suficiente espacio libre / archivo de paginación en la unidad del sistema para almacenar los datos de volcado; ver Cómo utilizar el valor del Registro DedicatedDumpFile para superar las limitaciones de espacio en la unidad del sistema al capturar un volcado de memoria del sistema - Ntdebugging Blog
Samb
0

En realidad, no es una mala idea en mi opinión.

Lógicamente, la gente entiende mal el "archivo de página" o más correctamente "intercambiar archivo" como RAM. Es cierto que el archivo de intercambio contiene datos similares a los de RAM. Pero Windows no usa esto como RAM. Como puede ver hoy en el creciente mundo multitarea en el que vivimos, Windows fue diseñado en el pasado para manejar la cantidad limitada de RAM al escribir constantemente entre el archivo de intercambio y la RAM.

Windows siempre utiliza el archivo de intercambio, ya que la ganancia de rendimiento es más notable en las computadoras más antiguas y lentas con pocos programas en ejecución. A medida que abre una ventana, el programa se intercambia en RAM, ya que está trabajando en él.

Digamos que estás escribiendo una carta en Word. Si acaba de iniciar ese programa con muchos programas \ windows en segundo plano, tiende a ser lento, pero luego se ejecuta sin problemas después de unos segundos. Luego, cuando cambia a Internet Explorer, se ejecuta lentamente, luego se vuelve más rápido porque estaba en el archivo de página y luego se cambió a RAM, mientras que todos los procesos en segundo plano se cargan en el archivo de página.

Ahora vamos a presentar el disco RAM a Windows. Coloque el archivo de intercambio en el disco RAM en lugar del HDD y habrá mejorado la capacidad de Windows para realizar múltiples tareas, ya que la RAM es más rápida que el HDD / disco duro. Sin embargo, esto no ayudará en un sistema anterior a menos que compre unidades RAM físicas, y es posible que deba configurar el archivo de paginación nuevamente en Windows, ya que sin energía se eliminará.

Los archivos de paginación se vuelven muy inútiles para las PC más nuevas con 8, 16, 32, 64 Gigas de RAM.

Adam R.
fuente
3
La pregunta sigue siendo por qué Windows cambiaría algo si hay suficiente memoria para guardar todo. No es como si la memoria "se cansara" al sostener las aplicaciones y necesita un descanso.
Tony_Henrich
Er, en realidad, "archivo de página" es más correcto que "archivo de intercambio"; técnicamente, el intercambio es donde se envía TODA la memoria de un proceso dado al almacenamiento secundario ...
SamB
Por qué: porque es agresivo acerca de recortar el "conjunto de trabajo". Pero en realidad no es intercambiado a cabo , y se tira hacia atrás cuando sea necesario, sin tener que leer el disco.
JDługosz
"Windows siempre utiliza el archivo de intercambio " - incorrecto. Incluso si utiliza el archivo de paginación, escribe cosas allí que se decidió, por una buena razón (como si no lo hubiera tocado en mucho tiempo), que no vale la pena guardarlo en la RAM. ¿Por qué crees que tienes más información sobre qué guardar en la memoria RAM que Windows? De todos modos, como han dicho otros, poner un archivo de paginación en RAM es como darse un préstamo y luego pagarse el dinero del préstamo. No tiene más dinero, acaba de gastar mucho esfuerzo inútil.
Jamie Hanrahan
0

La mayoría de ustedes, escépticos, olvidan el límite de RAM de Windows de 32 bits y se pierden el hecho de que no pueden poner más código y datos en RAM, que los 3,5 GB. O simplemente cree que estamos tratando de "cortar", digamos, 2GB de los 3,5GB accesibles, para un archivo de paginación rápido, con el costo de reducir la memoria disponible a 1,5GB. Esto ciertamente no tiene sentido, pero esa no es nuestra idea . Nuestra idea está dedicada a los usuarios de Windows de 32 bits, que poseen PC con MÁS RAM que ese límite persistente de 3,5 GB. Por ejemplo, una máquina equipada con 8 GB, que ejecuta XP de 32 bits o Vista o 2003.

Cuando trabajas duro con muchas aplicaciones simultáneamente, el sistema a menudo enfrenta la condición de memoria agotada. Para evitar errores críticos, el sistema se ve obligado a almacenar algunos datos de aplicaciones que se ejecutan en segundo plano en un archivo de paginación. Por lo general, significa escribir decenas y cientos de MB en el disco duro. Y recuerde: sucede a menudo, cuando realmente hace uso de la multitarea (hoy en día común, así como aplicaciones que consumen memoria). Y cuando obtiene una aplicación en segundo plano: otro lote de datos de la RAM debe ir al HDD, solo para hacer espacio en la RAM para que el lote anterior regrese del HDD (esta vez escribiendo y leyendo muchos MB de la unidad de disco). Simplemente observe el LED rojo de actividad del HDD: se enciende más de lo que permanece apagado (su HDD funciona muy duro).

Ahora imagine todas estas operaciones redirigidas a un disco RAM EXTRA (RAM adicional, más allá del área de memoria operativa del sistema que permanece igual en tamaño, máximo).

  • De esta manera, funciona 1000 veces más rápido (operaciones de RAM en comparación con HDD), por lo que el tiempo de intercambio se vuelve marginal;
  • Su HDD funciona mucho menos de lo normal, se vuelve silencioso, frío y la vida útil se extiende notablemente.

No creo que no tenga sentido en términos de rendimiento, sin mencionar la fiabilidad del disco duro.

OK, la mayoría de las máquinas construidas en la era XP no se basaban en placas base capaces de soportar más de 4GB de RAM. Así que entiendo que hay pocos tipos que realmente se preocupan / necesitan y entienden la idea. Pero ahora...

¡BIENVENIDO A LA ERA DE LA VIRTUALIZACIÓN! Más y más de ustedes tienen la suerte de poseer una máquina con mucha RAM. Un novato puede configurar su sistema host para asignar 4 GB al Windows invitado de 32 bits, y todavía tiene mucha RAM. ¡Sería realmente valioso entonces, enriquecerlo con un disco RAM de 4GB, asignado al mismo SO huésped, dedicado para el archivo de paginación sin costo del espacio RAM de los invitados!

Un servidor que superviso tiene 12 GB. En lugar de comprar un nuevo sistema (¡64-2008 más CAL!), Podría asignar 8 GB para el invitado - virtual 32-2003 e intentar probar los discos RAM de software. Sin embargo, no confío en ellos, ya que parecen ser hacks y no me gusta arriesgarme en la estabilidad. Es por eso que estoy buscando una solución para preparar el Linux Ramdisk de mi host como un dispositivo de bloque y formatearlo en FAT o NTFS para que sea aceptable para el disco virtual del sistema operativo invitado, para colocar el archivo de página en él. Creo que mi servidor aumentaría y ahorraría mucho esfuerzo en el disco.

Donde me equivoco Greetz!

Slawek
fuente
1
Un buen punto sobre la virtualización, pero sin la virtualización, un disco RAM no le permite acceder a más memoria RAM de la que puede abordar normalmente. Sin PAE, eso es aproximadamente 3.5 GB, pero NT 4.0, win2k y las ediciones pro / server de xp admiten PAE, lo que permite hasta 64 gb de ram. Dado que puede usar todo ese ram, es mejor dejar que el sistema lo use como mejor le parezca, incluso para almacenar en caché los archivos, en lugar de asignarlo a un ramdisk, lo que limita el sistema a usarlo solo para guardar páginas privadas intercambiadas , que no incluye archivos de programa y datos de archivos en caché.
psusi
Esto suena como una diatriba.
bwDraco - Restablece a Monica el
Si el sistema operativo ha decidido que no vale la pena guardar un conjunto particular de datos en la RAM, en lugar de ponerlo en el archivo de paginación ... ¿por qué cree que tiene suficiente información para decir justificadamente "no, manténgalo en la RAM de todos modos" colocando su archivo de paginación en un disco RAM?
Jamie Hanrahan
0

En lo que respecta a la carpeta temporal, moverla a un disco RAM aumentaría la velocidad.

Sin embargo, hay cosas a tener en cuenta:

  • pérdida de potencia significaría pérdida de datos
  • no todas las aplicaciones usan la carpeta temporal provista por Windows, algunas usan las suyas
  • Si la carpeta temporal se queda sin espacio, las aplicaciones o Windows pueden fallar
Keltari
fuente
0

Los Ramdisks son útiles para cosas como la caché rápida de Internet de IE, Chrome y Firefox, etc.
Poner el archivo de paginación en un Ramdisk en un sistema de 64 bits es inútil.

DisablePagingExecutivo podría adaptarse mejor a esas necesidades. Pero poner el archivo de paginación en un Ramdisk en un entorno de 32 bits con más de 4 GB de RAM es una gran mejora. Sin embargo, si su computadora es un procesador de núcleo único (solo uno de acuerdo con el administrador de tareas), habrá una mejora (no puedo recordar exactamente cuánto, ha pasado un tiempo). Pero también debe configurar ClearPagefileAtShutdown para deshacerse del error en el próximo reinicio porque el archivo de paginación no estará allí.

El mejor uso para un Ramdisk que se me ocurre es duplicar la carpeta de archivos de su programa (o seleccionar programas) en el Ramdisk.

Ben
fuente
DisablePagingExecutivo solo desactiva la paginación del ejecutivo . La paginación de todo lo demás que normalmente se paginará aún ocurre.
Jamie Hanrahan