Newsgroup: it.comp.os.linux.sys
Titolo: To swap or not to swap

Sto progettando di comprare un nuovo desktop e sarà equipaggiato con 16GB
di ram. Ci andrà sopra la Ubuntu prossima ventura.
La domanda dunque è: ha senso con tale dotazione creare una partizione di 
swap? Se sì, quanto grande?
 
Ho provato a cercare un po' in rete e le risposte che ho trovato non sono
univoche: ognuno spergiura per la propria idea ma non c'è un dato
oggettivo a dimostrazione di nessuna tesi...
 
Certo, se penso che il desktop che sto per dismettere vecchio di 8 anni ha
4GB di ram e 4GB di swap e ancora non si comporta poi così male, mi
verrebbe da dire che posso evitarla...


La swap ti serve se attivi l'ibernazione (salva li il contenuto edlla ram).
IMHO se usi solo un SSD non farla, se ci metti anche un HD meccanico, 16GB su 1TB o piu' neanche te ne accorgi.
Volendo c'e' anche zram ;)
 
Ciao Jack

 La swap ti serve se attivi l'ibernazione (salva li il contenuto edlla ram).
 
Ti serve anche in caso di memory leak per evitare kernel panic. Io ho
una macchina su cui faccio sviluppo web usando Vagrant ed 8Gb mi vanno
stretti. Alle volte mi capita di avere 3 macchine virtuali, Netbeans,
Firefox, Chrome e Opera aperti, oltre a Thunderbird e Skype, e magari
anche un paio di documenti LibreOffice. Senza swap mi sarei già sparato
negli zebedei...
 
-- 
g4b0, linux user n. 369000
http://brosulo.net
 


In genere non uso l'ibernazione ma solo il suspend to ram, che non
richiede swap. Sul nuovo desktop credo che metterò un SSD da 256GB per i
sistemi operativi e un sata un po' più cicciotto per i dati.
Forse potrei fare un po' di swap sul sata...

 swap? Se sì, quanto grande?
 
Vivo da oltre 3 anni con 16GB e zero swap e sono felice.
 
Prima avevo 8 GB e 4 GB di swap, e appena iniziava a toccare la swap 
diventava inusabile. Sono passato a 16 GB proprio per quel motivo.
 
Su un desktop puoi sempre monitorare quanta RAM occupi (io uso un'applet 
sul pannello di Mate), e quando vedi che schizza troppo velocemente hai 
tempo di aprire un terminale e uccidere il processo, se è un memory 
leak, o chiudere qualche applicazione che non ti serve.
 
Bye.
 
 

 Prima avevo 8 GB e 4 GB di swap, e appena iniziava a toccare la swap diventava inusabile.
 
Concordo. Sono nella stessa situazione, è da circa 1 anno che chiedo il
cambio di HW, ma ai piani alti fanno orecchie da mercante. Sul time
traker aziendale ho iniziato a segnare le ore con la dicitra "I/O wait",
così a fine anno potrò contare le ore passate ad aspettare che il pc si
degni di farmi lavorare.


 farmi lavorare.
 
intanto installa[1] zram. dovrebbe aiutare un po'.
 
Ciao Jack
 
[1] in realta' e' gia' installato (e' un modulo del kernel), bisogna
solo attivarlo all'avvio.
 
-- 
Yoda of Borg am I! Assimilated shall you
be! Futile resistance is, hmm?

 verrebbe da dire che posso evitarla...
 
  Il kernel Linux usa la swap anche quando non strettamente necessaria,
ma quando farlo migliora le prestazioni complessive del sistema.  Lo fa
in base a criteri spesso statistici, quando probabilmente mandare
qualche pagina di RAM nella swap (o meglio, nella cache del dispositivo
che fa da swap) permette al kernel di fare più velocemente qualche
lavoro intensivo di pulizia o riordino della RAM (ad es. la migrazione e
la compattazione delle HugePages).  Il tenore di aggressività con cui lo
fa è regolabile con la parametro runtime del kernel
/proc/sys/vm/swappiness.  È un numero che va da 0 (usa la swap solo se
l'alternativa è la morte) a 100 (usa la swap con la massima allegria e
leggerezza).  A meno che non si usi un vecchio SSD soggetto a forte
usura in scrittura o che non si sappia dimostrare che le impostazioni di
default non siano le ottimali per il proprio sistema, consiglio di
affidarsi alle impostazioni scelte dagli sviluppatori del kernel e di
usare quindi una swap commisurata alla dimensione della RAM e di
lasciare il valore di default della swappiness, che è 60.
 
 
  Ciao,
 
 
