Questa informazione è talvolta pubblicata nelle specifiche del produttore SSD, ma altre volte non è presente, specialmente per le schede di memoria CF o SD. A meno di utilizzare Google per cercare qualcun altro che ha effettuato la ricerca, puoi provare a stimarlo tu stesso utilizzando FlashBench. Scaricalo qui: https://github.com/bradfa/flashbench
Questo strumento esegue letture casuali su un SSD e traccia una tabella che mostra i tempi di lettura. (Dovresti aver già scritto alcune volte sull'SSD, perché la lettura di tutte le pagine cancellate è spesso simulata dal chip del controller.) Cercando interruzioni nel tempo per dimensione del blocco, puoi dedurre qual è la dimensione del blocco di cancellazione. Ecco un esempio dal README
:
== Indovina cancellare il blocco e le dimensioni della pagina ==
''flashbench -a <device>''
Questo è un semplice test di sola lettura che esegue piccole letture oltre i confini di varie dimensioni. Esempio:
$ sudo ./flashbench -a /dev/mmcblk0 --blocksize=1024
align 134217728 pre 735µs on 1.08ms post 780µs diff 324µs
align 67108864 pre 736µs on 1.05ms post 763µs diff 300µs
align 33554432 pre 722µs on 1.04ms post 763µs diff 294µs
align 16777216 pre 727µs on 1.05ms post 772µs diff 302µs
align 8388608 pre 724µs on 1.04ms post 768µs diff 299µs
align 4194304 pre 741µs on 1.08ms post 788µs diff 317µs
align 2097152 pre 745µs on 950µs post 811µs diff 171µs
align 1048576 pre 745µs on 945µs post 807µs diff 169µs
align 524288 pre 743µs on 936µs post 799µs diff 165µs
align 262144 pre 746µs on 948µs post 809µs diff 171µs
align 131072 pre 737µs on 935µs post 804µs diff 165µs
align 65536 pre 735µs on 925µs post 796µs diff 159µs
align 32768 pre 735µs on 925µs post 800µs diff 157µs
align 16384 pre 745µs on 911µs post 781µs diff 148µs
align 8192 pre 785µs on 808µs post 725µs diff 53.3µs
align 4096 pre 784µs on 788µs post 779µs diff 5.85µs
align 2048 pre 787µs on 793µs post 789µs diff 4.65µs
Questo mostra i tempi di accesso per eseguire due letture da 1024 byte attorno ai confini dei blocchi allineati di potenza di due. La lettura alla fine di un'unità da 128 MB richiede circa 735 microsecondi, la lettura dell'ultimo blocco di questa unità insieme al primo blocco del successivo richiede circa 1080 microsecondi e la lettura dei primi due blocchi in un'unità da 128 MB richiede circa 780 microsecondi.
Il numero più interessante qui è l'ultimo, la differenza tra il secondo numero e la media del primo e del terzo è 324 microsecondi. Tutti questi numeri rimangono pressoché uguali per tutte le unità tra 4 MB e 128 MB.
Tuttavia, da 2 MB fino a 16 KB, l'ultima colonna ha un valore molto più basso. Ciò indica che qualunque cosa la memory card faccia su un limite di 4 MB non accade su altri confini. L'ipotesi plausibile qui è che 4 MB siano le dimensioni del blocco di cancellazione, chiamate anche dimensioni del segmento o unità di allocazione. Questa cancellazione di blocchi dovrà essere utilizzata in altri test successivi a questo.
Allo stesso modo, entrambi i limiti di 16 KB e 8 KB sono speciali. La spiegazione logica di ciò è che la scheda ha pagine da 8 KB, ma può utilizzare accessi su più piani per leggere contemporaneamente due pagine da 8 KB.
Alcune carte mostrano solo un modello chiaro usando accessi con determinate dimensioni di blocco, altre carte non mostrano alcun modello, il che significa che i numeri devono essere determinati in modo diverso.
Inoltre, le carte che non sono mai state completamente scritte possono mostrare un comportamento diverso perché i tempi di accesso su segmenti pre-cancellati sono diversi da quelli che sono stati scritti.