Domanda Ho 16 GB di RAM. Ho bisogno di uno spazio di 32 GB?


Ho letto molti punti in cui la regola empirica per lo spazio di swap è raddoppiare la quantità di RAM fisica. Tuttavia, 32 GB sembrano MOLTO. Ho bisogno di così tanto? Ho bisogno di questa quantità elevata di RAM fisica?


253
2018-06-16 18:52


origine


per essere completamente onesti qui ... non hai nemmeno bisogno di SWAP, hai già 16GB di RAM a meno che tu non pensi seriamente di non aver mai finito la RAM, non ne hai bisogno. - Uri Herrera
Quella "regola del pollice" è nata in un momento in cui la maggior parte dei PC aveva RAM in megabyte a una sola cifra. Non è stato significativo per 10+ anni, ma solo ... non morirà! - Nicholas Knight
@TheX: forse tra qualche anno, quando le persone vedranno il tuo commento, rideranno :) - Benoit
Anche se le 2 domande sono simili l'altra non ha menzione di ibernazione ... - Ashu
in realtà ho capito che non è così male, il suo swap = RAM piuttosto che swap = 2 x RAM - icc97


risposte:


Dipende interamente da ciò che pensi di fare con la macchina. Ad esempio se si trattasse di un server Sap allora sì, aggiungerei 32gb di swap (abbiamo le scatole al lavoro con 128gb di ram e 32gb di swap). Se stavi manipolando immagini e video di grandi dimensioni, allora ha senso avere un piccolo scambio. 32 GB è probabilmente eccessivo.

Comunque non direi zero swap.

Nell'improbabile eventualità che si esaurisca la RAM - magari aprendo un file di grandi dimensioni, perde una lunga scheda in esecuzione in firefox, non importa, in tal caso il kernel OOM killer si avvierà e inizierà ad uccidere le applicazioni per recuperare la memoria. In queste circostanze è del tutto possibile che perderete i dati mentre le applicazioni vengono uccise. Tuttavia, se si dispone di un po 'di swap, il sistema proseguirà, acquisendo lo swap e consentendo al sistema di continuare. Il sistema rallenta quando avviene uno scambio pesante, si nota e si analizza prima che tutto lo scambio si esaurisca. Anche il disco è molto economico, quindi perché non fare lo scambio?

Chiunque dica "non è necessario scambiare" senza chiederti cosa stai facendo con il tuo computer sta facendo ipotesi. Mentre si può benissimo fare molto poco con il tuo computer che mangia RAM, è ancora meglio fare le domande su cosa hai intenzione di fare con esso prima di fare il giudizio avventato che non hai "bisogno" di scambiare. A mio modesto parere


172
2018-06-16 21:33



Puoi spiegare perché ha detto di non azzerare lo swap? Altri sembrano concordare sul fatto che non ce n'è bisogno se non voglio andare in letargo (cosa che non faccio). - Tamás Szelei
@popey - Quindi cosa succede se il sistema esaurisce lo swap? Torna al punto di partenza, lì. - Michael Kjörling
Avendo un sistema con 8 GB di RAM, posso dire questo: ogni volta che ho fatto scappare un programma e immergerlo in swap, il mio sistema diventerebbe per lo più insensibile. È meglio lasciare il killer OOM eseguito piuttosto che forzare un riavvio impuro comunque; se hai molta RAM, a meno che tu non stia facendo molto molto lavoro pesante che richiede gigabyte di RAM, starai bene. Anche quando si esegue un sollevamento pesante, di solito c'è un modo per elaborarlo che non richiede spazio di swap (che è meno efficiente di una gestione di set di dati di grandi dimensioni sana nell'applicazione stessa). - Michael Trausch
Lo spazio può essere economico sugli HDD, ma sugli SSD non è certo economico; non costoso come il DAM, ma ancora. - Mircea Chirea
Se i tuoi sistemi usano lo scambio da 31 GB e tu bisogno l'ultimo GB, probabilmente lo saranno molto sloooow. Se hai sempre bisogno di più di 2 GB di swap, dovresti installare più RAM. - Martin Schröder


Ecco un ottimo consiglio da RedHat: Spazio di swap di sistema consigliato

Un estratto dallo stesso link:

Negli anni passati, la quantità raccomandata di spazio di scambio aumentava linearmente con la quantità di RAM nel sistema. Ma poiché la quantità di memoria nei sistemi moderni è aumentata a centinaia di gigabyte, è ora riconosciuto che la quantità di spazio di swap di cui un sistema ha bisogno è una funzione del carico di lavoro della memoria in esecuzione su quel sistema. Tuttavia, dato che lo spazio di swap viene solitamente designato al momento dell'installazione e che può essere difficile determinare in anticipo il carico di lavoro della memoria di un sistema, si consiglia di determinare lo scambio di sistema utilizzando la seguente tabella.

Tabella attuale (a dicembre 2017):

Amount of RAM in the system   Recommended swap space         Recommended swap space 
                                                             if allowing for hibernation
