The equivalent exists for solid-state storage as well. It is useful in some contexts to characterize the capacity and throughput of the various firmware subsystems in the same way.
Much of the motivation when I learned it was based in characterizing the storage to identify defects and weird or anomalous behavior that were not disclosed by the manufacturer. Oddities are relatively common. At the most basic level this was useful for tuning I/O scheduler behavior. Just as useful, it allowed us to surface storage hardware issues to customers before they blamed our software.
Probing the properties of storage hardware is a cool but rarely written about area of systems software with many ramifications for managing performance.
A while back I wrote a simple simulation of a spinning hard disk, with the idea being you could tweak the parameters to exaggerate (eg.) track to track seeking and then work out if your filesystem/database/backup/whatever handled it well. I'm going to bookmark this page so next time I'm bored I can update the simulation to be more physically accurate. https://libguestfs.org/nbdkit-spinning-filter.1.html
Also note “Disks are like snowflakes - no two are alike”, Krevat, Tucker & Ganger, HotOS 2011. The number of tracks and bit density is not the same on different surfaces within the same disk, or across disks of the same model.
this takes me back. i used to work on storage performance and understanding the difference between logical and physical geometry was crucial for aligning partitions correctly. modern drives do a lot of remapping internally so the old approaches don't apply the same way anymore.
one thing the article doesn't really touch on is how trim/discard interacts with the physical layout on ssds. would be interesting to see a followup on that.
The equivalent exists for solid-state storage as well. It is useful in some contexts to characterize the capacity and throughput of the various firmware subsystems in the same way.
Much of the motivation when I learned it was based in characterizing the storage to identify defects and weird or anomalous behavior that were not disclosed by the manufacturer. Oddities are relatively common. At the most basic level this was useful for tuning I/O scheduler behavior. Just as useful, it allowed us to surface storage hardware issues to customers before they blamed our software.
Probing the properties of storage hardware is a cool but rarely written about area of systems software with many ramifications for managing performance.
This study is so cool.
A while back I wrote a simple simulation of a spinning hard disk, with the idea being you could tweak the parameters to exaggerate (eg.) track to track seeking and then work out if your filesystem/database/backup/whatever handled it well. I'm going to bookmark this page so next time I'm bored I can update the simulation to be more physically accurate. https://libguestfs.org/nbdkit-spinning-filter.1.html
Why content like this doesn’t supersede the AI content, I will never know. Thanks for sharing :)
AI, as we have today, struggles to produce long, data-dense article.
"on HN" was what I mentally added to that comment.
I'd rather see articles like this know when the latest OpenAI release was and well it can draw a pelican.
Also note “Disks are like snowflakes - no two are alike”, Krevat, Tucker & Ganger, HotOS 2011. The number of tracks and bit density is not the same on different surfaces within the same disk, or across disks of the same model.
https://www.usenix.org/legacy/event/hotos11/tech/final_files...
Read this paper: “ Revisiting HDD Rules of Thumb: 1/3 Is Not (Quite) the Average Seek Distance”, MSST 2024. https://www.msstconference.org/MSST-history/2024/Papers/msst...
It has a very good approximation for seek time based on the track radius delta, with experimental validation on a modern drive.
this takes me back. i used to work on storage performance and understanding the difference between logical and physical geometry was crucial for aligning partitions correctly. modern drives do a lot of remapping internally so the old approaches don't apply the same way anymore.
one thing the article doesn't really touch on is how trim/discard interacts with the physical layout on ssds. would be interesting to see a followup on that.