ETICA: Efficient Two-Level I/O Caching Architecture for Virtualized Platforms

by   Saba Ahmadian, et al.

In this paper, we propose an Efficient Two-Level I/O Caching Architecture (ETICA) for virtualized platforms that can significantly improve I/O latency, endurance, and cost (in terms of cache size) while preserving the reliability of write-pending data blocks. As opposed to previous one-level I/O caching schemes in virtualized platforms, our proposed architecture 1) provides two levels of cache by employing both Dynamic Random-Access Memory (DRAM) and SSD in the I/O caching layer of virtualized platforms and 2) effectively partitions the cache space between running VMs to achieve maximum performance and minimum cache size. To manage the two-level cache, unlike the previous reuse distance calculation schemes such as Useful Reuse Distance (URD), which only consider the request type and neglect the impact of cache write policy, we propose a new metric, Policy Optimized reuse Distance (POD). The key idea of POD is to effectively calculate the reuse distance and estimate the amount of two-level DRAM+SSD cache space to allocate by considering both 1) the request type and 2) the cache write policy. Doing so results in enhanced performance and reduced cache size due to the allocation of cache blocks only for the requests that would be served by the I/O cache. ETICA maintains the reliability of write-pending data blocks and improves performance by 1) assigning an effective and fixed write policy at each level of the I/O cache hierarchy and 2) employing effective promotion and eviction methods between cache levels. Our extensive experiments conducted with a real implementation of the proposed two-level storage caching architecture show that ETICA provides 45 performance, compared to the state-of-the-art caching schemes in virtualized platforms, while improving both cache size and SSD endurance by 51.7 33.8


page 1

page 8

page 10

page 13

page 14


ECI-Cache: A High-Endurance and Cost-Efficient I/O Caching Scheme for Virtualized Platforms

In recent years, high interest in using Virtual Machines (VMs) in data c...

An Efficient Hybrid I/O Caching Architecture Using Heterogeneous SSDs

SSDs are emerging storage devices which unlike HDDs, do not have mechani...

Multilevel Bidirectional Cache Filter

Modern caches are often required to handle a massive amount of data, whi...

LBICA: A Load Balancer for I/O Cache Architectures

In recent years, enterprise Solid-State Drives (SSDs) are used in the ca...

A Hybrid Cache Architecture for Meeting Per-Tenant Performance Goals in a Private Cloud

The in-memory cache system is an important component in a cloud for the ...

Addressing Variability in Reuse Prediction for Last-Level Caches

Last-Level Cache (LLC) represents the bulk of a modern CPU processor's t...

Intra-process Caching and Reuse of Threads

Creating and destroying threads on modern Linux systems incurs high late...

Please sign up or login with your details

Forgot password? Click here to reset