Svantaggi del partizionamento di un SSD?


79

Un saggio che prende il nome di NickN mantiene un lungo post sul forum sulle sue opinioni sulla costruzione di un potente computer (diretto alla riproduzione di Microsoft Flight Simulator X, un software molto impegnativo).

Riassume i punti sulle unità SSD da qualche parte e conclude l'elenco come segue:

NON PARTIRE SSD

Sfortunatamente non ci approfondisce, ma mi chiedo perché lo dica. Quali sono gli svantaggi del partizionamento di un SSD? (Partizionare in questo contesto significa> = 2 partizioni)


13
Beh, che ci si deve partizionare al fine di utilizzarlo. Presumibilmente, intende non creare più di una partizione, sebbene il motivo per cui consiglierebbe che sia al di là di me.
ChrisInEdmonton,

1
@ChrisInEdmonton sì, questo è ciò che intende.
MarioDS,

4
Non riesco a capire perché questo avrebbe importanza. Anche se stai usando partizioni logiche invece di partizioni fisiche, una volta che il sistema operativo indica al driver del filesystem quale sezione dell'unità utilizzare, le partizioni non contano. L'unica cosa che potrebbe importare è l'allineamento delle partizioni, ma ciò non ha nulla a che fare con il numero di partizioni.
Darth Android

2
Posso solo supporre che significhi: "Non partizionare un disco molto piccolo", indipendentemente dal fatto che si tratti di un HDD o di un SDD.
Hennes,

6
L'unica altra opzione che posso fare è (erroneamente) supporre che un controller SSD abbia bisogno dello spazio libero su un volume con cui lavorare. Ha bisogno di spazio libero sul disco per essere efficiente; non perse spazio libero in un volume montato. L'ottimizzazione è solo una questione di decidere il provisioning eccessivo e l'impostazione dell'area protetta dell'host .
Hennes,

Risposte:


118

Gli SSD, ripeto, NON funzionano a livello di filesystem!

Non esiste una correlazione 1: 1 tra il modo in cui il filesystem vede le cose e come l'SSD vede le cose.

Sentiti libero di partizionare l'SSD come preferisci (supponendo che ogni partizione sia correttamente allineata e un sistema operativo moderno gestirà tutto questo per te); NON danneggerà nulla, NON influenzerà negativamente i tempi di accesso o qualsiasi altra cosa, e non preoccuparti nemmeno di fare un sacco di scritture sull'SSD. Li hanno in modo da poter scrivere 50 GB di dati al giorno e durerà 10 anni.

Rispondendo alla risposta di Robin Hood ,

Il livellamento dell'usura non avrà tanto spazio libero con cui giocare, perché le operazioni di scrittura saranno distribuite su uno spazio più piccolo, quindi "potresti", ma non necessariamente consumerai quella parte dell'unità più velocemente di quanto faresti se l'intera unità era una singola partizione a meno che non eseguirai un'usura equivalente sulle partizioni aggiuntive (ad esempio, un doppio avvio).

Questo è totalmente sbagliato. È impossibile logorare una partizione perché leggi / scrivi solo su quella partizione. Questo NON è nemmeno remoto come funzionano gli SSD.

Un SSD funziona con un livello di accesso molto più basso di quello che vede il filesystem; un SSD funziona con blocchi e pagine.

In questo caso, ciò che accade effettivamente è, anche se stai scrivendo una tonnellata di dati in una partizione specifica, il filesystem è vincolato dalla partizione, MA non lo è l'SSD. Più scrive l'SSD, più blocchi / pagine verranno scambiati dall'SSD per fare il livellamento dell'usura. Non potrebbe importare di meno di come il filesystem vede le cose! Ciò significa che, una volta, i dati potrebbero risiedere in una pagina specifica sull'SSD, ma, un'altra volta, possono e saranno diversi. L'SSD terrà traccia di dove vengono spostati i dati e il filesystem non avrà idea di dove siano effettivamente i dati.

