From: Ben Chociej bchoc...@gmail.com
Adds a hash table structure to efficiently lookup the data temperature
of a file. Also adds a function to calculate that temperature based on
some metrics kept in custom frequency data structs (in the next patch).
Signed-off-by: Ben Chociej bchoc...@gmail.com
From: Ben Chociej bchoc...@gmail.com
Adds hot_inode_tree and hot_range_tree structs to keep track of
frequently accessed files and ranges within files. Trees contain
hot_{inode,range}_items representing those files and ranges, each of
which contains a btrfs_freq_data struct with its frequency of
From: Ben Chociej bchoc...@gmail.com
BTRFS_IOC_GET_HEAT_INFO: return a struct containing the various
metrics collected in btrfs_freq_data structs, and also return a
calculated data temperature based on those metrics. Optionally, retrieve
the temperature from the hot data hash list instead of
From: Ben Chociej bchoc...@gmail.com
Add a /sys/kernel/debug/btrfs_data/device_name/ directory for each
volume that contains two files. The first, `inode_data', contains the
heat information for inodes that have been brought into the hot data map
structures. The second, `range_data', contains
From: Ben Chociej bchoc...@gmail.com
The relocation code operates on the heat hash lists to identify hot or
cold data logical file ranges that are candidates for relocation. The
triggering mechanism for relocation is controlled by a global heat
threshold integer value (fs_root-heat_threshold).
This patch set introduces functionality into btrfsctl and mkfs.btrfs to
support the kernel patches for hot data tracking and migration to SSD
with Btrfs. New functionality includes a -h option to mkfs.btrfs to
preallocate approrpiate block group types for SSD data migration, and
also includes
From: Ben Chociej bchoc...@gmail.com
Modified mkfs.btrfs to add hot data relocation option (-h) which
preallocates BTRFS_BLOCK_GROUP_DATA_SSD and
BTRFS_BLOCK_GROUP_METADATA_SSD at mkfs time for future use by hot data
relocation code. Also added a userspace function to detect whether a
block
INTRODUCTION:
This patch series adds experimental support for tracking data
temperature in Btrfs. Essentially, this means maintaining some key
stats (like number of reads/writes, last read/write time, frequency of
reads/writes), then distilling those numbers down to a single
temperature value
From: Ben Chociej bccho...@us.ibm.com
Adds a hash table structure to efficiently lookup the data temperature
of a file. Also adds a function to calculate that temperature based on
some metrics kept in custom frequency data structs.
Signed-off-by: Ben Chociej bccho...@us.ibm.com
Signed-off-by:
From: Ben Chociej bccho...@us.ibm.com
Adds a ./btrfs_data/device_name/ directory in the debugfs directory
for each volume. The directory contains two files. The first,
`inode_data', contains the heat information for inodes that have been
brought into the hot data map structures. The second,
From: Ben Chociej bccho...@us.ibm.com
BTRFS_IOC_GET_HEAT_INFO: return a struct containing the various
metrics collected in btrfs_freq_data structs, and also return a
calculated data temperature based on those metrics. Optionally, retrieve
the temperature from the hot data hash list instead of
From: Ben Chociej bccho...@us.ibm.com
Miscellaneous features that enable hot data tracking features, open the
door for future hot data migration to faster media, and generally make
the hot data functions a bit more friendly.
ctree.h: Add the root hot_inode_tree and heat hashlists. Defines some
12 matches
Mail list logo