Menu Home

Investigating NVME LBA sizes and formatting for performance

I grabbed 4 1TB Kingston KC3000 NVME disks, and as I plan on using them in a proxmox server. I’ve investigated their LBA (Logical block addressing) format support to gain better performance by using the larger native block size.

Bonus fact: Some NVME drives also have LBA formats that support on-disk metadata, and this can be bypassed for ZFS or similar filesystems that maintain metadata.


Install nvme cli for debian/ubuntu (Optional)

apt install nvme-cli

nvme-cli (with human readable output)

nvme id-ns -H /dev/nvme0n1

The LBA part is the important part for now.

Notice: There are 2 LAB Formats (512 and 4096). 512 is the current in use format, but 4096 is marked as giving better relative performance.

smartctl (with all information)

smartctl -a /dev/nvme0

Again, the support LBA size is the important part.

Format the NVME disk to use a different LBA

nvme format --lbaf=1 /dev/nvme0n1

After that. test the result from the previous

Additional Resources

Categories: TECHNICAL


Leave a Reply

Your email address will not be published. Required fields are marked *