29 Luglio 2014, 19:00:46 Ultima modifica: 25 Ottobre 2015, 13:53:00 di Buntolo
Durata SSD

Siccome gli SSD sono il futuro e bene o male tutti sul forum stanno passando a questa tecnologia, è bene trattare il più scottante degli argomenti: la loro vita.

https://wiki.archlinux.org/index.php/Solid_State_Drives#Pre-Purchase_Considerations
CitazioneNote: A 32GB SSD with a mediocre 10x write amplification factor, a standard 10000 write/erase cycle, and 10GB of data written per day, would get an 8 years life expectancy.

Tenete conto che anche un utente smaliziato non supera i 2 giga al giorno, quindi quello schifoso SSD durerebbe 40 anni. QUARANTA!
Molti SSD oggi hanno 50000 cicli di scrittura, 5 volte tanto, ossia 200 anni. Sì, DUECENTO.


http://techreport.com/review/25889/the-ssd-endurance-experiment-500tb-update
CitazioneThis long-term write endurance test began in August [...]. Now that our subjects have crossed the 500TB mark, it's time for another checkup.
[...]
All but one of our test subjects is based on two-bit MLC NAND. The Samsung 840 Series has three-bit TLC flash, and that puts it at a distinct disadvantage versus the others.
[...]
After 500TB of writes, the 840 Series is up to 1722 reallocated sectors.
[...]
That means the drive has lost 2.5GB of its total flash capacity already. Fortunately, those flash failures haven't affected the amount of user-accessible capacity.
[...]
500TB works out to 140GB of writes per day for 10 years. That's an insane amount even for power users, and it far exceeds the endurance specifications of our candidates.

