SSDs are different from traditional disks in organizational form, with the concept of sector, cylinder, and disk. SSD Flash storage is completely different and SSDs are made up of Page,block,plane,die.
The Linux kernel considers SSDs as a block device, and a block device like a disk model. The FTL inside the SSD hides the relationship of the SSD Page,block,plane,die, making the OS not specifically optimized.
1. Adjust the SSD burst to the OS sector, track and other information is appropriate
Fdisk-h 224-s 56/DEV/SDD
The-h parameter here refers to the number of "heads", and the-s parameter refers to the number of sectors per track, and Fdisk always treats any hard drive as a rotating mechanical hard drive, so some parameters are meaningless for SSD drives.
Create a Ext4 file system with the following command:
[Email protected] ~]# mke2fs-t ext4-e stripe-width=32 resize=500g/dev/sdd1
"Stripe-width=32" is recommended by Theodore, which is said to be helpful for performance, "resize=500g" Limits file system size to less than 500GB
2. Make appropriate adjustments to SSD usage at different levels of Linux
Block Layer
Scheduler
Modify the Scheduler to NoOp
Partition Alignment
partitions can be started at 1M and are guaranteed to be partition aligned. (Block alignment?) )
Filesystem
Ext4
Close Log
Log partitions and separate partitions when logging is not closed
Noatime,nodiratime,discard
That is, reduce metadata updates, enable trim
Applocation
Adjusting the corresponding configuration of the app is an internal mechanism adjustment of the app design.
About SSD Performance optimizations