Per rendere ciò ancora più semplice: supponi di scrivere un file sulla partizione 1. Il sistema operativo comunica al file system le esigenze di archiviazione e il file system alloca i "settori", quindi dice all'SSD che ha bisogno di X spazio. Il filesystem vede il file ad un Logical Block Address (LBA) di 123 (per esempio). L'SSD rileva che LBA 123 utilizza il blocco / pagina # 500 (ad esempio). Quindi, ogni volta che il sistema operativo ha bisogno di questo file specifico, l'SSD avrà un puntatore alla pagina esatta che sta usando. Ora, se continuiamo a scrivere sull'SSD, indossiamo i calci di livellamento e diciamo blocco / pagina # 500, possiamo ottimizzare al meglio su blocco / pagina # 2300. Ora, quando il sistema operativo richiede lo stesso file e il filesystem richiede di nuovo LBA 123, QUESTA volta, l'SSD restituirà il blocco / pagina # 2300 e NON # 500.

Come i dischi rigidi, gli SSD nand-flash hanno accesso sequenziale, quindi tutti i dati che scrivi / leggi dalle partizioni aggiuntive saranno più lontani di quanto "potrebbero" essere stati se fossero stati scritti in una singola partizione, perché le persone di solito lasciano spazio libero nelle loro partizioni . Ciò aumenterà i tempi di accesso per i dati archiviati nelle partizioni aggiuntive.

No, questo è di nuovo sbagliato! Robin Hood sta pensando alle cose in termini di filesystem, invece di pensare come funziona esattamente un SSD. Ancora una volta, non c'è modo per il filesystem di sapere come l'SSD memorizza i dati. Non c'è "più lontano" qui; questo è solo agli occhi del filesystem, NON nel modo effettivo in cui un SSD memorizza informazioni. È possibile che l'SSD abbia i dati distribuiti in diversi chip NAND e l'utente non noterà alcun aumento dei tempi di accesso. Diamine, a causa della natura parallela della NAND, potrebbe persino finire per essere più veloce di prima, ma qui stiamo parlando di nanosecondi; sbattere le palpebre e te lo sei perso.

Meno spazio totale aumenta il probabile rischio di scrivere file frammentati e, sebbene l'impatto sulle prestazioni sia ridotto, tieni presente che è generalmente considerata una cattiva idea la deframmentazione di un SSD nand-flash perché consumerà il disco. Ovviamente, a seconda del file system in uso, si ottengono quantità estremamente ridotte di frammentazione, poiché sono progettate per scrivere i file nel loro insieme ogni volta che è possibile anziché scaricarli ovunque per creare velocità di scrittura più elevate.

No scusa; di nuovo questo è sbagliato. La vista dei file del file system e quella degli SSD di quegli stessi file non sono nemmeno lontanamente vicini. Il file system potrebbe vedere il file frammentato nel peggiore dei casi, MA, la vista SSD degli stessi dati è quasi sempre ottimizzata.

Pertanto, un programma di deframmentazione guarderebbe quegli LBA e direbbe che questo file deve essere veramente frammentato! Ma dal momento che non ha idea degli interni dell'SSD, è sbagliato al 100%. Questo è il motivo per cui un programma di deframmentazione non funzionerà su SSD, e sì, un programma di deframmentazione provoca anche scritture non necessarie, come è stato detto.

La serie di articoli Coding per SSD è una buona panoramica di ciò che accade se si desidera essere più tecnici su come funzionano gli SSD.

Per qualche altra lettura "leggera" su come funziona FTL (Flash Translation Layer), ti suggerisco anche di leggere il ruolo critico del firmware e dei livelli di traduzione Flash in Solid State Drive Design  (PDF) dal sito Summit di memoria flash .

Hanno anche molti altri documenti disponibili, come:

Un altro documento su come funziona: Panoramica della memoria flash  (PDF). Vedere la sezione "Scrittura dei dati" (pagine 26-27).

Se il video fa al caso tuo, vedi Un FTL a livello di pagina efficiente per ottimizzare la traduzione degli indirizzi nella memoria flash e nelle diapositive correlate .


Ciao, puoi per favore aggiungere alcuni link a fonti di backup delle tue informazioni? Può benissimo essere che l'altra risposta è di fatto errata, ma non ho modo di sapere che si è corretto neanche.
MarioDS,

