Application launch times can be reduced by using low-capacity solid-state drives (SSDs) in combination with the conventional magnetic hard disk drives (HDDs). We propose a storage tiering scheme for a logically integrated hybrid disk that eliminates the requirement to store a block-mapping table on the SSDs, as well as the need to access this table for every I/O: these characteristics distinguish our scheme from most other SSD caching and driver-level tiering schemes. A heuristic identifies the disk blocks accessed during application launches, which are then moved from HDDs to SSDs by updating file-system pointers. In experiments with eight widely used applications, launch times were reduced by an average of 56 %, and our scheme outperformed the Linux DM-Cache by 6.5% on average. Because it runs as a background process, the block migration overhead is negligible. We also propose edge-block first and shortest sequence and long seek first (SSLSF) strategies for using limited SSD space effectively. Small collections of blocks, which have to be dispatched to the device driver together, are preferentially moved to the SSD especially when those blocks incur long seek times on the HDD. This produces a large reduction in HDD seek time for a small outlay of space on the SSD. In a scenario in which only 10% of launch blocks can be migrated to the SSD, the SSLSF strategy achieves average launch times for Eclipse and LibreOffice, which are 5.8% less than those exhibited by the widely used strategy of migrating short sequences of blocks first.
['Junhee Ryu', 'Dongeun Lee', 'Changhee Han', 'Heonshik Shin', 'Kyungtae Kang']
File-System-Level Storage Tiering for Faster Application Launches on Logical Hybrid Disks