PDA

View Full Version : ssd e linux


tecno789
20-07-2014, 20:08
Salve, vorrei sapere se bisogna avere qualche accorgimento particolare installando una distro linux su un SSD, nel mio caso ubuntu 14.04, oppure tutte le impostazioni sono ottimizzate di default?

grazie

kernelex
21-07-2014, 14:29
messo pochi gg fa mint sul mio nuovo evo 120 GB.
nessun accorgimento.

tecno789
21-07-2014, 14:58
messo pochi gg fa mint sul mio nuovo evo 120 GB.
nessun accorgimento.

ok perfetto.. è una scheggia :)

Daddazio
22-07-2014, 12:14
Beh io eviterei di creare la partizione di swap su un disco a stato solido.
Poi puoi abilitare il trim come descritto qui: http://wiki.ubuntu-it.org/AmministrazioneSistema/Trim
Anche se a quanto pare la 14.04 dovrebbe averlo di default: http://www.tomshw.it/cont/news/ubuntu-14-04-e-ssd-il-comando-trim-attivato-di-default/51964/1.html

Ciao,
Matteo

tecno789
22-07-2014, 12:58
Beh io eviterei di creare la partizione di swap su un disco a stato solido.
Poi puoi abilitare il trim come descritto qui: http://wiki.ubuntu-it.org/AmministrazioneSistema/Trim
Anche se a quanto pare la 14.04 dovrebbe averlo di default: http://www.tomshw.it/cont/news/ubuntu-14-04-e-ssd-il-comando-trim-attivato-di-default/51964/1.html

Ciao,
Matteo

infatti non l'ho creata..bene ho fatto la cosa giusta :)

si io ho la 14.04 in teoria è già abilitato di default

kernelex
22-07-2014, 13:15
la swap non la creo neanche su disco meccanico.

tecno789
22-07-2014, 13:17
la swap non la creo neanche su disco meccanico.


si ultimamente neanche io la creavo più..

calano le prestazioni?

kernelex
22-07-2014, 13:23
si ultimamente neanche io la creavo più..

calano le prestazioni?

non mi pare. la usavo solo per poter ibernare il pc.
poi mi sono accorto che il pc era più veloce ad accendersi da zero.
almeno su linux. e ne avrei anche una risposta

2 pc, uno con win e uno con linux.
accendili tutti e due.
naviga 10 minuti con firefox.
chiudi firefox su entrambe i sistemi e guarda quanta ram resta impegnata su win e quanta su linux.

linux deve ibernare sempre il doppio della ram rispetto a win 7-8 :rolleyes:
anche di programmi chiusi una vita fa.

tecno789
22-07-2014, 13:34
non mi pare. la usavo solo per poter ibernare il pc.

poi mi sono accorto che il pc era più veloce ad accendersi da zero.

almeno su linux. e ne avrei anche una risposta



2 pc, uno con win e uno con linux.

accendili tutti e due.

naviga 10 minuti con firefox.

chiudi firefox su entrambe i sistemi e guarda quanta ram resta impegnata su win e quanta su linux.



linux deve ibernare sempre il doppio della ram rispetto a win 7-8 :rolleyes:

anche di programmi chiusi una vita fa.


premetto che non uso nemmeno l'ibernazione ora che il sistema e installato su ssd, poiché e suffientemente veloce ad avviarsi, però questa particolarità non la sapevo.

grazie

kernelex
23-07-2014, 13:39
premetto che non uso nemmeno l'ibernazione ora che il sistema e installato su ssd, poiché e suffientemente veloce ad avviarsi, però questa particolarità non la sapevo.

grazie

http://www.lffl.org/2012/10/linux-svuotare-un-po-di-ram-occupata.html

esiste uno script.
temporizzato con cron trovo che sia una buona cosa.

_Marshall_
23-07-2014, 14:21
Uso un Corsair SSD con Linux mint e non ho configurato nulla.
Funge tutto O.O.B...:stordita:

barzokk
23-07-2014, 14:47
2 pc, uno con win e uno con linux.
accendili tutti e due.
naviga 10 minuti con firefox.
chiudi firefox su entrambe i sistemi e guarda quanta ram resta impegnata su win e quanta su linux.

