Application-Tailored I/O with Streamline

  • Authors:
  • Willem de Bruijn;Herbert Bos;Henri Bal

  • Affiliations:
  • Vrije Universiteit Amsterdam;Vrije Universiteit Amsterdam;Vrije Universiteit Amsterdam

  • Venue:
  • ACM Transactions on Computer Systems (TOCS)
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Streamline is a stream-based OS communication subsystem that spans from peripheral hardware to userspace processes. It improves performance of I/O-bound applications (such as webservers and streaming media applications) by constructing tailor-made I/O paths through the operating system for each application at runtime. Path optimization removes unnecessary copying, context switching and cache replacement and integrates specialized hardware. Streamline automates optimization and only presents users a clear, concise job control language based on Unix pipelines. For backward compatibility Streamline also presents well known files, pipes and sockets abstractions. Observed throughput improvement over Linux 2.6.24 for networking applications is up to 30-fold, but two-fold is more typical.