Transparently accelerating IO-intensive applications

Date

2022-12-06

Authors

Stamler, Timothy P.

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

As IO bandwidth continues to grow, processor speeds have stagnated. As such, the need to maximize the utility of our CPU cycles for IO-intensive applications is constantly growing. In my dissertation, I investigate processing bottlenecks for IO-intensive applications. I find that small and large IO cause different bottlenecks. Small IO, often caused by remote procedure calls (RPCs), cause IO stack bottlenecks. Large IO, caused by serving content such as web pages, audio, and video, causes bottlenecks due to overhead in IO buffer copying. I aim to accelerate both types of IO request without modification to the application, allowing for easier development and faster deployment. To mitigate these bottlenecks, I propose that IO-intensive applications can be accelerated in two ways, transparently to these applications: 1. by redesigning IO stacks to serve small IO with lower processing overhead via a fast-path that processes common cases of small IO, and 2. by eliminating unnecessary data copies of large IO by interposing on IO buffer copies, tracking modifications, and removing unnecessary copies.

Description

LCSH Subject Headings

Citation