I used Intel SSD data center tool to check my NVMe information, as shown below:

- Intel Optane(TM) SSD DC P4800X FUKS7175003R375AGN -
...
Bootloader : EB3B0213
DevicePath : /dev/nvme0n1
DeviceStatus : Healthy
Firmware : E2010211
IntelNVMe : True
LBAFormat : 0
NativeMaxLBA : 732585167
NumErrorLogPageEntries : 63
NumLBAFormats : 6
PhySpeed : The selected drive does not support this feature.
PhysicalSectorSize : The selected drive does not support this feature.
PhysicalSize : 375083606016
PowerGovernorAveragePower : The desired feature is not supported.
...
SMBusAddress : 256
SectorSize : 512
SerialNumber : FUKS7175003R375AGN
TCGSupported : False
...

As you can see, SectorSize = 512. However, when I test with fio using blocksize=4096 is a lot faster than blocksize=512. I know that a page in SSD needs to be erased before writing again, but here 512 should be exactly the same as a page, so it should be fast, how come this happen?

Especially with SSDs the block size is nowhere near the erase page size but 4096 is closer to the erase page size and everything has less work to do and will be more frequently aligned page size when sending I/O of 4096 than 512. In fact you will probably find things are faster with 64k - minimum block size is different to optimal block size! See http://codecapsule.com/2014/02/12/coding-for-ssds-part-2-architecture-of-an-ssd-and-benchmarking/ (especially the section about NAND-flash pages and blocks) and http://codecapsule.com/2014/02/12/coding-for-ssds-part-3-pages-blocks-and-the-flash-translation-layer/ for detail.

Your Answer

 

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.