Considerazioni
Riguardo l'esperimento da 500 tera: gli SSD hanno circa il 5% dello spazio non accessibile ed usato per l'over provisioning, ossia celle che si sostituiscono automaticamente a quelle bruciate. In soldoni un Samsung 840 da 256 giga ha oltre 10 giga di "celle di scorta", e dopo 500 TB di dati scritti [140 GB/giorno] ha usato meno del 25% di questo spazio; empiricamente quell'SSD dovrebbe reggere oltre 2000 TB di dati prima di perdere capacità.
DUEMILA TERABAITT! Vi sfido a scrivere 2000 tera su un disco meccanico! (ovviamente dischi per server in atmosfera d'elio non contano)
Inoltre il Samsung ha 3 bit per cella, gli altri non hanno fatto NESSUNA riallocazione in 500 tera!
Quindi il più debole SSD è più forte di quanto possiate avere bisogno.


Aggiornamento
Hanno superato i 2 PB.

Sì esatto, Petabyte.

http://techreport.com/review/27909/the-ssd-endurance-experiment-theyre-all-dead

CitazioneThe first lesson came quickly. All of the drives surpassed their official endurance specifications by writing hundreds of terabytes without issue.

I TLC effettivamente sono peggiori:
CitazioneAs the only TLC candidate in the bunch, this drive was expected to show the first cracks. The 840 Series didn't encounter actual problems until 300TB, when it failed a hash check during the setup for an unpowered data retention test.


Conclusioni sulla durata: durano molto, e le precauzioni da prendere per non farli sciupare presto possono essere sensate. Si possono tranquillamente usare journaling e relatime anziché noatime. Rimane una buona idea spostare su RAM (o /tmp) cose inutili da tenere su disco come cache, compilazione e robe varie.
Resta sconsigliato usare torrent sugli SSD. Non tanto perché scriva troppi dati (alla fine siamo in pochi a scaricare a 1MB/s e oltre, quindi i dati giornalieri possono sì arrivare ad un massimo 86.4GB, ma è una situazione irreale), quanto perché non sappiamo se il Samsung 840 con memoria TLC sia un esemplare fortunato o sfortunato.

Occorrono prove su centinaia di modelli presi a campione da lotti diversi, nessuno al mondo può fare queste prove a scopo scientifico/giornalistico, gli unici in grado di farlo sono i produttori stessi, che ben si guarderebbero dal divultare i dati, e i possessori di data center, che potrebbero essere vincolati da accordi di non divulgazione.

#1 29 Luglio 2014, 19:01:04 Ultima modifica: 25 Ottobre 2015, 13:54:03 di Buntolo
SSD e Linux
Non ci sono problemi di sorta, basta usare Btrfs che ha il TRIM automatico o ext4, su cui potrebbe essere necessario specificare a mano il TRIM.
In realtà non dovrebbe essercene bisogno, in quanto attivato in automatico, ad ogni modo basta modificare /etc/fstab aggiungendo discard sotto la colonna mount option, in modo che appaia tipo:
/dev/sdXY  /       ext4   defaults,noatime,discard   0  1
/dev/sdXZ  /home   ext4   defaults,noatime,discard   0  2



Aggiornare SSD
Gli SSD ricevono vari aggiornamenti firmware, effettuabili tramite programi per Windows. Ad ogni modo non disperate: anche con Linux è possibile aggiornarli in modo indolore e con strumenti supportati/offerti dal produttore (tranne nel caso di Samsung, il che non mi stupisce).
https://wiki.archlinux.org/index.php/Solid_State_Drives#Firmware_Updates


Temperature
In realtà riguarda anche Windows, ma non sto a fare articoli separati.
Gli SSD possono raggiungere temperature incredibilmente alte, 70°C e oltre. Tanti guru sui forum, ne ho visti parecchi, asseriscono che gli SSD non scaldano perché non hanno parti in movimento e sono piccoli e se l'alta temperatura è dovuta ad altri fattori, come CPU, GPU o che.

Stolti. :asd:

Io ho raggiunto più volte i 70°C (un pelino meno) e comunque tutti i miei SSD (non ricordo quanti, tra 5 e 10) hanno superato senza problemi i 50°C. Come risolvere la situazione? Impostando qualche parametro qua e là. Qui ci sono anche le impostazioni per Windows, che pure lui soffre della stessa situazione.

http://www.fit-pc.com/wiki/index.php/Aggressive_Link_Power_Management_%28ALPM%29

Controlliamo la temperatura del nostro SSD con
# smartctl -a /dev/sdaX | grep 194
il risultato è nella forma:
194 Temperature_Celsius     0x0022   058   015   000    Old_age   Always       -       42 (Min/Max 25/85)

Banalmente si tratta di creare un eseguibile bash tra gli script di pm-utils, che a ogni avvio si occuperà di impostarlo. Un po' come nell'era pre-systemd si impostava il profilo CPU e i vari scalini a colpi di echo.

Per controllare se sia impostato, basta usare:
find /sys/devices -iname sdX

Sostituire X col proprio SSD.


TLP
Personalmente consiglio un'altra strada: TLP.

Consente di gestire da un'unico posto tanti parametri, molti più che il solo profilo energetico, di tanti componenti del PC, come il processore.
https://wiki.archlinux.org/index.php/TLP
http://linrunner.de/en/tlp/docs/tlp-configuration.html

Apriamo con un editor di testo /etc/default/tlp
Vi consiglio di copiare il file per evitare sputtanamenti, basta un:
# mv /etc/default/tlp /etc/default/tlp_back

NB: alcuni delle impostazioni di TLP relative ai dischi influenzano SIA gli SSD SIA i meccanici!

I parametri interessanti per gli SSD sono:

Device Assignment
Sostituite X/Y/Z con le lettere dei vostri SSD. Questo indicherà quali dischi saranno influenzati dai parametri. Se avete un meccanico e avete dubbi in merito, semplicemente NON inseritelo.
DISK_DEVICES="sdX sdY sdZ"

Advanced Power Management
Il parametro forse più importante in assoluto. varia da 1 a 255 (bassi consumi + basse prestazioni e alti consumi + alte prestazioni). Nell'esempio ci sono 3 valori per i vari dischi (sdX, sdY, sdZ), ovviamente mettete quelli che vi servono. Sconsiglio valori oltre i 128, personalmente ho messo a 1 pure con alimentazione da rete elettrica, poi farò delle verifiche per evidenziare perdite prestazionali.
DISK_APM_LEVEL_ON_AC="128 128 128"
DISK_APM_LEVEL_ON_BAT="1 1 1"


Spin Down
Accertatevi semplicemente che siano disabilitati per gli SSD (0=spento, 1-240=periodi di 30*n minuti, 241-251=periodi ancora più lunghi). Personalmente ho commentato le linee con #.
DISK_SPINDOWN_TIMEOUT_ON_AC="0 0 0"
DISK_SPINDOWN_TIMEOUT_ON_BAT="0 0 0"


Disk I/O Scheduler
Gestore degli I/O. Le possibilità che ci interessano sono cfq, deadline, noop. Mettete cfq solo ai meccanici, per gli SSD assegnate deadline o noop (quest'ultimo mi pare affidi la gestione al controller fisico dell'SSD ma magari sparo una cazzata).
DISK_IOSCHED="noop noop noop"

SATA Aggressive Link Power Management
NB: questo influenza anche l'unità ottica se collegata in SATA e non credo sia possibile specificare il comportamento per ogni singolo dispositivo. I valori possibili sono min_power, medium_power, max_performance. Consiglio max_performance solo a chi ha un fisso ben areato.
Io uso min_power, devo ancora verificare l'impatto prestazionale.

SATA_LINKPWR_ON_AC=min_power
SATA_LINKPWR_ON_BAT=min_power


Già che ci siete vi consiglio di andare a vedere le altre voci nel file, riguardo le schede video e i driver (è pieno di radeon e nouveau), io ho commmentato tutto quel che non mi riguardava e ho lasciato solo la riga che esclude i driver video dall'attivazione indesiderata:
RUNTIME_PM_DRIVER_BLACKLIST="nouveau nvidia"


che minchia è il write amplification factor?

ma soprattutto, è vero che recuperare dati da un ssd fallato è più complicato che su un normale hd elettromeccanico?
スニャブロ ufficiale del forum
pulsantoni pulsantosi per greasemonkey: http://bubs.altervista.org/index.php?topic=4.msg183#msg183
script greasemonkey anti-ads: http://bubs.altervista.org/index.php?topic=6.msg2581#msg2581

I miei vaneggi pseudodisegnosi: http://sgnafp.deviantart.com/

"Speed never killed anyone, suddenly becoming stationary, that's what gets you."

molto interessante e utile, visto che forse tra poco prenderò ssd (tutto dipende dal fatto se per la tesi dovrò o meno usare windows, e viste le prestazioni che ha sul mio portatile, mi rifiuto di usarlo così, quindi sostituzione ssd e installazione pulita).

Se succede, dovrebbe essere verso ottobre/novembre, oppure durante le vacanze di fine anno.

Curiosità, avendo sata3, anche quelli di prossima uscita vanno alla grande o rischio di avere colli di bottiglia?

Citazione di: sgnablo il 29 Luglio 2014, 19:11:07
che minchia è il write amplification factor?
I dati, con l'eccezione dei nastri, vengono scritti non contiguamente sul disco; questo causa la frammentazione sui dischi meccanici. Gli SSD hanno controller che ad ogni scrittura si occupano di rimappare le celle spostando i dati, il che comporta varie scritture.
Quindi per ogni dato scritto un SSD in realtà scrive più dati; di norma hanno un fattore di scrittura 3, ossia per ogni byte immagazzinato ne vengono scritti 3. Se un fattore di scrittura 10 è una cosa fuori dal mondo e se scrivendo 10 giga al giorno in quelle condizioni il disco dura 8 anni, puoi ben capire quanto possano durare i dischi reali in situazioni reali.

Citazionema soprattutto, è vero che recuperare dati da un ssd fallato è più complicato che su un normale hd elettromeccanico?
Dipende da cosa si rompe: controller,  cella od altro.
Nel caso di una cella danneggiata credo sia impossibile recuperare i dati che stavano su quella cella (magari ce la fanno le ditte specializzate) ma si può tranquillamente recuperare il resto.
In caso di controller sputtanato non ne ho idea, ma ci sono programmi, spesso forniti dalla casa produttrice, per clonare/recuperare dati da un SSD: credo scavalchino il controller o stocazzo.

@mustangtux Il limite del SATA 3 è di 600 MB/s. Molti dischi viaggiano ad oltre 500 MB/s per le letture ed oltre 400 per le scritture, alcuni sono proprio sul limite, fatto apposta dai produttori per non sprecare soldi creando prestazioni non usabili. Ci sono le porte PCI-Express, M.SATA e SATA-Express proprio per superare questi limiti.
Prendi un disco che sai non superare il limite del SATA 3 e sei a cavallo.

Comunque puoi anche fregartene dei colli di bottiglia: io uso un SATA 2 su SATA 1.5 e archlinux si avvia in tipo 3/4 secondi.

Sono sempre molto tentato a comprare un SSD (Samsung 840 evo 250 gb, a 100€ su amazon, in lista dei desideri da mesi), ma ormai uso così poco il PC che non so neanche se ne vale la pena investire.

Edit: lo so è off topic, ma mi andava di scriverlo. :asd:

Buntolo, quand'e' che potro' prendermi un ssd da 1TB ad un prezzo accessibile (tipo 100 euro)?
J:
unita' 4/1981
comp: 7.99%

Citazione di: Gennocide il 29 Luglio 2014, 21:33:42
Buntolo, quand'e' che potro' prendermi un ssd da 1TB ad un prezzo accessibile (tipo 100 euro)?

@Gennocide  Nel 2020 tipo. Vai a fare il barbone morti di fame da un'altra parte!
Seriamente parlando: analizza i tuoi dati, sicuramente NON hai bisogno di un SSD da 1 tera. La roba che scarichi la butti sul disco meccanico, stessa cosa per tutto ciò che non tocchi quasi mai.

@Abominable Snow Tux Il Crucial MX100 costa uguale e va di più dell'8%.
Se ne valga la pena non so, devi vederlo un po' tu, ad esempio: quante ore al giorno ci passi? Come lo usi? Fai poche ore da lunedì a venerdì e tante nel finesettimana?

È proprio questo il problema... Mi fa gola , ma ormai al PC ci faccio veramente poco, 1 ora ogni due/tre giorni. Scarico e studio gli allenamenti ciclistici, le foto della fotocamera (raramente), ricerche internet importanti. I giochi li ho ormai abbandonati. Per il resto uso solo il nexus 7.
Comunque terrò conto di questo crucial nel caso voglia togliermi questo sfizio.

Citazione di: Abominable Snow Tux il 29 Luglio 2014, 22:17:21
È proprio questo il problema... Mi fa gola , ma ormai al PC ci faccio veramente poco, 1 ora ogni due/tre giorni. Scarico e studio gli allenamenti ciclistici, le foto della fotocamera (raramente), ricerche internet importanti. I giochi li ho ormai abbandonati. Per il resto uso solo il nexus 7.
Comunque terrò conto di questo crucial nel caso voglia togliermi questo sfizio.

Ripassa quando userai di più il computer.

Citazione di: Buntolo il 29 Luglio 2014, 21:54:02
Seriamente parlando: analizza i tuoi dati, sicuramente NON hai bisogno di un SSD da 1 tera. La roba che scarichi la butti sul disco meccanico, stessa cosa per tutto ciò che non tocchi quasi mai.

Mi servirebbero entrambi per la musica che faccio. Un hd da un tera come backup (o anche piu' HD, forse? tra l'altro se non avessi una connessione di merda butterei pure un server di backup, ma con progetti da centinaia di MB l'uno...) e un ssd per velocita' di caricamento/reattivita' dei progetti. Anche se attualmente non penso di rischiare di cappare (perdonami la parola che non so come sostituire) la velocita' di un hard disk meccanico. Ogni traccia dovrebbe usare un ~200KBps e raramente arrivo a 30 traccie.
J:
unita' 4/1981
comp: 7.99%

Saturare?

Sui PC fissi gli SSD sono quasi sempre corredati da dischi meccanici, proprio per metterci le grosse quantità di dati.

Ora ti rompo qua.
Ergo evitare Samsung evo 840?
E anche se ibernassi diverse volte al giorno è tutto ok?
PS capita che in un giorno io faccia anche 40 GB di dati.. Rovinerei tutto e subito?
cerca su google: (sqrt(cos(x))*cos(200 x)+sqrt(abs(x))-0.7)*(4-x*x)^0.01, sqrt(9-x^2), -sqrt(9-x^2) from -4.5 to 4.5

disegnati questo:
x^2+(y-x^(2/3))^2=1

Dopo alcune ricerche.. Ho visto che le porte SATA sono retrocompatibili. Il dubbio ora è: la scheda madre supporta solo fino al SATA 2 (visto che il disco originale era sata2) o regge pure i SATA 3? È un portatile del 2011 con tanto di USB 3 a 5Gbit, avranno risparmiato sul connettore o no?
Il problema è che se fosse un SATA 2 e prendessi come SSD un sata3 avrei un collo di bottiglia pazzesco, e nel senso contrario non sfrutto del tutto la SATA 3.. Come cazzo lo capisco?
cerca su google: (sqrt(cos(x))*cos(200 x)+sqrt(abs(x))-0.7)*(4-x*x)^0.01, sqrt(9-x^2), -sqrt(9-x^2) from -4.5 to 4.5

disegnati questo:
x^2+(y-x^(2/3))^2=1

cerca su google $tuo_modello + sata3, lo dovresti scoprire facilmente. Il mio del 2011 ha sata3

Citazione di: 94-psy il 30 Luglio 2014, 01:31:48
Ora ti rompo qua.
Ergo evitare Samsung evo 840?
E anche se ibernassi diverse volte al giorno è tutto ok?
PS capita che in un giorno io faccia anche 40 GB di dati.. Rovinerei tutto e subito?

Il Samsung 840 è comunque un ottimo disco; io preferisco i Crucial in questo momento, ma c'è da vedere come siano i successori 850.
Un'ibernazione scrive al massimo l'intera RAM (nel tuo caso 8 giga), ma ci sono vari trucchetti per ridurre i dati scritti, ad esempio: https://wiki.archlinux.org/index.php/Suspend_and_Hibernate#About_swap_partition.2Ffile_size

Non puoi rovinare tutto e subito per 40 giga in una volta, devi fare 40 giga OGNI GIORNO! Stiamo parlando di 500 tera di dati, probabilmente in TUTTA la tua vita non hai MAI scritto 100 tera.

Citazione di: 94-psy il 30 Luglio 2014, 01:58:59
Dopo alcune ricerche.. Ho visto che le porte SATA sono retrocompatibili. Il dubbio ora è: la scheda madre supporta solo fino al SATA 2 (visto che il disco originale era sata2) o regge pure i SATA 3? È un portatile del 2011 con tanto di USB 3 a 5Gbit, avranno risparmiato sul connettore o no?
Il problema è che se fosse un SATA 2 e prendessi come SSD un sata3 avrei un collo di bottiglia pazzesco, e nel senso contrario non sfrutto del tutto la SATA 3.. Come cazzo lo capisco?

Secondo questa discussione la porta per dischi è SATA3, mentre quella per l'unità ottica è SATA2: http://www.hwupgrade.it/forum/showthread.php?t=2337012&page=90

quindi mi butto su ssd sata 3?
cerca su google: (sqrt(cos(x))*cos(200 x)+sqrt(abs(x))-0.7)*(4-x*x)^0.01, sqrt(9-x^2), -sqrt(9-x^2) from -4.5 to 4.5

disegnati questo:
x^2+(y-x^(2/3))^2=1

Io avevo letto che c'erano due versioni del samsung 840: la evo e la pro. E mi pare che la evo sia molto più scarsa della pro (ma non ricordo più le motivazioni). Che sai dirmi a proposito?

(io prima o poi un ssd lo compro, ma per ora ho altre priorità...)

Citazione di: 94-psy il 30 Luglio 2014, 11:58:33
quindi mi butto su ssd sata 3?

Sì.

Citazione di: domx il 30 Luglio 2014, 15:23:45
Io avevo letto che c'erano due versioni del samsung 840: la evo e la pro. E mi pare che la evo sia molto più scarsa della pro (ma non ricordo più le motivazioni). Che sai dirmi a proposito?

(io prima o poi un ssd lo compro, ma per ora ho altre priorità...)

L'EVO è un modello di fascia più bassa. Se non erro la differenza prestazionale più notevole è la velocità di scrittura (inferiore per l'EVO).