Mi sono sempre chiesto, ma nel caso un pc abbia piu' di 2 gb magari 4 o 8 gb perche' e a cosa serve la partizione di swap ?
Ci sono calcoli piu' o meno semplici, regole trovate qua e la' in web ognuno dice la sua e non si capisce chiaramente come ci si debba comportare....
La mia esperienza mi consiglia di tenere in fase di installazione una swap almeno doppia della ram nel caso in cui questa sia <= 2gb ma se superiore allora vedo che basta anche di dimensione pari alla ram o al limite equivalente alla formula RAM * 0.5
Ricordate che Linux mette i processi cosiddetti dormienti in swap ma la loro riattivazione puo' richiedere anche 1 o 2 secondi ...
Girovagando in rete ho trovato questo interessante post che spiega come forzare linux ad utilizzare il meno possibile la swap su disco e mi pare dia buoni risultati ....
Con il termine swap si intende, l’estensione della capacità della memoria volatile complessiva del computer, oltre il limite imposto dalla quantità di RAM installata, attraverso l’utilizzo di uno spazio sul disco fisso.
Se il vostro computer dispone di 1GB di RAM o più, difficilmente, nella maggior parte dei casi, avrete bisogno di utilizzare l’area di swap.
La RAM infatti è molto più veloce di un disco rigido ed è conveniente lasciare che la RAM gestisca la maggior parte dei processi.
La tendenza a ricorrere all’area di swap è chiamata swappiness. Per ridurre lo swappiness in modo tale da forzare l’utilizzo dell RAM del vostro sistema possiamo digitare da terminale il seguente comando:
sudo sysctl -w vm.swappiness=10Le modifiche effettuate da questo comando però resteranno attive solo per la sessione in corso e non al successivo riavvio del sistema. Se invece, vogliamo mantenere le modifiche in maniera permanente basta editare il file sysctl.conf:
sudo gedit /etc/sysctl.confInserire in coda al file il valore vm.swappiness=10 e salvarlo
IL valore di Default e' 60 provare le diverse combinazioni di valore, io con 10 e 4gb di ram ho visto la differenza in termini di prestazioni
Roberto Lissandrin








Non vorrei trarti in inganno, quindi prendi quello che ti sto per dire con il beneficio del dubbio: per quanto ne so io la partizione di swap viene anche utilizzata nel momento in cui si iberna il proprio pc. Quindi nel caso in cui la memoria di swap non sia sufficiente per contenere la memoria occupata potrebbero (anzi è probabile) che si verifichino problemi nell'ibernazione. Personalmente cerco sempre di avere un rapporto 1:1 tra la ram e la swap, pur disponendo di 4gb di ram. Se poi non si utilizza questa feature in cerce condizioni la swap si può anche eliminare (es: 6-8 gb di ram)
RispondiEliminaSaro
Scusa se ti correggo, ma la swap serve per "appoggiarci" i dati in ram quando quest'ultima è piena e viene chiesto dal kernel di riservarne altra. In una situazione ottimale la swap non viene mai toccata in quanto la memoria attiva massima è minore della ram disponibile.
RispondiEliminaQuindi non ha senso forzare la swap in ram, proprio per la definizione di swap.
Il valore 10 e' consigliato per i desktop, mentre per i servers bisogna lasciarlo impostato a 60.
RispondiEliminaFonte:
https://help.ubuntu.com/community/SwapFaq
Funziona! Aumenta la velocita' di accesso alle applicazioni (la reattivita' del sistema).
RispondiElimina@Tommaso
RispondiElimina"...ma la swap serve per "appoggiarci" i dati in ram quando quest'ultima è piena e viene chiesto dal kernel di riservarne altra"...
Quello che tu dici avviene quando imposti "vm.swappiness=0" (ottimo per un pc 64bit con 4-6 GB di RAM) cioè dici al kernel "tieni i dati il più a lungo possibile in RAM".