-- 
Alessandro Selli 
http://alessandro.route-add.net
 
AVVERTENZA: i messaggi inviati a "trappola" non mi arriveranno.
WARNING: messages sent to "trappola" will never reach me.


 
Non uso l'ibernazione: solo la sospensione.

Ammettendo quindi di fare una (piccola) partizione di swap, in una
configurazione con un SSD da 256GB su cui mettere i sistemi operativi e un 
HDD SATA3 da 2TB su cui mettere la home e tutti i dati, dove consigli di
fare la swap? Sull'SSD o sull'HDD? Oppure non la faccio e uso zram se
necessario?

 necessario?
 
  zram è stato pensato per l'uso in sistemi embedded con filesystem su
dispositivi flash, sui quali è bene limitare al minimo numero possibile
le scritture per prolungarne la vita utile.
  In termini di prestazioni, la zram è quasi sempre più veloce di una
swap su disco in un sistema desktop moderno, ma la swap su disco ha un
impatto minuscolo per piccoli numeri di pagine che sono parcheggiate e
pescate in breve tempo, perché la maggior parte delle volte questi dati
sono scritti e riletti in RAM dalla cache del dispositivo, non veramente
sul disco.  Questa è la ragione principale perché Linux usa la swap
anche quando in teoria non è necessaria.  In questi casi quindi non
noteresti differenze apprezzabili nelle prestazioni, e l'assenza della
zram ti libererebbe una parte di RAM per i processi, invece che per fare
da disco virtuale compresso.  Dovesse invece il tuo sistema fare pesante
uso di swap, allora la situazione si ribalterebbe.  La strategia
migliore dipende dunque da quanto spesso e quanto intensamente il tuo
sistema ha bisogno di fare swapping.
  Sull'uso del disco a stato solido o elettromeccanico valgono le solite
considerazioni: i dischi a stato solido permettono prestazioni molto
migliori, ma si usurano più rapidamente (anche se il punto debole dei
dischi tradizionali di solito è la resistenza delle componenti
meccaniche e dell'elettronica di controllo, piuttosto che l'usura della
superficie magnetica).  Scegliere l'uno o l'altro consiste insomma in
una scelta tra le prestazioni del sistema contro la durata delle sue
componenti hardware.
  Io ho fatto un uso limitato dei dischi SSD fin'ora, ma la mia piccola
esperienza non mi ha portato alla conclusione che siano particolarmente
delicati confronto ai dischi elettromeccanici, dei quali me se ne sono
guastati legioni.  E quindi, nei portatili che hanno un disco a stato
solido non mi sono fatto problemi a fargli una partizione di swap uguale
alla RAM con swappiness ridotta (30 o 40).  Però con l'uso che ne faccio
io, raramente la swap è stata utile.  Non so come sarebbe meglio
configurare il sistema dovessero i portatili usare la swap pesantemente
ogni dieci minuti, probabilmente a quel punto la zram mi consentirebbe
rallentamenti minori, anche se per prudenza metterei in linea lo stesso
una partizione di swap tradizionale sul disco con una priorità minore
rispetto al dispositivo a blocchi virtuale su zram.  La zram avrà
certamente prestazioni fantastiche, ma sta pur sempre in RAM, e dovesse
il sistema arrivare ad un esaurimento critico della RAM sarebbe crisi lo
stesso (con entrata in azione del famigerato OOM killer).



Dipende come lo usi,verrebbe a dire.
16GB sono una bella quantita' di ram.
Io direi di non farla,al massimo metti sull' hd meccanico una partizione 
di un paio di giga come swap o se vuoi restare sulla flessibilità fai un 
file (sempre sull'hd meccanico) da adibire come swap.
Non sprecherei il poco spazio dell'ssd per una partizione di swap con 
una quantità di ram di quel genere.
 

 swap? Se sì, quanto grande?
 
Sti scirvo con un portatile con disco SSD, dove ho creato uno swap, ma ho
imostato la swappness a zero (vm.swappiness = 0 in sysctl) di modo che lo
usi se e solo se ha finito la RAM, oppure per il suspend-to-disk.
 
gaio@albus:~$ free
             total       used       free     shared    buffers     cached
Mem:       7861024    7147616     713408     489976     193216    5419912
-/+ buffers/cache:    1534488    6326536
Swap:      9764860          0    9764860
 
 
mi è sembrata la soluzione più intelligente...
 
-- 
  Free software is a matter of freedom, not a matter of price
							(RMS et al.)

 mi è sembrata la soluzione più intelligente...
 
ti ho copiato in questo momento :) 
 
-- 
Massimiliano Adamo