Linux VFS层热跟踪概述.pdfVIP

  • 8
  • 0
  • 约6.98千字
  • 约 19页
  • 2019-05-24 发布于广东
  • 举报
VFS hot tracking Development Overview October 19, 2013 Linux is a registered trademark of Linus Torvalds. Agenda ● Background ● Methodology ● Internals ● Performance ● Status Next ● References Background ● Problem: – SSD disks has high IOPS(Input/Output Per Second) and low capability, while traditional disks has opposite peculiarities. – Some data are highly accessed, while some are rarely. ● Vision: – Place hot data on fast disks as far as possible. – Defrag hot files as first as possible ● Proposal: – Trace and detect hot data on the filesystem – Relocate hot data to fast disks – Defrag the files based on hot information How to track? ● Track real disk I/O access, not I/O hit in page cache ● Track accessed inodes and its ranges whose granularity is 1 MegaByte ● The key is – ino → inode – offset → range ● Track each read/write on I/O path, including buffered and direct mode How to find hot spots? ● Each hot item is stored in – Inserted into rb_tree – Linked to hot map list ● Each hot item is indexed in two ways – One by ino or offset in rb_tree, used to quickly update data access frequency – One by temperature in hot map array, used to quickly lookup hot spots ● One delayed worker is queued periodically to update the temperature of each hot item, and move it to irresponding hot map list based on its temperature. Data Structures Structure Relationship Record I/O access info Start

文档评论(0)

1亿VIP精品文档

相关文档