Scale and performance in a distributed file system
ACM Transactions on Computer Systems (TOCS)
Computer architecture: a quantitative approach
Computer architecture: a quantitative approach
ASPLOS IV Proceedings of the fourth international conference on Architectural support for programming languages and operating systems
The design and implementation of a log-structured file system
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Software support for speculative loads
ASPLOS V Proceedings of the fifth international conference on Architectural support for programming languages and operating systems
Reducing memory latency via non-blocking and prefetching caches
ASPLOS V Proceedings of the fifth international conference on Architectural support for programming languages and operating systems
Application-controlled physical memory using external page-cache management
ASPLOS V Proceedings of the fifth international conference on Architectural support for programming languages and operating systems
Scheduler activations: effective kernel support for the user-level management of parallelism
ACM Transactions on Computer Systems (TOCS)
Limitations of cache prefetching on a bus-based multiprocessor
ISCA '93 Proceedings of the 20th annual international symposium on computer architecture
SIGMETRICS '93 Proceedings of the 1993 ACM SIGMETRICS conference on Measurement and modeling of computer systems
Practical prefetching via data compression
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
The LRU-K page replacement algorithm for database disk buffering
SIGMOD '93 Proceedings of the 1993 ACM SIGMOD international conference on Management of data
A study of integrated prefetching and caching strategies
Proceedings of the 1995 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems
Informed prefetching and caching
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Application-controlled file caching and prefetching
Application-controlled file caching and prefetching
Operating system support for database management
Communications of the ACM
Exposing I/O concurrency with informed prefetching
PDIS '94 Proceedings of the third international conference on on Parallel and distributed information systems
Fido: A Cache That Learns to Fetch
VLDB '91 Proceedings of the 17th International Conference on Very Large Data Bases
File system logging versus clustering: a performance comparison
TCON'95 Proceedings of the USENIX 1995 Technical Conference Proceedings
Strategic directions in storage I/O issues in large-scale computing
ACM Computing Surveys (CSUR) - Special ACM 50th-anniversary issue: strategic directions in computing research
Implementing cooperative prefetching and caching in a globally-managed memory system
SIGMETRICS '98/PERFORMANCE '98 Proceedings of the 1998 ACM SIGMETRICS joint international conference on Measurement and modeling of computer systems
A database disk buffer management algorithm based on prefetching
Proceedings of the seventh international conference on Information and knowledge management
UTLB: a mechanism for address translation on network interfaces
Proceedings of the eighth international conference on Architectural support for programming languages and operating systems
Performance evaluation of new adaptive object replacement techniques for VOD systems
Proceedings of the 1999 ACM symposium on Applied computing
Modeling and optimizing I/O throughput of multiple disks on a bus
SIGMETRICS '99 Proceedings of the 1999 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
Web prefetching between low-bandwidth clients and proxies: potential and performance
SIGMETRICS '99 Proceedings of the 1999 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
On implementing MPI-IO portably and with high performance
Proceedings of the sixth workshop on I/O in parallel and distributed systems
Proceedings of the tenth annual ACM-SIAM symposium on Discrete algorithms
A cost-benefit scheme for high performance predictive prefetching
SC '99 Proceedings of the 1999 ACM/IEEE conference on Supercomputing
Minimizing stall time in single and parallel disk systems
Journal of the ACM (JACM)
Source-to-Source Instrumentation for the Optimization of an Automatic Reading System
The Journal of Supercomputing
Vertical Data Migration in Large Near-Line Document Archives Based on Markov-Chain Predictions
VLDB '97 Proceedings of the 23rd International Conference on Very Large Data Bases
Shared Index Scans for Data Warehouses
DaWaK '01 Proceedings of the Third International Conference on Data Warehousing and Knowledge Discovery
An Experimental Study of Prefetching and Caching Algorithms for the World Wide Web
ALENEX '02 Revised Papers from the 4th International Workshop on Algorithm Engineering and Experiments
Minimizing Stall Time in Single and Parallel Disk Systems Using Multicommodity Network Flows
APPROX '01/RANDOM '01 Proceedings of the 4th International Workshop on Approximation Algorithms for Combinatorial Optimization Problems and 5th International Workshop on Randomization and Approximation Techniques in Computer Science: Approximation, Randomization and Combinatorial Optimization
Duality between Prefetching and Queued Writing with Parallel Disks
ESA '01 Proceedings of the 9th Annual European Symposium on Algorithms
Block Asynchronous I/O: A Flexible Infrastructure for User-Level Filesystems
HiPC '01 Proceedings of the 8th International Conference on High Performance Computing
Integrated prefetching and caching in single and parallel disk systems
Proceedings of the fifteenth annual ACM symposium on Parallel algorithms and architectures
Asynchronous parallel disk sorting
Proceedings of the fifteenth annual ACM symposium on Parallel algorithms and architectures
Sourcebook of parallel computing
The performance impact of kernel prefetching on buffer cache replacement algorithms
SIGMETRICS '05 Proceedings of the 2005 ACM SIGMETRICS international conference on Measurement and modeling of computer systems
Integrated prefetching and caching in single and parallel disk systems
Information and Computation
Storage-Aware Caching: Revisiting Caching for Heterogeneous Storage Systems
FAST '02 Proceedings of the 1st USENIX Conference on File and Storage Technologies
Freeblock Scheduling Outside of Disk Firmware
FAST '02 Proceedings of the 1st USENIX Conference on File and Storage Technologies
A Trace-Driven Analysis of Parallel Prefetching Algorithms for Parallel and Distributed Systems
HPCASIA '05 Proceedings of the Eighth International Conference on High-Performance Computing in Asia-Pacific Region
Path and cache conscious prefetching (PCCP)
The VLDB Journal — The International Journal on Very Large Data Bases
A buffer cache management scheme exploiting both temporal and spatial localities
ACM Transactions on Storage (TOS)
DULO: an effective buffer cache management scheme to exploit both temporal and spatial locality
FAST'05 Proceedings of the 4th conference on USENIX Conference on File and Storage Technologies - Volume 4
Towards higher disk head utilization: extracting free bandwidth from busy disk drives
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Latency management in storage systems
OSDI'00 Proceedings of the 4th conference on Symposium on Operating System Design & Implementation - Volume 4
Program-counter-based pattern classification in buffer caching
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Mining longest repeating subsequences to predict world wide web surfing
USITS'99 Proceedings of the 2nd conference on USENIX Symposium on Internet Technologies and Systems - Volume 2
High-performance caching with the Lava hit-server
ATEC '98 Proceedings of the annual conference on USENIX Annual Technical Conference
Dynamic buffer cache management scheme based on simple and aggressive prefetching
ALS'00 Proceedings of the 4th annual Linux Showcase & Conference - Volume 4
The Performance Impact of Kernel Prefetching on Buffer Cache Replacement Algorithms
IEEE Transactions on Computers
Finding total unimodularity in optimization problems solved by linear programs
ESA'06 Proceedings of the 14th conference on Annual European Symposium - Volume 14
RACE: A Robust Adaptive Caching Strategy for Buffer Cache
IEEE Transactions on Computers
Adaptive prefetching algorithm in disk controllers
Performance Evaluation
DiskSeen: exploiting disk layout and access history to enhance I/O prefetch
ATC'07 2007 USENIX Annual Technical Conference on Proceedings of the USENIX Annual Technical Conference
TaP: table-based prefetching for storage caches
FAST'08 Proceedings of the 6th USENIX Conference on File and Storage Technologies
Dma-based prefetching for i/o-intensive workloads on the cell architecture
Proceedings of the 5th conference on Computing frontiers
Algorithms and data structures for external memory
Foundations and Trends® in Theoretical Computer Science
Application controlled caching for web servers
Enterprise Information Systems
On the design of a new Linux readahead framework
ACM SIGOPS Operating Systems Review - Research and developments in the Linux kernel
/scratch as a cache: rethinking HPC center scratch storage
Proceedings of the 23rd international conference on Supercomputing
Proceedings of the 4th Annual International Conference on Wireless Internet
Integrated prefetching and caching in single and parallel disk systems
Information and Computation
Reducing seek overhead with application-directed prefetching
USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
Dual-layered file cache on cc-NUMA system
IPDPS'06 Proceedings of the 20th international conference on Parallel and distributed processing
Management of Multilevel, Multiclient Cache Hierarchies with Application Hints
ACM Transactions on Computer Systems (TOCS)
Storage-aware caching: revisiting caching for heterogeneous storage systems
FAST'02 Proceedings of the 1st USENIX conference on File and storage technologies
Freeblock scheduling outside of disk firmware
FAST'02 Proceedings of the 1st USENIX conference on File and storage technologies
Lifetime and QoS-aware energy-saving buffering schemes
Journal of Systems and Software
StorkCloud: data transfer scheduling and optimization as a service
Proceedings of the 4th ACM workshop on Scientific cloud computing
A Prefetching Scheme Exploiting both Data Layout and Access History on Disk
ACM Transactions on Storage (TOS)
Enhancing both fairness and performance using rate-aware dynamic storage cache partitioning
DISCS-2013 Proceedings of the 2013 International Workshop on Data-Intensive Scalable Computing Systems
Network-aware data caching and prefetching for cloud-hosted metadata retrieval
NDM '13 Proceedings of the Third International Workshop on Network-Aware Data Management
Hi-index | 0.01 |
As the performance gap between disks and micropocessors continues to increase, effective utilization of the file cache becomes increasingly immportant. Application-controlled file caching and prefetching can apply application-specific knowledge to improve file cache management. However, supporting application-controlled file caching and prefetching is nontrivial because caching and prefetching need to be integrated carefully, and the kernel needs to allocate cache blocks among processes appropriately. This article presents the design, implementation, and performance of a file system that integrates application-controlled caching, prefetching, and disk scheduling. We use a two-level cache management strategy. The kernel uses the LRU-SP (Least-Recently-Used with Swapping and Placeholders) policy to allocate blocks to processes, and each process integrates application-specific caching and prefetching based on the controlled-aggressive policy, an algorithm previously shown in a theoretical sense to be nearly optimal. Each process also improves its disk access latency by submittint its prefetches in batches so that the requests can be scheduled to optimize disk access performance. Our measurements show that this combination of techniques greatly improves the performance of the file system. We measured that the running time is reduced by 3% to 49% (average 26%) for single-process workloads and by 5% to 76% (average 32%) for multiprocess workloads.