linux deve ibernare sempre il doppio della ram rispetto a win 7-8 :rolleyes:
anche di programmi chiusi una vita fa.
non ci cascate, è una vecchia trappola :D

:read: http://www.linuxatemyram.com/

http://www.linuxatemyram.com/atemyram.png

invece di top o free, puoi usare htop e lo vedi immediatamente

barzokk
23-07-2014, 14:54
la swap non la creo neanche su disco meccanico.
Nemmeno io la creavo più, però una volta ho avuto grossi problemi di ram piena.
E allora ho dovuto creare un file da 1Gb montato come swap in fstab... e ho fatto bene perchè in altre occasioni mi è stato utile.
Da allora come mia regola: no partizione swap, ma file di swap da valutare.
Per una macchina con ssd si potrebbe mettere vm.swappiness=1

tecno789
23-07-2014, 16:03
Uso un Corsair SSD con Linux mint e non ho configurato nulla.

Funge tutto O.O.B...:stordita:


vedo che ormai siete passati tutti a mint :)

comunque con 4 gb di RAM non ho mai avuto problemi , avrò sfiorato pochissime volte i 2 figurati!

kernelex
23-07-2014, 17:24
non ci cascate, è una vecchia trappola :D

:read: http://www.linuxatemyram.com/

http://www.linuxatemyram.com/atemyram.png

invece di top o free, puoi usare htop e lo vedi immediatamente

il fraintendimento nasce dal fatto che si crede che linux gestisce meglio la ram rispetto a win.
io ho i miei dubbi. trovo che seven mi gestiva meglio ram e ibernazione.
trovo più funzionale ibernazione e swap sullo stesso disco; come usa win.
alla fine, non credo che la partizione di swap per lo scambio dati-ram sia più veloce di un ext4. di un file montato in root e usato come swap.

p.s.
avessi un dual boot o un pc con win, farei qualche test sulla mia pelle.

kernelex
23-07-2014, 17:29
Nemmeno io la creavo più, però una volta ho avuto grossi problemi di ram piena.
E allora ho dovuto creare un file da 1Gb montato come swap in fstab... e ho fatto bene perchè in altre occasioni mi è stato utile.
Da allora come mia regola: no partizione swap, ma file di swap da valutare.
Per una macchina con ssd si potrebbe mettere vm.swappiness=1

trovo utile l'idea dello swap come file in root

sempre usato swappiness=0.

su altro forum (t'homs hardware.it. partecipo in pianta sana lì), parlavamo di questo.
sono arrivato a presuporre che la questione vm.swappiness ha un beneficio solo a livello psicologico.
se la swap c'è viene gestita, se no, no. a prescindere dai valori di sysctl.conf.

kernelex
23-07-2014, 17:32
vedo che ormai siete passati tutti a mint :)

comunque con 4 gb di RAM non ho mai avuto problemi , avrò sfiorato pochissime volte i 2 figurati!

anche io.

l'unica volta che ho visto 4 gb di ram e 4 gb di swap satura, era quando in giro c'era quella GIF animata che ti freezava il sistema.

tecno789
23-07-2014, 18:43
anche io.



l'unica volta che ho visto 4 gb di ram e 4 gb di swap satura, era quando in giro c'era quella GIF animata che ti freezava il sistema.


ah si? non la sapevo questa, non l'ho mai incontrata. mai avuto un problema con Linux, se non quello di reinstallare per pacchetti corrotti oppure programmi che non funzionavano più :)

non ho capito il fatto dello swapiness nella root, a cosa servirebbe?