4
Da Windows Internals 6a ed., Parte 2, cap. 9 (Gestione archiviazione) e 12 (File system), è possibile apprendere come le richieste I / O ai file passano attraverso il driver del file system, quindi il driver del volume e infine il driver del disco (utilizzato anche per gli SSD). L'FSD traduce i blocchi all'interno di un file in blocchi all'interno di un partito; il driver del volume traduce quest'ultimo in blocchi all'interno di un disco, ad esempio LBA. Quindi, quando le richieste raggiungono il driver del disco, tutto il contesto relativo ai file e alle partizioni è ANDATO. Il disco non può essere a conoscenza di file o partizioni perché quelle informazioni non sono solo nelle richieste che arrivano ad esso.
Jamie Hanrahan,

5
RobinHood si sbaglia anche nell'affermazione "Come gli hard disk SSD nand-flash hanno accesso sequenziale" . Questi sono dispositivi ad accesso casuale. Se fossero in accesso sequenziale, allora non potresti dire loro "leggi o scrivi blocco n"; l'unico blocco a cui potresti accedere sarebbe quello immediatamente successivo, o forse quello immediatamente precedente, quello a cui hai appena effettuato l'accesso. È vero che internamente, gli SSD NAND-flash possono scrivere dati solo in "pagine" di grandi dimensioni alla volta, ma ciò non li rende un accesso sequenziale. I nastri sono ad accesso sequenziale. Cerca.
Jamie Hanrahan,

Ho aggiunto un altro pdf oltre al primo link che avevo nella mia risposta.
Time Twin,

1
@TimeTwin Man, più rileggo la tua risposta, più stupido mi sento di fidarmi ciecamente della risposta di Robin Hood, che in effetti contiene affermazioni che rendono il design SSD molto stupido, se fossero vere. Questo è un promemoria del motivo per cui dobbiamo rimanere critici sulle informazioni anche se presenti su siti affidabili e con molti voti positivi. Hai fatto un ingresso piuttosto spettacolare su questo sito, goditi l'incremento della reputazione e continua a diffondere le tue conoscenze (verificate).
MarioDS,

15

Risposte molto lunghe qui, quando la risposta è abbastanza semplice e segue direttamente solo dalla conoscenza generale degli SSD. Non è necessario altro che leggere il termine Wikipedia di unità a stato solido per comprendere la risposta, che è:

Il consiglio "DO NOT PARTITION SSD" non ha senso.

Nel passato (ormai lontano), i sistemi operativi non supportavano molto bene gli SSD, e specialmente quando il partizionamento non si occupava di allineare le partizioni in base alle dimensioni del blocco di cancellazione.

Questa mancanza di allineamento, quando un settore del disco logico del sistema operativo è stato suddiviso tra blocchi SSD fisici, potrebbe richiedere all'SSD di eseguire il flashing di due settori fisici quando il sistema operativo intendeva solo aggiornarne uno, rallentando così l'accesso al disco e aumentando il livello di usura .

Attualmente gli SSD stanno diventando molto più grandi e i sistemi operativi sanno tutto sulla cancellazione dei blocchi e sull'allineamento, quindi il problema non esiste più. Forse questo consiglio una volta era pensato per evitare errori nell'allineamento delle partizioni, ma oggi questi errori sono quasi impossibili.

In effetti, l'argomento per il partizionamento degli SSD è esattamente lo stesso dei dischi classici:
per organizzare e separare meglio i dati.

Ad esempio, installare il sistema operativo su una partizione separata e più piccola è utile per prenderne un'immagine di backup come precauzione quando si eseguono aggiornamenti di grandi dimensioni sul sistema operativo.


4

Non ci sono svantaggi nel partizionare un SSD e puoi effettivamente prolungarne la vita lasciando dello spazio non partizionato.

Il livellamento dell'usura viene applicato su tutti i blocchi del dispositivo (rif. White paper HP, collegato di seguito)

