ACM Transactions on Computer Systems (TOCS)
The design and implementation of a log-structured file system
ACM Transactions on Computer Systems (TOCS)
Fundamentals of operating systems (5th ed.)
Fundamentals of operating systems (5th ed.)
The LRU-K page replacement algorithm for database disk buffering
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
SOSP '01 Proceedings of the eighteenth ACM symposium on Operating systems principles
SIGMETRICS '02 Proceedings of the 2002 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
IEEE Transactions on Computers
2Q: A Low Overhead High Performance Buffer Management Replacement Algorithm
VLDB '94 Proceedings of the 20th International Conference on Very Large Data Bases
ARC: A Self-Tuning, Low Overhead Replacement Cache
FAST '03 Proceedings of the 2nd USENIX Conference on File and Storage Technologies
A log buffer-based flash translation layer using fully-associative sector translation
ACM Transactions on Embedded Computing Systems (TECS)
Communications of the ACM - Web science
BPLRU: a buffer management scheme for improving random writes in flash storage
FAST'08 Proceedings of the 6th USENIX Conference on File and Storage Technologies
A case for flash memory ssd in enterprise database applications
Proceedings of the 2008 ACM SIGMOD international conference on Management of data
Chameleon: A High Performance Flash/FRAM Hybrid Solid State Disk Architecture
IEEE Computer Architecture Letters
Design tradeoffs for SSD performance
ATC'08 USENIX 2008 Annual Technical Conference on Annual Technical Conference
Proceedings of the eleventh international joint conference on Measurement and modeling of computer systems
A page padding method for fragmented flash storage
ICCSA'07 Proceedings of the 2007 international conference on Computational science and its applications - Volume Part I
A space-efficient flash translation layer for CompactFlash systems
IEEE Transactions on Consumer Electronics
Optimizations of LFS with slack space recycling and lazy indirect block update
Proceedings of the 3rd Annual Haifa Experimental Systems Conference
On disk I/O scheduling in virtual machines
WIOV'10 Proceedings of the 2nd conference on I/O virtualization
Moneta: A High-Performance Storage Array Architecture for Next-Generation, Non-volatile Memories
MICRO '43 Proceedings of the 2010 43rd Annual IEEE/ACM International Symposium on Microarchitecture
FAST: quick application launch on solid-state drives
FAST'11 Proceedings of the 9th USENIX conference on File and stroage technologies
An FTL-agnostic layer to improve random write on flash memory
DASFAA'11 Proceedings of the 16th international conference on Database systems for advanced applications
Performance improvement of I/O subsystems exploiting the characteristics of solid state drives
ICCSA'11 Proceedings of the 2011 international conference on Computational science and its applications - Volume Part III
Self-tuning of disk input-output in operating systems
Journal of Systems and Software
FIOS: a fair, efficient flash I/O scheduler
FAST'12 Proceedings of the 10th USENIX conference on File and Storage Technologies
Linux block IO: introducing multi-queue SSD access on multi-core systems
Proceedings of the 6th International Systems and Storage Conference
FlashFQ: a fair queueing I/O scheduler for flash-based SSDs
USENIX ATC'13 Proceedings of the 2013 USENIX conference on Annual Technical Conference
Sirtio: Towards Scalable Virtual SSDs
Proceedings of the Second International Conference on Innovative Computing and Cloud Computing
I/O scheduling in Android devices with flash storage
Proceedings of the 8th International Conference on Ubiquitous Information Management and Communication
Hi-index | 0.00 |
In embedded systems and laptops, flash memory storage such as SSDs (Solid State Drive) have been gaining popularity due to its low energy consumption and durability. As SSDs are flash memory based devices, their performance behavior differs from those of magnetic disks. However, little attention has been paid on how to exploit SSDs from the disk scheduling algorithm view point. In this paper, we first describe behaviors of SSDs that inspires us to design a new disk scheduler for the Linux operating system. Specifically, read service time is almost constant in an SSD while write service time is not. Moreover, appropriate grouping of write requests eliminates any ordering-related restrictions and also maximizes write performance. From these observations, we propose two disk schedulers: IRBW-FIFO and IRBW-FIFO-RP. Both schedulers arrange write requests into bundles of an appropriate size while read requests are independently scheduled. Then, the IRBW-FIFO scheduler provides complete FIFO ordering to each bundle of write requests and each individual read requests while the IRBW-FIFO-RP scheduler gives higher priority to read requests than the bundles of write requests. We implement these schedulers in Linux 2.6.23, and results of executing our set of benchmark programs shows that performance improvements of up to 17% compared to existing Linux disk schedulers are achieved.