---------------------------   ----------------------------   ---------------------------
2GB of RAM or less            2 times the amount of RAM      3 times the amount of RAM
2GB to 8GB of RAM             Equal to the amount of RAM     2 times the amount of RAM
8GB to 64GB of RAM            At least 4 GB                  1.5 times the amount of RAM
64GB of RAM or more           At least 4 GB                  Hibernation not recommended

Tabella originale:

Amount of RAM in the System     Recommended Amount of Swap Space
4GB of RAM or less              a minimum of 2GB of swap space
4GB to 16GB of RAM              a minimum of 4GB of swap space
16GB to 64GB of RAM             a minimum of 8GB of swap space
64GB to 256GB of RAM            a minimum of 16GB of swap space
256GB to 512GB of RAM           a minimum of 32GB of swap space 

224
2018-06-16 22:22



La radice quadrata della RAM in GB, arrotondata a una potenza di due. - starblue
Ci sono incoerenze nella "nuova" tabella - secondo la guida 16GB di spazio di swap è appropriato per un sistema da 32GB, ma 4GB è appropriato per un sistema da 64GB ... - Charlie
@ Charlie perché è improbabile che si esaurisca la memoria di lavoro con 64 GB di RAM. - poepje
@ Charlie Non si tratta della quantità di memoria di sistema, si tratta della probabilità di esaurimento della memoria di sistema e di quanto grande sarà tale carenza. - Phill Healey


Argh. Le risposte a questo post sono molto sbagliate e questo risulta uno dei primi risultati in una ricerca su Google per "Quanto cambio?"

Innanzitutto, un buon punto di riferimento è il Domande frequenti sugli swapping di Ubuntu

Questa FAQ fa un punto importante che nessuno menziona qui, e cioè (sottolinea il mio)

A volte, un grande programma (come OpenOffice, Neverwinter Nights o un editor video) rende l'intero sistema necessario memoria extra. Un numero significativo di pagine utilizzate da questi programmi di grandi dimensioni durante l'avvio può essere utilizzato solo per l'inizializzazione e quindi non viene più utilizzato. Il sistema può scambiare quelle pagine e liberare la memoria per altri programmi o anche per la cache del disco. In questi casi, lo swap verrà utilizzato per aiutare il sistema a gestire qualsiasi carico aggiuntivo.

Così, lo swap non è solo per ibernazione! Questa attività, scambiando pagine non utilizzate, può essere utile in alcuni scenari e dannosa in altri. È utile perché consente di liberare memoria affinché il sistema utilizzi altrove, ma è dannoso quando lo scambio è troppo aggressivo e si scambia le pagine che effettivamente si desiderano. Ciò è particolarmente vero su un sistema desktop in cui le applicazioni possono rimanere inattive per lunghi periodi di tempo, ma l'utente si aspetta comunque prestazioni immediate quando lo si riattiva. Il controllo per quanto sia aggressivo, viene definito come swappiness

Le domande frequenti su Swap di Ubuntu parlano di questo poco sotto Cos'è lo swappiness e come lo cambio? Il valore predefinito su un sistema Ubuntu è 60, mentre le FAQ consigliano un valore di 10 per una macchina desktop.

