C'è un modo per scoprire le dimensioni della pagina SSD su Linux / Unix? Che cos'è il "blocco fisico" nell'output di fdisk?


17

Ovunque leggo che gli SSD interni sono strutturati in "pagine" 4K o più grandi, raggruppate in "blocchi" di circa 128-256 pagine ( 1 , 2 ). Gli SSD funzionano con queste pagine e blocchi, "possono solo cancellare i dati a livello di blocco" (quindi il blocco di pagine è chiamato "[NAND] cancella blocco"). E vengono emulati i blocchi da 512 B per la partizione (che viene eseguita per motivi legacy).

Sto cercando di informarmi sugli SSD, dal momento che ho alcuni strani ritardi / blocchi durante le scritture sul mio Sandisk U100 su laptop Samsung 9 np900x3c. E una cosa utile sarebbe scoprire correttamente quali pagine / blocchi ha il mio SSD?

Esiste un'utilità o un /sys/...file su Linux per determinare le dimensioni della pagina SSD?

Oppure "potrebbe essere necessario il drive e google i numeri di parte sui chip NAND", come nel commento ?

Cercando su Google il mio SSD Sandisk non riesco a trovare una scheda tecnica specifica. Ma Sandisk e la gente menzionano "letture / scritture 4K casuali". Significa che il disco ha pagine 4K?

Inoltre, fdiskmi mostra la dimensione del settore (sia fisico che logico) e I / O 512 byte:

Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4b914713

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    50331647    25164800   83  Linux
/dev/sda2        50331648   239583231    94625792   83  Linux
/dev/sda4       239583232   250068991     5242880   82  Linux swap / Solaris

Qual è la dimensione del settore "fisico" qui? Non sembra essere il parametro dell'unità SSD stessa, poiché tutti dicono che le pagine SSD sono 4K +. È il parametro emulato per il disco? E "logico" è la dimensione del settore per la partizione? Inoltre, qual è la dimensione I / O?

PS

Questa domanda è probabilmente la stessa di quella per il flash USB : la risposta manca di punto, man fsstatdice fsstat displays the details associated with a file systeme la domanda riguarda il disco stesso. Il mio post ha più dettagli, forse attirerebbe risposte migliori?

Risposte:


11
  • La dimensione del blocco fisico riportata da fdiskè la dimensione del blocco fisico riportata dal disco quando richiesto. Raramente ha qualche relazione con le pagine SSD o cancella i blocchi.

  • 4 Le letture / scritture di KiB sono una misura comune delle prestazioni di I / O, che rappresentano operazioni di I / O "piccole".

  • Non esiste un modo standard per un SSD di segnalare le dimensioni della pagina o cancellare le dimensioni del blocco. Pochi se qualche produttore li riporta nei fogli dati. (Perché potrebbero cambiare durante il ciclo di vita di uno SKU, ad esempio a causa del cambiamento dei fornitori.) C'è un white paper di Intel che suggerisce che l'allineamento di 4 KiB è sufficiente.

  • Per un uso pratico basta allineare tutte le strutture dati (partizioni, payload dei contenitori LUKS, volumi logici LVM) a 1 o 2 limiti MiB. Dopotutto è un SSD - è progettato per far fronte ai soliti filesystem, come NTFS (che utilizza 4 unità di allocazione KiB). Se Windows ritiene che l'allineamento delle partizioni a 1 MiB sia sufficiente, puoi scommettere che qualsiasi produttore di SSD si assicurerà che i loro prodotti funzionino bene con una tale configurazione.

  • È preferibile lasciare dal 5% al ​​10% di spazio non allocato al di fuori di qualsiasi partizione. Avere lo spazio sottoposto a provisioning eccessivo è di grande aiuto per gli SSD nel mantenere le loro prestazioni nel tempo.


"C'è un white paper di Intel che suggerisce che l'allineamento di 4 KiB è sufficiente." Come si ottiene dal documento collegato? L'ho guardato, e non è affatto ovvio dove il documento lo rivendichi.
Matteo

@Matthew: Pagina 7: "la maggior parte dei nuovi HDD e Intel SSD hanno prestazioni migliori con un allineamento di 4096 byte (4KB)" .
AlexP

L'ho letto come "rispetto a 512 byte", il che non sorprende affatto. Inoltre, le seguenti figure sembrano implicare una dimensione della pagina di 4KiB. Non leggo che ciò implica che "4KiB è abbastanza buono per unità con pagine> 4KiB" ... o che è destinato a dire qualcosa su unità non Intel.
Matthew,

+1 per attenersi rigorosamente alla notazione KiB / MiB --- vedere man unitsper gli scettici
XavierStuvw

Perché lo spazio sottoposto a provisioning eccessivo ... è di grande aiuto per gli SSD nel mantenimento delle loro prestazioni nel tempo ?
XavierStuvw,

2

smartctl(disponibile in smartmontools) dovrebbe farlo per te.


2
In che modo l'OP utilizzerà questo strumento per farlo?
roaima,

per ora sto ottenendo gli stessi settori fisici e logici da 512 B smartctl -i /dev/sda, non sono sicuro di come leggere smartctl --all /dev/sdae smartctl --xall /dev/sdainviare il kernel in preda al panico ..
xealits

2
Avendo letto su SMART , penso che non affronti tali informazioni come la struttura interna degli SSD - controlla alcuni parametri sugli errori / "
integrità
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.