
Acabo de instalar Ubuntu 15.04 en un nuevo SSD de 240 GB e inmediatamente noté que /dev/ubuntu-vg/swap_1 en la instalación resultante tiene 137 GB. Eso parece excesivo, incluso contraproducente, pero quizás el instalador de Ubuntu lo eligió ya que la máquina tiene 128 GB de RAM.
¿Alguien tiene una idea clara de si es útil tener ~140 GB de intercambio y, de no ser así, cuál debería ser el tamaño adecuado para el intercambio? Ejecuto binarios pesados de E/S. Aunque puede que no sea relevante, señalaré que la máquina tiene doble CPU Xeon (E5).
Después de consultar el enlace sugerido a continuación por Terrance, me siento tentado a reducir los ~140 GB de intercambio automático a ~4 GB, ya que ocupa más de la mitad del SSD de 240 GB en el que está instalado Ubuntu.
Respuesta1
Con tanta RAM en un sistema, realmente no debería ser necesaria una partición de intercambio grande. La mayor parte de lo que sería necesario es para intercambiar información de la RAM que tal vez se haya ensuciado y deba intercambiarse, pero entre 4 GB y 16 GB debería ser suficiente.
Gran información del siguiente enlace.
Respuesta2
Si bien la cantidad de intercambio que necesita siempre depende de su carga de trabajo, ciertamente es una cantidad excesiva de intercambio y casi con certeza puede atribuirse a un cálculo del tipo "swap = RAM * x" demasiado simplista.
Respuesta corta: en mi opinión, el intercambio de 4 GB casi siempre es más que suficiente.
Respuesta larga: Swap siempre está diseñado para sustituir los momentos en los que su sistema está funcionandoanormalmente- es decir, el uso de RAM por parte de los procesos se acerca o supera la cantidad de RAM física que tiene. Si los procesos que está ejecutando utilizan una cantidad muy predecible de RAM (por ejemplo, un servidor de base de datos en el que ha configurado un cierto límite de almacenamiento dinámico), entonces su uso de RAM será algo estable y es poco probable que alguna vez se utilice el intercambio. Si está seguro de que el uso de RAM por parte de los procesos nunca se acercará ni excederá la RAM física, ni siquiera necesita ningún intercambio. Pero en un servidor típico, generalmente existe la posibilidad aleatoria de que se ejecuten tareas que consuman grandes cantidades de memoria durante un período determinado, y cuando esto hace que el uso de RAM se acerque o supere la RAM física, el intercambio intervendrá y salvará su sistema. matar procesos o quedarse sin suficiente espacio de caché para ejecutarse de manera eficiente.
Digo que el intercambio de 4 GB suele ser más que suficiente incluso en un sistema con una gran cantidad de RAM, porque siento que eso es suficiente para que 1 o 2 procesos que consumen relativamente mucha memoria excedan la RAM física si su sistema ya está funcionando cerca. su límite. Isentircomo si si tuviera un déficit de más de 4 GB, algo mucho más grave anda mal y debería solucionarse configurando sus procesos que consumen mucha memoria. Los procesos que ocupan significativamente más de 2 GB de RAM generalmente se programarán para autolimitar de alguna manera su uso de RAM, ya sea mediante configuración o siendo inteligentes sobre cuánta RAM física queda.
Por supuesto, otras opiniones sobre cuánto swap es "más que suficiente" variarán. Algunos dirán 1GB, 2GB, 8GB, etc. Algunos dirán que no necesitascualquiercon tanta RAM física (pero no estoy de acuerdo).
Una cosa más: la "hibernación" requiere suficiente espacio de intercambio para escribir toda la memoria del proceso, por lo que si su espacio de intercambio es significativamente más pequeño que la RAM física, no podrá hibernar. En un sistema con 128 GB de RAM, probablemente no querrás hibernar de todos modos: reservar tanto espacio de intercambio solo para el privilegio de hibernar no solo consumiría significativamente tu espacio en disco (especialmente para un SSD), sino que también sería bastante lento. Imagine cargar ~128 GB desde el disco al reanudar, eso sería significativamente más lento que un simple arranque normal.