Quindi, direi che lo è generalmente È molto importante non disporre di un sistema che non abbia assolutamente spazio di scambio, poiché alcune persone consigliavano questa domanda, a meno che non si conoscano determinati scenari di utilizzo specifici del proprio sistema e siano ben consapevoli delle conseguenze che potrebbe avere. (Personalmente, non esiste una situazione in cui eseguirò un sistema senza swap) In uno scenario di Memoria esaurita senza scambio, il sistema inizierà i processi di uccisione (generalmente quello che ha causato l'OOM)


53
2018-06-08 14:08



Upvote per il collegamento alle FAQ e per introdurre un po 'di sanità mentale tra le opinioni e le prove aneddotiche. - Marty Fried
Il punto è che non ci sono ancora programmi così grandi e il tuo link dice proprio di fronte a questo. Guarda questo help.ubuntu.com/community/SwapFaq#How_much_swap_do_I_need.3F - Anwar
Per alleggerire la memoria dal carico extra, preferirei zRAM e swappiness = 60, piuttosto che il tradizionale swap dell'HDD. - Barafu Albino


Probabilmente no. Se hai intenzione di ibernare il tuo computer (sospensione su disco), avrai bisogno di almeno 16 GB. Se non si iberna, è sufficiente lasciare alcuni gigabyte per lo scambio (massimo 4-8)


24
2018-06-16 18:56



Non ho scambio e posso ibernare / sospendere il mio portatile bene. - scribu
@scribu questo sembra interessante. Ho il sospetto che ci sia un file di swap da qualche parte perché per spegnere completamente il laptop (cioè scollegare e rimuovere la batteria) il contenuto della RAM deve essere salvato - bandi
È abbastanza possibile ibernare con 16GB di RAM e 4GB di swap: devi solo usare meno di 4 GB quando vai in letargo. - psusi


Dall'esperienza posso dire questo:

Per quello che ho visto usando 4GB di RAM per 3 anni, Ubuntu ha avuto un utilizzo di swap di circa 60 MB, ma solo quando si eseguono alcuni compiti molto intensi. Un paio di settimane fa ho iniziato a utilizzare un PC con 16 GB di RAM e l'utilizzo dello swap è rimasto sullo 0% per sempre. Ho fatto più compilazioni, rendering di video e altre attività intensive. Non c'è mai stato un cambio di swap. Neanche un cambio da 1KB.

Fondamentalmente, in Ubuntu, più RAM di memoria si dispone, meno è probabile che si utilizzi o si debba effettuare lo swap per qualsiasi attività. 16 GB di RAM o persino 8 GB di RAM sono più che sufficienti. Ho fatto con i PC Virtualbox PC 8 da 16 GB (ognuno tra 1 GB e 2 GB di RAM). Ho compilato e reso un video a 720p e nemmeno in quelle condizioni è cambiato lo swap.

Detto ciò, la regola del doppio ram della memoria non dovrebbe applicarsi ai sistemi basati su Linux, ancor più se si dispone di più memoria. Dovresti comunque avere la stessa dimensione dello swap uguale alla tua dimensione del ram o se hai intenzione di ibernare, dato che il processo di ibernazione afferra tutto in ram e lo mette in swap, che è il motivo per cui hai bisogno di una dimensione minima uguale alla tua dimensione del ram per lo scambio.

L'altro dettaglio è che alcune app (non tutte) continueranno a forzare la lettura da swap. Quindi avere un po 'è buono. Disattivarlo completamente è molto brutto nel caso in cui si arrivi al punto di memoria insufficiente o OOM. A questo punto, se non si dispone di swap, non è possibile che il kernel possa scambiare / utilizzare diversi usi di ram app e alla fine inizi a uccidere quelli meno utilizzati.

Se aiuta a prendere decisioni sul desktop di casa, dopo aver aggiornato questa risposta in più di 4 anni, ho usato un PC ram da 16 gb, da 32 gb e ora da 64 gb. Test con solo 128 MB di swap ha rivelato che non avevo bisogno di uno swap più grande, tranne se volevo andare in letargo. Ho usato gli ambienti cloud su di essi, lxc, virtualbox, vino, tu lo chiami. Ho reso i video con openshot, kazam, freno a mano, audacia. Ho usato gimp, blender, Inkscape e persino la suite completa di LibreOffice. Ho persino giocato a vapore e in nessuno di questi scenari è stato usato lo swap. Naturalmente, alla fine si userà se si finisce per usare l'intera quantità di RAM in un modo o nell'altro, ma in generale più ram hai, meno cambi avrai bisogno.

Solo i miei 2 centesimi.


12
2018-02-13 06:50



Amico, amo il modo in cui l'hai spiegato e l'hai vissuto ... Questa è una risposta meravigliosa - aidonsnous


No, non sono necessari 32 GB finché non si utilizzano funzioni come la sospensione su disco.


8
2018-06-16 18:58





Nella maggior parte dei casi, direi che non ne hai affatto bisogno. Forse se si modificano file di immagine molto grandi, o qualche altra app che ha bisogno di un sacco di ram, potrebbero essere necessari alcuni.

Non ho mai visto nessun utilizzo sul mio sistema, simile al tuo. Infatti, una volta, l'ho disabilitato per una settimana o due accidentalmente, e non ho mai notato alcun problema. Ma mantengo ancora circa 5 GB per la mia unità di scambio, principalmente perché ho più di 1 TB disponibile e non uso tutto lo spazio così com'è.


5
2018-05-13 02:00



Ricordo di averlo visto una volta, quando usavo Wubi e ibernavo. - Vladashram
Se si utilizza la modalità di sospensione, questa potrebbe essere una buona ragione per disporre di abbastanza spazio di scambio per salvare lo stato della macchina. Immagino che non avresti mai bisogno di più della quantità di memoria disponibile, a meno che forse tu stia già utilizzando abbastanza spazio per utilizzare già lo spazio di swap. - Marty Fried


Se la tua RAM è superiore a 1 GB, di solito è sufficiente per Ubuntu. La regola "Swap = RAM x2" è per i vecchi computer con 256 o 128mb di ram.

Quindi 1 GB di swap è in genere sufficiente per 4 GB di RAM. 8 GB sarebbero troppi.


3
2018-05-13 02:00





Se si utilizza l'ibernazione, è sicuro avere lo stesso swap della quantità di RAM.

Per una regola generale su quanto swap avere, leggi qui:

https://help.ubuntu.com/community/SwapFaq

Nel tuo caso, direi che 4 GB sarebbero sufficienti per abbinare la tua RAM.


3
2018-05-13 04:19





Se usi la sospensione, lo swap dovrebbe avere almeno lo stesso importo della tua RAM fisica.


2
2018-05-13 04:17