Linux Kernel Gets Hot-Data Tracking
Patches continue to be developed for the Linux kernel that provide hot-data tracking support for file-systems. This hot-data tracking feature may lead to performance improvements when dealing with commonly used data on the disk. Currently this feature has been developed with Btrfs in mind, but could be adapted to other Linux file-systems.
The VFS hot-data tracking patches are now up to their third revision. While the Linux 3.7 merge window is currently open, the hot-data tracking patches are not quite ready yet with still a TODO list of eight items open after the v3 patches were published. It looks like hot-data tracking will burn the Linux 3.8 kernel at the earliest.
Linux kernel hot-data tracking is for tracking data "temperature" information in the VFS layer. The Linux kernel VFS layer stores some statistics like the number of reads/writes, last read/write times, read/write frequency, etc. Those various data points are then turned into a single data "temperature" to determine what data on the disk is "hot" -- i.e. the most used data on the disk. The hot data can then be moved to a solid-state drive (SSD) automatically or dealt with in other manners. The long-term development goal is for allowing Btrfs to intelligently use SSDs in a heterogeneous volume. Btrfs has long desired hot-data relocation and now it's finally coming to reality.
While the initial patches implement hot-data tracking only for the Btrfs file-system, with a bulk of the hot-data work being done in the VFS layer, other file-systems could tap into this feature too. With all the patches applied, the Btrfs file-system needs to be mounted with a hot_track mount option for the feature to be actually flipped on. Hot-data statistics are also exposed over debugfs.
The patches for those interested can be found on the kernel mailing list.
The VFS hot-data tracking patches are now up to their third revision. While the Linux 3.7 merge window is currently open, the hot-data tracking patches are not quite ready yet with still a TODO list of eight items open after the v3 patches were published. It looks like hot-data tracking will burn the Linux 3.8 kernel at the earliest.
Linux kernel hot-data tracking is for tracking data "temperature" information in the VFS layer. The Linux kernel VFS layer stores some statistics like the number of reads/writes, last read/write times, read/write frequency, etc. Those various data points are then turned into a single data "temperature" to determine what data on the disk is "hot" -- i.e. the most used data on the disk. The hot data can then be moved to a solid-state drive (SSD) automatically or dealt with in other manners. The long-term development goal is for allowing Btrfs to intelligently use SSDs in a heterogeneous volume. Btrfs has long desired hot-data relocation and now it's finally coming to reality.
While the initial patches implement hot-data tracking only for the Btrfs file-system, with a bulk of the hot-data work being done in the VFS layer, other file-systems could tap into this feature too. With all the patches applied, the Btrfs file-system needs to be mounted with a hot_track mount option for the feature to be actually flipped on. Hot-data statistics are also exposed over debugfs.
The patches for those interested can be found on the kernel mailing list.
5 Comments