Nel livellamento dell'usura statica, tutti i blocchi su tutto il flash disponibile nel dispositivo partecipano alle operazioni di livellamento dell'usura. Ciò garantisce che tutti i blocchi ricevano la stessa quantità di usura. Il livellamento dell'usura statica viene spesso utilizzato negli SSD per desktop e notebook.

Da ciò, possiamo concludere che le partizioni non contano per il livellamento dell'usura. Questo ha senso perché dal punto di vista dell'HDD e del controller, le partizioni non esistono davvero. Ci sono solo blocchi e dati. Anche la tabella delle partizioni è scritta sugli stessi blocchi (1 ° blocco dell'unità per MBR). È il sistema operativo che quindi legge la tabella e decide in quali blocchi scrivere i dati e quali no. Il sistema operativo vede i blocchi utilizzando LBA per assegnare un numero univoco a ciascun blocco. Tuttavia, il controller esegue quindi il mapping del blocco logico su un blocco fisico effettivo tenendo conto dello schema di livellamento dell'usura.

Lo stesso white paper fornisce un buon suggerimento per estendere il live del dispositivo:

Successivamente, esegui il provisioning eccessivo dell'unità. È possibile aumentare la durata partizionando solo una parte della capacità totale del dispositivo. Ad esempio, se si dispone di un'unità da 256 GB, partizionarla solo su 240 GB. Ciò prolungherà notevolmente la durata dell'unità. Un livello di overprovisioning del 20% (partizionamento di soli 200 GB) prolungherebbe ulteriormente la durata. Una buona regola empirica è ogni volta che si raddoppia l'overprovisioning dell'unità aggiungendo 1x alla resistenza dell'unità.

Ciò suggerisce anche che anche lo spazio non ripartito viene utilizzato per il livellamento dell'usura, dimostrando così ulteriormente il punto sopra.

Fonte: white paper tecnico - SSD Endurance ( http://h20195.www2.hp.com/v2/getpdf.aspx/4AA5-7601ENW.pdf )


1

I settori del disco sono stati a lungo di 512 byte e i dischi meccanici hanno la proprietà che l'unica cosa che influenza il tempo necessario per leggere / scrivere un settore è il ritardo di ricerca. Quindi il principale passo di ottimizzazione con hard disk meccanici è stato il tentativo di leggere / scrivere blocchi in sequenza per ridurre al minimo le ricerche.

Flash funziona in modo molto diverso rispetto ai dischi rigidi tecnici. A livello di flash raw, non si hanno blocchi, ma pagine e "blocchi di cancellazione" (da prendere in prestito dalla terminologia MTD di Linux). Puoi scrivere per eseguire il flash di una pagina alla volta e puoi cancellare il flash di un blocco di cancellazione alla volta.

Una dimensione tipica della pagina per Flash è di 2 KB, mentre una dimensione tipica per i blocchi di cancellazione è di 128 KB.

Ma gli SSD SATA presentano un'interfaccia che funziona con dimensioni di settore di 512 byte al sistema operativo.

Se esiste un mapping 1: 1 tra pagine e settori, puoi vedere come potresti incorrere in un problema se la tabella delle partizioni si avvia su una pagina dispari o su una pagina nel mezzo di un blocco di cancellazione. Dato che i sistemi operativi preferiscono recuperare i dati dalle unità in blocchi 4Kbyte poiché questo si allinea con l'hardware di paging x86, puoi vedere come un tale blocco 4Kbyte potrebbe cavalcarsi su un blocco di cancellazione, il che significa che l'aggiornamento richiederebbe la cancellazione, quindi riscrivere 2 blocchi invece di 1. prestazioni inferiori.

Tuttavia, il firmware SSD non mantiene una mappatura 1: 1, esegue una conversione da Indirizzo di blocco fisico (PBA) a Indirizzo di blocco logico (LBA). Significa che non si sa mai dove si dice che il settore 5000 o qualsiasi altro settore venga realmente scritto nel flash. Sta progettando molte cose dietro le quinte in base alla progettazione, per provare a scrivere sempre su blocchi cancellati pre-cancellati. Non puoi sapere con certezza esattamente cosa sta facendo senza uno smontaggio del firmware, ma a meno che il firmware non sia completamente spazzatura, probabilmente il firmware aggira questo.

Potresti aver sentito parlare dei dischi rigidi 4Kn. Si tratta di hard disk tecnici che utilizzano internamente dimensioni di settore di 4Kbyte, ma presentano ancora un'interfaccia settoriale di 512 byte per i sistemi operativi. Ciò è necessario perché gli spazi tra i settori devono ridursi sul piatto per adattarsi a più dati.

Ciò significa che internamente legge e scrive sempre settori 4K ma lo nasconde dal sistema operativo. In questo caso, se non si scrive in settori che ricadono su un limite di 4KByte, si incorrerà in una penalità di velocità poiché ciascuno di questi dati di lettura / scrittura comporterà la lettura e la riscrittura di due settori interni di 4KByte. Ma questo non si applica agli SSD.

Comunque questa è l'unica situazione a cui riesco a pensare al motivo per cui si suggerisce di non partizionare gli SSD. Ma non si applica.


-1

Ciò che queste risposte ignorano sono le ottimizzazioni SSD di Windows. Non so se questo significhi che il partizionamento migliora, ma per un'unità C partizionata come unità Windows puoi:

  1. turno di indicizzazione
  2. non è necessario tenere traccia dell'ora dell'ultimo accesso
  3. non è necessario memorizzare vecchi dos-name di 8 caratteri
  4. bypassare il cestino di Windows

La disattivazione dell'indicizzazione non solo rallenta le ricerche, ma significa anche che non è possibile effettuare ricerche all'interno dei file. Non è un buon suggerimento.
Richard,

-2

Ho deciso che alcune informazioni di base potrebbero essere utili per chiarire questa risposta, ma come puoi vedere sono passato un po 'di disturbo ossessivo-compulsivo, quindi potresti voler saltare fino alla fine e poi tornare indietro se necessario. Anche se so un po ', non sono un esperto di SSD, quindi se qualcuno vede un errore MODIFICARLO . :).

Informazioni di base:

Che cos'è un SSD ?:

Un SSD o un'unità a stato solido è un dispositivo di archiviazione senza parti mobili. Il termine SSD è spesso inteso come specifico riferimento alle unità a stato solido basate su nand-flash destinate a fungere da alternativa al disco rigido, ma in realtà sono solo una forma di SSD, e nemmeno la più popolare. Il tipo più popolare di SSD è il supporto rimovibile basato su nand-flash come chiavette USB (unità flash) e schede di memoria, anche se raramente vengono chiamate SSD. Gli SSD possono anche essere basati su RAM, ma la maggior parte delle unità RAM sono software generati rispetto all'hardware fisico.

Perché esistono SSD Nand-flash destinati a fungere da alternativa al disco rigido ?:

Per eseguire un sistema operativo e il suo software è necessario un supporto di archiviazione veloce. È qui che entra in gioco la ram, ma storicamente la ram era costosa e la CPU non poteva occuparne grandi quantità. Quando si esegue un sistema operativo o si programma le porzioni di dati attualmente richieste vengono copiate sul proprio ram, perché il dispositivo di archiviazione non è abbastanza veloce. Viene creato un collo di bottiglia, poiché è necessario attendere che i dati vengano copiati dal dispositivo di archiviazione lento al ram. Sebbene non tutti gli SSD nand-flash ricevano prestazioni migliori rispetto al disco rigido più tradizionale, quelli che aiutano a ridurre il collo di bottiglia offrendo tempi di accesso più rapidi, velocità di lettura e velocità di scrittura.

Cos'è Nand-flash ?:

L'archiviazione flash è un supporto di archiviazione che utilizza l'elettricità anziché il magnetismo per archiviare i dati. Nand-flash è una memoria flash che utilizza un gateway NAND. A differenza di un nor-flash che è un accesso casuale, si accede in sequenza a nand-flash.

In che modo gli SSD Nand-flash memorizzano i dati ?:

La memoria Nand-Flash è composta da blocchi, quei blocchi sono divisi in celle, le celle contengono pagine. A differenza di un disco rigido che utilizza il magnetismo per archiviare i dati, i supporti flash utilizzano l'elettricità, poiché questi dati non possono essere sovrascritti; i dati devono essere cancellati per riutilizzare lo spazio. Il dispositivo non è in grado di cancellare singole pagine; la cancellazione deve avvenire a livello di blocco. Poiché i dati non possono essere scritti in un blocco che è già utilizzato (anche se non tutte le pagine in esso contenute), è necessario prima cancellare l'intero blocco, quindi il blocco ora vuoto può avere i dati scritti nelle sue pagine. Il problema è che potresti perdere tutti i dati già presenti in quelle pagine, compresi i dati che non vuoi scartare! Per evitare che questi dati esistenti vengano conservati, devono essere copiati altrove prima di eseguire la cancellazione del blocco.

Sui dischi rigidi viene utilizzata una piastra magnetica per memorizzare i dati. Proprio come i dischi in vinile, la piastra ha tracce e queste tracce sono divise in sezioni chiamate settori. Un settore può contenere una determinata quantità di dati (in genere 512 byte ma alcuni più recenti sono 4KB). Quando si applica un filesystem, i settori vengono raggruppati in cluster (in base a una dimensione specificata, chiamata dimensione di allocazione o dimensione del cluster), quindi i file vengono scritti tra i cluster. È anche possibile dividere un settore per rendere i cluster più piccoli delle dimensioni del settore. Lo spazio non utilizzato in un cluster dopo che un file è stato scritto su un cluster (o più) non è utilizzabile, il file successivo inizia in un nuovo cluster. Per evitare un sacco di spazio inutilizzabile, le persone utilizzano in genere dimensioni di cluster inferiori, ma ciò può ridurre le prestazioni durante la scrittura di file di grandi dimensioni. Gli SSD Nand-flash non hanno una piastra magnetica, usano l'elettricità che passa attraverso i blocchi di memoria. Un blocco è costituito da celle contenenti pagine. Le pagine hanno una capacità X (in genere 4 KB), quindi il numero di pagine determinerà la capacità di un blocco (in genere 512 KB). Su SSD una pagina equivale al settore su un disco rigido, poiché entrambi rappresentano la più piccola divisione di archiviazione.

Cos'è il livellamento dell'usura ?:

I blocchi di memoria NAND-Flash possono essere scritti e cancellati un numero limitato di volte (indicato come il loro ciclo di vita). Per impedire all'azionamento di soffrire di riduzione della capacità (blocchi morti) ha senso consumare i blocchi il più uniformemente possibile. Il ciclo di vita limitato è anche il motivo principale per cui molte persone suggeriscono di non avere un file di paging o una partizione di swap nel sistema operativo se si utilizza un SSD basato su Nand-flash (anche se le velocità di trasferimento dati dal dispositivo al ram sono anche importanti fattore in quel suggerimento).

Cos'è l'over provisioning ?:

Over Provisioning definisce la differenza tra quanto spazio libero c'è, rispetto a quanto sembra esserci. I dispositivi di archiviazione basati su nand-flash dichiarano di essere più piccoli di quanto non siano in modo da garantire l'utilizzo di blocchi vuoti per lo smaltimento dei rifiuti. Esiste un secondo tipo di provisioning eccessivo chiamato provisioning dinamico eccessivo che si riferisce semplicemente allo spazio libero noto all'interno dello spazio libero mostrato. Esistono due tipi di provisioning dinamico over: livello del sistema operativo e livello del controller dell'unità. A livello del sistema operativo, Trim può essere utilizzato per liberare blocchi che possono essere scritti immediatamente. A livello di controller, è possibile utilizzare spazio su disco non allocato (non partizionato, nessun file system). Avere più blocchi gratuiti aiuta a far funzionare l'unità alle sue migliori prestazioni, perché può scrivere immediatamente.

Cos'è l'amplificazione in scrittura ?:

Poiché i supporti Nand-flash richiedono la cancellazione di un blocco prima che possa essere scritto, tutti i dati all'interno del blocco che non vengono cancellati devono essere copiati in un nuovo blocco mediante smaltimento dei rifiuti. Queste scritture aggiuntive sono chiamate amplificazione della scrittura.

Che cos'è Trim.?:

I sistemi operativi sono realizzati tenendo conto dei tradizionali dischi rigidi. Ricorda che un disco rigido tradizionale può sovrascrivere direttamente i dati. Quando si elimina un file, il sistema operativo lo contrassegna come eliminato (va bene sovrascrivere), ma i dati sono ancora lì fino a quando non si verifica un'operazione di scrittura. Sugli SSD basati su Nand-flash questo è un problema, perché i dati devono prima essere cancellati. La cancellazione avviene a livello di blocco, pertanto potrebbero essere presenti dati aggiuntivi che non vengono eliminati. Lo smaltimento dei rifiuti copia tutti i dati non disponibili per l'eliminazione in blocchi vuoti, quindi i blocchi in questione possono essere cancellati. Tutto ciò richiede tempo e causa scritture non necessarie (amplificazione della scrittura)! Per ovviare a questo è stata creata una funzione chiamata Trim. Trim fornisce al sistema operativo il potere di dire all'SSD per cancellare blocchi con pagine contenenti dati che il sistema operativo ha contrassegnato come cancellati durante i periodi di tempo in cui non si richiede un'operazione di scrittura lì. La garbage collection fa la sua parte e, di conseguenza, i blocchi vengono liberati in modo che si possa sperare che si verifichino delle scritture su blocchi che non devono essere prima cancellati, il che rende il processo più veloce e aiuta a ridurre l'amplificazione della scrittura a un minimo. Ciò non avviene su base file; Trim utilizza l'indirizzamento del blocco logico. L'LBA specifica quali settori (pagine) cancellare e la cancellazione avviene a livello di blocco. e aiuta a ridurre l'amplificazione in scrittura a un minimo. Ciò non avviene su base file; Trim utilizza l'indirizzamento del blocco logico. L'LBA specifica quali settori (pagine) cancellare e la cancellazione avviene a livello di blocco. e aiuta a ridurre l'amplificazione in scrittura a un minimo. Ciò non avviene su base file; Trim utilizza l'indirizzamento del blocco logico. L'LBA specifica quali settori (pagine) cancellare e la cancellazione avviene a livello di blocco.

La risposta alla tua domanda "Svantaggi del partizionamento di un SSD?":

SSD basati su ram:

Non ci sono assolutamente svantaggi perché sono accessi casuali!

SSD basati su Nand-flash:

Gli unici svantaggi che mi vengono in mente sarebbero:

  1. Il livellamento dell'usura non avrà tanto spazio libero con cui giocare, perché le operazioni di scrittura saranno distribuite su uno spazio più piccolo, quindi "potresti", ma non necessariamente consumerai quella parte dell'unità più velocemente di quanto faresti se l'intera unità era una singola partizione a meno che non eseguirai un'usura equivalente sulle partizioni aggiuntive (ad esempio: un doppio avvio).

  2. Come i dischi rigidi, gli SSD nand-flash hanno accesso sequenziale, quindi tutti i dati che scrivi / leggi dalle partizioni aggiuntive saranno più lontani di quanto "potrebbero" essere stati se fossero stati scritti in una singola partizione, perché le persone di solito lasciano spazio libero nelle loro partizioni . Ciò aumenterà i tempi di accesso per i dati archiviati nelle partizioni aggiuntive.

  3. Meno spazio totale aumenta il probabile rischio di scrivere file frammentati e, sebbene l'impatto sulle prestazioni sia ridotto, tieni presente che è generalmente considerata una cattiva idea la deframmentazione di un SSD nand-flash perché consumerà il disco rigido. Ovviamente, a seconda del file system in uso, si ottengono quantità estremamente ridotte di frammentazione, poiché sono progettate per scrivere i file nel loro insieme ogni volta che è possibile anziché scaricarli ovunque per creare velocità di scrittura più elevate.

Direi che va bene avere più partizioni, ma indossare il livellamento potrebbe essere un problema se alcune partizioni ottengono molte attività di scrittura e altre ne ottengono molto poco. Se non si partiziona lo spazio che non si prevede di utilizzare e lo si lascia invece al provisioning dinamico rispetto al provisioning, è possibile ricevere un aumento delle prestazioni perché sarà più semplice liberare blocchi e scrivere dati sequenziali. Tuttavia, non vi è alcuna garauntee che sarà necessario spazio eccessivo per il provisioning, il che ci riporta al punto 1 sul livellamento dell'usura.

Alcune altre persone in questo thread hanno sollevato discussioni su come il partizionamento influenzerà i contributi di Trim al provisioning dinamico. A mio avviso, TRIM viene utilizzato per indicare settori (pagine) che hanno i dati contrassegnati per l'eliminazione, quindi lo smaltimento dei rifiuti può cancellare liberamente quei blocchi. Questo spazio libero funge da dinamico rispetto al provisioning solo all'interno di QUESTA partizione, poiché quei settori fanno parte dei cluster utilizzati dal file system di quella partizione; altre partizioni hanno i loro filesystem. Tuttavia, potrei sbagliarmi completamente poiché l'idea di over provisioning non è abbastanza chiara per me poiché i dati verranno scritti in luoghi che non hanno nemmeno filesystem o compaiono nella capacità delle unità. Questo mi chiedo se forse lo spazio di provisioning eccessivo viene utilizzato su base temporanea prima di un'operazione di scrittura optomizzata finale su blocchi all'interno di un filesystem? Ovviamente i contributi di Trim al provisioning dinamico e over all'interno del filesystem non sarebbero temporanei in quanto potrebbero essere scritti direttamente poiché sono già nello spazio utilizzabile. Questa è almeno la mia teoria. Forse la mia comprensione dei filesystem è sbagliata? Non sono stato in grado di trovare risorse che vadano nel dettaglio.


17
"1. Il livellamento dell'usura non avrà tanto spazio libero con cui giocare, perché le operazioni di scrittura saranno distribuite su uno spazio più piccolo (...)". Questo sembra non essere vero poiché il livellamento dell'usura viene eseguito a livello inferiore dal controller SSD (almeno con SSD e sistema operativo che supportano Trim ). superuser.com/a/901521/517270
misko321

4
Le memorie basate su NAND consentono l'accesso casuale ai blocchi. Ciò che non consente è l'accesso casuale ai bit all'interno di un blocco. Quindi è possibile accedere alle partizioni in modo casuale perché sono multipli della dimensione del blocco (almeno dovrebbe essere, se l'utente non ha in qualche modo pasticciato con la memoria, cioè utilizzando app di partizionamento senza sapere cosa sta succedendo)
Miguel Angelo,

