Opened 12 years ago
Last modified 4 years ago
#8864 new enhancement
DriveSetup should detect disk physical block sizes.
Reported by: | Bouncer | Owned by: | stippi |
---|---|---|---|
Priority: | normal | Milestone: | R1.1 |
Component: | Applications/DriveSetup | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description
SSD's have an internal 4K block size. But DriveSetup always 'recommends' the user initialize the Partition with 2K blocks.
This block size mismatch results in poorer performance and faster wear on SSD drives. E.g.: two 4K blocks get used when attempting to write a total of 4K worth of data to the device. (eg: 1 4K block used for the first 2K write. It is then discarded and another 4K block used for the second 2K write).
DriveSetup should check if the drive is an SSD and make adjustments to its 'recommended' block size for the partition. Also, it should attempt to enforce a policy of aligning the partition to a 4K boundary when the drive is an SSD.
Change History (4)
comment:1 by , 12 years ago
Component: | Partitioning Systems/Intel → Applications/DriveSetup |
---|---|
Owner: | changed from | to
comment:2 by , 12 years ago
Summary: | DriveSetup should recognize SSD's. → DriveSetup should detect disk physical block sizes. |
---|
comment:3 by , 12 years ago
Theorically this would involve checking the value of bytes_per_sector on the device_geometry structure of the device.
Now, how should it happen in src/add-ons/disk_systems/bfs? Could it begin by adding a BPartitionParameterEditor::PartitionBlockSizeChanged() in BPartitionParameterEditor?
Though a TODO in headers/private/storage/PartitionParameterEditor.h indicates it shouldn't be done this way ( GenericPartitionParameterChanged(partition_parameter_type, const BVariant&) )
comment:4 by , 4 years ago
Milestone: | R1 → R1.1 |
---|
I changed the description to better represent the issue. More then just SSD's use larger block sizes. (some newer drives do as well)
Changing the BFS format dialog to include the following may be a good change as well:
Maybe DriveSetup could pass block size recommendations to each file system creation add-on?