Configura scambio
Parte 1. Imposta la swapiness. Questa potrebbe essere la risposta di Degusa, ma potrebbe essere l'opposto e avrà più effetto quando lo sarà.
Uno scenario in cui alcuni di noi sono felici di trovarsi è quando abbiamo molta RAM. Generalmente, ne abbiamo una piccola percentuale utilizzata direttamente dal kernel e dalle applicazioni, alcuni (forse una grande quantità se hai usato altre modifiche per migliorare le prestazioni come montaggio / tmp in memoria) usati per ramfs e tmpfs, e concerti e concerti usati come cache del disco per velocizzare l'accesso ai nostri file.
In questo scenario una volta che la memoria totale utilizzata, compresa la cache, diventa alta e un'applicazione ha bisogno di più RAM, Linux deve decidere se prelevare un po 'di cache dal file system o passare alla partizione / file di scambio.
Dal momento che abbiamo tonnellate di RAM, e molto probabilmente ci siamo solo preoccupati di scambiare in modo da poter abilitare l'ibernazione, vogliamo che si inclini a prendere un po 'di quella cache copiosa, e quindi desideriamo una bassa swappiness. Se non ci interessa essere in grado di andare in letargo, potremmo persino scoprire che una macchina con così alta RAM non ha bisogno di essere scambiata.
Un altro scenario è qualcuno con poca RAM che sta passando da poche applicazioni pesanti a dedicare un ragionevole periodo di tempo a ciascuna. Immagina forse un web dev che trascorre un po 'di tempo sul loro IDE, alcuni su un editor grafico, alcuni sul loro browser preferito, un po' su altri browser per verificare i problemi di compatibilità e forse 5 minuti ogni ora sul loro client di posta. Probabilmente stanno anche colpendo ripetutamente gli stessi file con letture e scritture e quindi beneficiano appieno della memorizzazione dei file nella cache. Questa persona potrebbe probabilmente trarre vantaggio dal fatto che Linux è più desideroso di scambiare la memoria utilizzata da qualsiasi delle applicazioni pesanti su cui non sono attualmente attivi, quindi lo swapiness dovrebbe probabilmente essere più alto per loro.
Non solo la migliore impostazione per loro è probabilmente superiore ai consigli più comuni, ma probabilmente lo noteranno più della persona che ha sempre concerti da risparmiare comunque.
Parte 2. Priorità e numero di partizioni.
Ogni partizione di swap ha una priorità e Linux userà quella con la più alta prima. Se non impostato in / etc / fstab, verrà trattato come negativo a partire da -1 (le impostazioni esplicite sono comprese tra 0 e 32767 e quindi -1 è inferiore a qualsiasi impostazione esplicita) e continuano nell'ordine in fstab a -2, - 3 e così via.
L'impostazione migliore dipende da dove si trovano fisicamente le partizioni. Se ne hai solo uno, non importa (ma forse dovresti averne più di uno, quindi continua a leggere).
Se hai due o più sulla stessa unità fisica, dovrebbero avere priorità diverse in modo che non provi a utilizzare due partizioni che richiedono la ricerca tra di loro (qualcuno sa se questo viene automaticamente evitato?). Le impostazioni predefinite vanno bene. Probabilmente non è una buona idea avere due swap sulla stessa unità in ogni caso, ma può succedere se ne hai creato uno e poi hai deciso di aver bisogno di più swap in seguito (forse quando aggiungi più RAM).
Se hai due o più su due o più unità fisiche che hanno circa la stessa velocità, impostarle sulla stessa priorità significa che Linux le utilizzerà entrambe contemporaneamente, offrendo prestazioni migliori per ragioni analoghe al motivo per cui RAID o semplicemente assicurando che ci siano file usati frequentemente su entrambe le unità - il lavoro si divide tra di loro.
Se hai due o più unità fisiche di uguale velocità ma hai solo uno di scambio, forse dovresti cambiarlo, per i motivi di cui sopra.
Se hai due o più unità fisiche, con velocità molto diverse, in genere desideri che l'unità più veloce abbia una priorità più alta rispetto a quella più lenta, quindi viene utilizzata per prima. Potresti non voler nemmeno scambiare sul più lento, anche se potrebbe avere senso se ad esempio hai un piccolo scambio su un'unità veloce ma piccola per uno scambio veloce e uno più grande sull'unità più lenta in modo da avere abbastanza spazio per ibernazione.
Se il più veloce dei due è un SSD, allora ci sono due alternative con diversi pro e contro:
- Scambio prioritario, o forse solo, sull'SSD, per la velocità.
- Sostituire solo l'SSD, per ridurre le scritture sull'SSD e quindi aumentarne la durata.
Il numero 2 è probabilmente quello da fare se hai davvero uno scambio per consentire l'ibernazione e altrimenti la tua RAM abbondante significa che non ne hai davvero bisogno (e se stai spendendo soldi su un SSD, dovresti spenderlo su RAM anche) a meno che tu non sia forse un fanatico della velocità di avvio che vuole iniziare dal letargo a una velocità che metterà in mostra il tuo impianto di perforazione ad alte specifiche! Altrimenti, l'equilibrio è tutto sulla velocità rispetto alla durata dell'SSD.
Se hai un'unità esistente esclusivamente per lo scambio per non competere con altri file I / O, allora presumibilmente sei un fanatico delle prestazioni e conosci già queste cose meglio di me e stai solo leggendo questo per vedere se ho qualcosa di sbagliato!