bobafetthotmail
25-07-2014, 09:04
swappiness è il settaggio che controlla quanto il PC sia portato a spostare cose nella swap invece che terminare o fare del garbage collection (costringere programmi a liberare le loro cache e diminuire l'impatto sulla RAM, questo usa processore e tende a rendere i programmi meno performanti). MA ce un ma. Questo vien fatto solo quando la ram si sta esaurendo.
Se hai 1 GB libero anche con swappiness a 100 non c'è nulla nello swap. Perchè non ha alcun senso sbattere via performance per niente come faceva XP.
è una cosa che aveva un senso in passato e continua ad averne nei server che han sempre la ram piena tra cahce e roba varia di lavoro.

Le differenze come prestazioni tra uno swap file (come fa windows con il pagefile.sys) e una partizione di swap sono irrilevanti. Solo che l'ibernazione necessita di una partizione. O almeno non sono mai riuscito a farla funzionare con un file.

In generale io installo sempre e comunque preload che è un piccolo demon (programma autonomo) che impara che programmi uso e li precarica nella RAM appena possibile (come cache, quindi stan lì ma se quella ram serve viene smollata senza problemi).
Ha la funzionalità simile a un servizio di windows 7 che si chiama SuperFetch (In VIsta c'era ma faceva schifo).
Un benchmark degli effetti come tempistica http://www.hecticgeek.com/2013/05/using-preload-ubuntu-13-04/

Di solito installo anche un demon di creazione automatica di swapfile che genera file swap solo se rileva la necessità (di solito mai)... usate la funzione cerca nel programma installazione pacchetti che non mi ricordo mai il nome. :)

tecno789
25-07-2014, 09:38
swappiness è il settaggio che controlla quanto il PC sia portato a spostare cose nella swap invece che terminare o fare del garbage collection (costringere programmi a liberare le loro cache e diminuire l'impatto sulla RAM, questo usa processore e tende a rendere i programmi meno performanti). MA ce un ma. Questo vien fatto solo quando la ram si sta esaurendo.
Se hai 1 GB libero anche con swappiness a 100 non c'è nulla nello swap. Perchè non ha alcun senso sbattere via performance per niente come faceva XP.
è una cosa che aveva un senso in passato e continua ad averne nei server che han sempre la ram piena tra cahce e roba varia di lavoro.

Le differenze come prestazioni tra uno swap file (come fa windows con il pagefile.sys) e una partizione di swap sono irrilevanti. Solo che l'ibernazione necessita di una partizione. O almeno non sono mai riuscito a farla funzionare con un file.

In generale io installo sempre e comunque preload che è un piccolo demon (programma autonomo) che impara che programmi uso e li precarica nella RAM appena possibile (come cache, quindi stan lì ma se quella ram serve viene smollata senza problemi).
Ha la funzionalità simile a un servizio di windows 7 che si chiama SuperFetch (In VIsta c'era ma faceva schifo).
Un benchmark degli effetti come tempistica http://www.hecticgeek.com/2013/05/using-preload-ubuntu-13-04/

Di solito installo anche un demon di creazione automatica di swapfile che genera file swap solo se rileva la necessità (di solito mai)... usate la funzione cerca nel programma installazione pacchetti che non mi ricordo mai il nome. :)


preload? e simile al programma prelink? perché io ho installato quest'ultimo , in teoria dovrebbe velocizzare il caricamento dei programmi, linkando le libreria in RAM..

bobafetthotmail
25-07-2014, 10:22
no, prelink fa dei magheggi con le librerie (genera link dinamici o cose del genere, lavora a livello di indicizzazione di file di sistema nella RAM per renderli più facili da raggiungere).
Questo lo fa quando avvii il programma, rallenta l'avvio (in teoria) per velocizzare l'esecuzione (sempre in teoria).
Mai notato particolari differenze nè in bene nè in male.

preload carica tutti i programmi più utilizzati in una cache nella RAM appena possibile nei momenti in cui il sistema è in idle (non è istantaneo, dipende da quanti programmi deve caricare e quanto è veloce il disco fisso). Come se avessi aperto il programma e chiuso subito dopo. Resta tutto lì.
Si nota. Almeno io lo noto con dischi normali e chiavette USB. Mai usato SSD per Linux, solo chiavette e dischi normali.

tecno789
25-07-2014, 11:10
no, prelink fa dei magheggi con le librerie (genera link dinamici o cose del genere, lavora a livello di indicizzazione di file di sistema nella RAM per renderli più facili da raggiungere).
Questo lo fa quando avvii il programma, rallenta l'avvio (in teoria) per velocizzare l'esecuzione (sempre in teoria).
Mai notato particolari differenze nè in bene nè in male.

preload carica tutti i programmi più utilizzati in una cache nella RAM appena possibile nei momenti in cui il sistema è in idle (non è istantaneo, dipende da quanti programmi deve caricare e quanto è veloce il disco fisso). Come se avessi aperto il programma e chiuso subito dopo. Resta tutto lì.
Si nota. Almeno io lo noto con dischi normali e chiavette USB. Mai usato SSD per Linux, solo chiavette e dischi normali.


proverò ad installarlo, ma dubito che si veda qualche sostanziale differenza avendo il s.o su ssd.

barzokk
25-07-2014, 16:19
swappiness è il settaggio che controlla quanto il PC sia portato a spostare cose nella swap invece che terminare o fare del garbage collection (costringere programmi a liberare le loro cache e diminuire l'impatto sulla RAM, questo usa processore e tende a rendere i programmi meno performanti). MA ce un ma. Questo vien fatto solo quando la ram si sta esaurendo.
Se hai 1 GB libero anche con swappiness a 100 non c'è nulla nello swap. Perchè non ha alcun senso sbattere via performance per niente come faceva XP.
...

no no
tanto tempo è passato da quando mi dilettavo con queste amenità, ma ancora ora vedo che con swappiness=60 ho roba in swap anche se ho 2Gb liberi su 4.
Con swappiness=10 invece non ho nulla.

Considerate che le tecniche di gestione della memoria virtuale sono nate 50 anni fa nelle università con roba tipo il PDP-11 e Unix :D in generale tenderei a non sottovalutare gli sviluppatori del kernel, non sono i primi coglioni che passano :D

PS: non parliamo di Winsozz che non vorrei mischiare il grano con il loglio :asd:

akiro
07-08-2014, 13:32
A suo tempo io ho seguito un paio di guide per il disco SSD
How to maximise SSD performance with Linux (http://apcmag.com/how-to-maximise-ssd-performance-with-linux.htm)
Solid State Drive (SSD): optimize it for Ubuntu 14.04, Linux Mint 17 and Debian (https://sites.google.com/site/easylinuxtipsproject/ssd)

tecno789
07-08-2014, 14:44
A suo tempo io ho seguito un paio di guide per il disco SSD
How to maximise SSD performance with Linux (http://apcmag.com/how-to-maximise-ssd-performance-with-linux.htm)
Solid State Drive (SSD): optimize it for Ubuntu 14.04, Linux Mint 17 and Debian (https://sites.google.com/site/easylinuxtipsproject/ssd)

non pensavo ci fosse una guida per l'ultima versione . grazie mille la leggerò con cura :)

eaman
08-08-2014, 01:06
[CUT]
alla fine, non credo che la partizione di swap per lo scambio dati-ram sia più veloce di un ext4. di un file montato in root e usato come swap.
EXT4 e' fatto per i files, non per lo swap. E viceversa.
Fai solo conto che ext4 ha il journal / permessi / controlli vari per preservare i files mentre la swap e' roba piu' o meno sequenziale in blocchi constanti.

Non fosse altro che se usata molto la swap deve scrivere e leggere molto e ti "consuma" e frammenta per niente un fs standard.

egounix
10-08-2014, 12:08
Seguo il thread, così me lo tengo sottoscritto, che a breve rimetto mint.

AMD_Edo
11-08-2014, 22:11
Io scelgo sempre una soluzione "ibrida": uso l'ssd come / e l'hd meccanico come /home /var e /tmp
Sull'ssd file system ext4 con discard e noatime come flags mentre sull'hd meccanico xfs con noatime.

Per lo swap uso zram... :D

CapodelMondo
14-08-2014, 10:43
premesso che eran le 2 di notte e avevo fretta e sonno, oieri ho installato la mint cinnamon 17 su ssd samsung evo.

ho lasciato il partizionamento di default e quindi immagino mi abbia pure creato la swap che escludo mi servirà mai visto che i 4gb bastano e avanzano (al massimo li porto a 8 ma non subito).

come fo a render lo swap inoffensivo e magari a trasformarlo in quello spazio di 'overprovisioning' di cui parlano le guide per la salute degli ssd?

s12a
14-08-2014, 11:34
Lo spazio non partizionato viene rilevato correttamente dal controller come di overprovisioning solo dopo che è stato trimmato oppure immediatamente dopo un secure erase, operazione che ripristina tutte le celle allo stato iniziale (pulito).

Per cui la possibile soluzione sarebbe o inglobare/convertire la partizione di swap in una supportata dal tool fstrim (es. ext4), eseguirlo su di essa e quindi eliminare la partizione lasciandola non partizionata, oppure effettuare un secure erase e ripartizionare tutto da capo avendo cura di non effettuare alcuna scrittura nei settori logici corrispondenti allo spazio non partizionato lasciato libero (altrimenti viene "sporcato" e non conta più come di overprovisioning).

Detto questo, a meno di usare il sistema molto intensamente in scrittura (es. decine di GB di scritture consecutive per volta con dati prevalentemente random e poco spazio ilbero) o volutamente con il supporto al trim disattivato, non è particolarmente utile menomarsi dello spazio libero su un SSD aumentando l'overprovisioning.

Altresì, interventi come la disabilitazione del journaling per "risparmiare scritture" ... no comment :rolleyes:
Chi ha scritto le guide che consiglia tali interventi non ha assolutamente idea di quanto effettivamente ciò incida sulle scritture/usura dell'SSD, e pensare che tutti gli SSD prodotti da un bel po' di anni a questa parte hanno degli utilissimi valori di monitoraggio fra i parametri SMART (su Linux consultabili con Smartmontools/smartctl).

egounix
14-08-2014, 11:37
Lo spazio non partizionato viene rilevato correttamente dal controller come di overprovisioning solo dopo che è stato trimmato oppure immediatamente dopo un secure erase, operazione che ripristina tutte le celle allo stato iniziale (pulito).

Per cui la possibile soluzione sarebbe o inglobare/convertire la partizione di swap in una supportata dal tool fstrim (es. ext4), eseguirlo su di essa e quindi eliminare la partizione lasciandola non partizionata, oppure effettuare un secure erase e ripartizionare tutto da capo avendo cura di non effettuare alcuna scrittura nei settori logici corrispondenti allo spazio non partizionato lasciato libero (altrimenti viene "sporcato" e non conta più come di overprovisioning).

Detto questo, a meno di usare il sistema molto intensamente in scrittura (es. decine di GB di scritture consecutive per volta con dati prevalentemente random e poco spazio ilbero) o volutamente con il supporto al trim disattivato, non è particolarmente utile menomarsi dello spazio libero su un SSD aumentando l'overprovisioning.

Altresì, interventi come la disabilitazione del journaling per "risparmiare scritture" ... no comment :rolleyes:
Chi ha scritto le guide che consiglia tali interventi non ha assolutamente idea di quanto effettivamente ciò incida sulle scritture/usura dell'SSD, e pensare che tutti gli SSD prodotti da un bel po' di anni a questa parte hanno degli utilissimi valori di monitoraggio fra i parametri SMART (su Linux consultabili con Smartmontools/smartctl).

Ottimo, mi fido più di te che delle guide.
Appena reinstallo, provvedo a non usare tutto il contenuto di tali guide.

Thx

CapodelMondo
14-08-2014, 13:07
Lo spazio non partizionato viene rilevato correttamente dal controller come di overprovisioning solo dopo che è stato trimmato oppure immediatamente dopo un secure erase, operazione che ripristina tutte le celle allo stato iniziale (pulito).

Per cui la possibile soluzione sarebbe o inglobare/convertire la partizione di swap in una supportata dal tool fstrim (es. ext4), eseguirlo su di essa e quindi eliminare la partizione lasciandola non partizionata, oppure effettuare un secure erase e ripartizionare tutto da capo avendo cura di non effettuare alcuna scrittura nei settori logici corrispondenti allo spazio non partizionato lasciato libero (altrimenti viene "sporcato" e non conta più come di overprovisioning).

Detto questo, a meno di usare il sistema molto intensamente in scrittura (es. decine di GB di scritture consecutive per volta con dati prevalentemente random e poco spazio ilbero) o volutamente con il supporto al trim disattivato, non è particolarmente utile menomarsi dello spazio libero su un SSD aumentando l'overprovisioning.

Altresì, interventi come la disabilitazione del journaling per "risparmiare scritture" ... no comment :rolleyes:
Chi ha scritto le guide che consiglia tali interventi non ha assolutamente idea di quanto effettivamente ciò incida sulle scritture/usura dell'SSD, e pensare che tutti gli SSD prodotti da un bel po' di anni a questa parte hanno degli utilissimi valori di monitoraggio fra i parametri SMART (su Linux consultabili con Smartmontools/smartctl).

bel post. mi interessa la parte in cui controllo lo stato di salute del disco. mi documento un po su sti due tool.

s12a
14-08-2014, 15:34
bel post. mi interessa la parte in cui controllo lo stato di salute del disco. mi documento un po su sti due tool.
smartctl è il frontend da console/testuale di smartmontools che permettere di consultare diverse informazioni dei drive in uso fra cui i parametri SMART. Diversi programmi lo usano come base su cui costruirci sopra un'interfaccia grafica, come ad esempio GSmartControl o come ho provato recentemente io a fare con qualche esperimento con Python.

Dato però che gli SSD non usano uno standard preciso per i parametri SMART e che smartmontools non è che sia specifico per essi, spesso e volentieri il nome dei vari parametri o manca o non è corretto, anche se il loro valore ed ID sono giusti, dunque questi vanno un po' interpretati nella maggior parte dei casi. Ma questo passa il convento su Linux.

Prova ad digitare da console:

smartctl -A /dev/sda

E fare cut/paste dell'output qui. Potresti avere bisogno di privilegi di root.



Per curiosità, questo è il nome dei vari parametri sul mio SSD (Sandisk Extreme II) usando smartctl direttamente (prima) e dopo averne corretto il nome (dopo). L'output viene da una piccola utility in Python che ho menzionato poco sopra, dunque non è quello che otterresti con il comando indicato:

Nomi parametri come escono da smartctl
SanDisk SDSSDXP480G (Firmware: R1311, S\N: ...)
2014-08-14 16:25:59.928866

ID Name Current Raw Value
=========================================================
5 Reallocated_Sector_Ct 100 0
9 Power_On_Hours 253 2383
12 Power_Cycle_Count 100 62
166 Unknown_Attribute 100 1
167 Unknown_Attribute 100 39
168 Unknown_Attribute 100 96
169 Unknown_Attribute 100 702
171 Unknown_Attribute 100 0
172 Unknown_Attribute 100 0
173 Unknown_Attribute 100 18
174 Unknown_Attribute 100 18
187 Reported_Uncorrect 100 0
194 Temperature_Celsius 069 31
212 Unknown_Attribute 100 0
230 Head_Amplitude 100 60
232 Available_Reservd_Space 100 100
233 Media_Wearout_Indicator 100 9448
241 Total_LBAs_Written 253 4208
242 Total_LBAs_Read 253 5350
243 Unknown_Attribute 100 0

Nomi parametri corretti per il mio SSD
SanDisk SDSSDXP480G (Firmware: R1311, S\N: ...)
2014-08-14 16:26:54.882948

ID Name Current Raw Value
=========================================================
5 Retired Block Count 100 0
9 Power On Hours 253 2383
12 Device Power Cycle Count 100 62
166 Min W/E Cycle 100 1
167 Min Bad Block/Die 100 39
168 Maximum Erase Cycle 100 96
169 Total Bad Block 100 702
171 Program Fail Count 100 0
172 Erase Fail Count 100 0
173 Average Erase Cycle 100 18
174 Unexpected Power Loss Count 100 18
187 Reported Uncorrectable Errors 100 0
194 Current Temperature 069 31
212 SATA PHY Error 100 0
230 Percentage Total P/E Count XX.YY 100 60
232 Spare Blocks Remaining 100 100
233 Total GB Written to NAND 100 9448
241 Total GB Written 253 4208
242 Total GB Read 253 5350
243 ??? 100 0
Ed ancora, per curiosità, dopo 4208 GB scritti sono allo 0.60% di vita utilizzata dell'SSD (parametro ID#230), o 18 cicli di scrittura effettuati (parametro ID#173) su 3000 in totale prima che la data retention cominci a scendere ad un periodo minimo di almeno un anno, dopo 2383 ore d'uso (parametro ID#9) desktop ininterrotto 24/24 e questo da Windows che generalmente effettua molte più scritture in background di Linux a parità di configurazione d'uso.