5
i punti 1 e 2 sembrano essere totalmente falsi
underscore_d

-14

No, questo ha senso.

La velocità di un SSD si collega direttamente alla quantità di spazio utilizzabile sulla partizione in uso. Se l'unità è stata suddivisa in piccole sezioni, l'efficienza dell'SSD verrà compromessa a causa della mancanza di spazio libero.

Quindi non ci sono svantaggi nel partizionare un SSD, ma ci sono svantaggi nel non avere spazio libero sull'unità.

Fare riferimento a questo post di SuperUser .


1
Creare partizioni logiche non le riempie necessariamente, vero? Non vedo come si perde automaticamente spazio libero nel fare questo.
MarioDS

1
Il sistema operativo sa quali blocchi possono essere utilizzati e quali blocchi sono liberi, l'unità non può. Partizionando il sistema operativo ha meno blocchi liberi di cui è a conoscenza, blocchi che possono essere utilizzati. Questo riduce le prestazioni. TRIM viene eseguito a livello di partizione dal sistema operativo.
Mark Lopez,

10
Ma può. Ecco a cosa serve TRIM, dopo tutto. Il TRIM viene eseguito a livello settoriale e l'SSD non si preoccupa delle partizioni. Si preoccupa solo di settori (aka celle flash). Pertanto, le partizioni hanno solo un impatto trascurabile (spazio utilizzato dal sovraccarico del filesystem) sulle prestazioni.
Daniel B,

1
In realtà gli HDD sono quelli su cui non dovresti creare partizioni
Suici Doga,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.