Question Erase Block Size for TS120GSSD220S

daggs1

Member
Mar 9, 2018
194
8
81
Greetings,

I have a new Transcend SSD TS120GSSD220S. I want to format it properly and for that I need the Erase Block Size, does anyone knows what it is?

the TS256GSSD720 has 2MB for erase block size but it is a different model.

thanks
 

Insert_Nickname

Diamond Member
May 6, 2012
4,971
1,691
136
For a system drive you should always use a 4KB cluster size. Otherwise your write amplification will go through the roof. Simply because if you use a larger allocation unit size, every time the OS writes a 4KB page, you'll be writing an entire allocation unit of whichever size.

The drives firmware manages the rest.

Anyway, NTFS doesn't support larger then 64KB cluster size for drives under 2TB.
 

daggs1

Member
Mar 9, 2018
194
8
81
Greetings,

For a system drive you should always use a 4KB cluster size. Otherwise your write amplification will go through the roof. Simply because if you use a larger allocation unit size, every time the OS writes a 4KB page, you'll be writing an entire allocation unit of whichever size.

The drives firmware manages the rest.

Anyway, NTFS doesn't support larger then 64KB cluster size for drives under 2TB.

I never said I was going to use NTFS, the fw declares sector size as 512, however all the partitions on the drive are divided by 8 and the partition program states they are aligned optimally.
 

daggs1

Member
Mar 9, 2018
194
8
81
Greeings,
The best way to find out erase block size these days is usually to grab an appropriate flash ID tool from http://vlo.name:3000/ssdtool/ and run it against the drive in question. Transcend usually uses SMI controllers.
thanks for the suggestion but the drive is not on a windows system and I cannot move it to one nor install windows on that system.
is there by any chance a linux version of this tool?
 

daggs1

Member
Mar 9, 2018
194
8
81
I've used tools like flashbench in the past to estimate but it can be tricky.
here is the output:
Code:
align 17179869184       pre 27.5µs      on 30.3µs       post 27.2µs     diff 2.98µs
align 8589934592        pre 18.4µs      on 20.3µs       post 18.5µs     diff 1.88µs
align 4294967296 pre 18.3µs on 20.3µs post 18.5µs diff 1.87µs
align 2147483648 pre 18.4µs on 20.3µs post 18.4µs diff 1.92µs
align 1073741824 pre 27.4µs on 29.3µs post 18.5µs diff 6.34µs
align 536870912 pre 27.1µs on 30.1µs post 27.3µs diff 2.94µs
align 268435456 pre 27.4µs on 30.2µs post 27.2µs diff 2.83µs
align 134217728 pre 27.1µs on 30.1µs post 27.3µs diff 2.92µs
align 67108864 pre 31.5µs on 34.4µs post 27.3µs diff 5.03µs
align 33554432 pre 31.3µs on 38.4µs post 31.4µs diff 7.05µs
align 16777216 pre 31.3µs on 38.4µs post 31.4µs diff 7.06µs
align 8388608 pre 31.4µs on 38.5µs post 31.6µs diff 7.05µs
align 4194304 pre 31.3µs on 36.4µs post 29.5µs diff 5.95µs
align 2097152 pre 31.3µs on 38.5µs post 31.3µs diff 7.2µs
align 1048576 pre 31.3µs on 44.1µs post 29.2µs diff 13.8µs
align 524288 pre 31.4µs on 36.1µs post 31.4µs diff 4.74µs
align 262144 pre 31.3µs on 36.1µs post 31.3µs diff 4.76µs
align 131072 pre 31.3µs on 36.1µs post 31.4µs diff 4.75µs
align 65536 pre 31.5µs on 36.3µs post 31.3µs diff 4.9µs
align 32768 pre 31.4µs on 36.6µs post 31.8µs diff 4.94µs
align 16384 pre 29.2µs on 32.4µs post 29.5µs diff 3.05µs
align 8192 pre 29.2µs on 31.6µs post 29.3µs diff 2.38µs
align 4096 pre 29.3µs on 31.6µs post 29.2µs diff 2.39µs
align 2048 pre 29.2µs on 29.8µs post 29.2µs diff 642ns
however I don''t know what to make of it, afaic there is no clear cut value.
 

Soulkeeper

Diamond Member
Nov 23, 2001
6,712
142
106
The internal block size for NAND is similar to the row or page size in DDR, for several generations ddr has been roughly the same for many devices 1K or 2K. With NAND 8K is common, some might be 16K. The "physical" sector size as opposed to "logical" sector size, is the block size you want to use for max performance. All mainstream SSDs are designed to operate near peak with low 512b block sizes, the controller is able to combine and reallocate/move/defer dynamically, so almost all penalty is hidden, even if the "physical" block size is 8K, 16K, or larger. Personally i'd just set 4K sector size and not worry about it. The drives/controllers don't even expose their internal physical block sizes to the OS as far as I know, they will/do lie. In linux 4k is often ideal because it will align with internal block sizes in the kernel and for the CPUs. If you align the sector start size to a 1MB boundary you'll account for most any page size (as far as I know), and the FS will just be writing fractions of or multiples of physical block sizes during normal operation, which the controller will handle fine.

smartctl -a for my 4K enterprise spinner:
Sector Size: 4096 bytes logical/physical
for a samsung 850 PRO sata(obviously not 512 physical, but still claims it is).
Sector Size: 512 bytes logical/physical
 
Last edited:

daggs1

Member
Mar 9, 2018
194
8
81
The internal block size for NAND is similar to the row or page size in DDR, for several generations ddr has been roughly the same for many devices 1K or 2K. With NAND 8K is common, some might be 16K. The "physical" sector size as opposed to "logical" sector size, is the block size you want to use for max performance. All mainstream SSDs are designed to operate near peak with low 512b block sizes, the controller is able to combine and reallocate/move/defer dynamically, so almost all penalty is hidden, even if the "physical" block size is 8K, 16K, or larger. Personally i'd just set 4K sector size and not worry about it. The drives/controllers don't even expose their internal physical block sizes to the OS as far as I know, they will/do lie. In linux 4k is often ideal because it will align with internal block sizes in the kernel and for the CPUs. If you align the sector start size to a 1MB boundary you'll account for most any page size (as far as I know), and the FS will just be writing fractions of or multiples of physical block sizes during normal operation, which the controller will handle fine.

smartctl -a for my 4K enterprise spinner:
Sector Size: 4096 bytes logical/physical
for a samsung 850 PRO sata(obviously not 512 physical, but still claims it is).
Sector Size: 512 bytes logical/physical
so bottom line, leave it be and don't try to optimize the fs for erase blocks size?
 

NewMaxx

Senior member
Aug 11, 2007
247
29
91
however I don''t know what to make of it, afaic there is no clear cut value.

The SSD220S should be a SM2258 + IMFT TLC. At smaller capacities, 256Gb/die. Typically 2304 pages per block at 16KB (user) per page, albeit in two planes. This would imply a 36MB block size, not counting ECC/spare.