Transparently accelerating IO-intensive applications




Stamler, Timothy P.

Journal Title

Journal ISSN

Volume Title



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.


LCSH Subject Headings