System Seminars - Title : AC: Composable Asynchronous IO for Native Languages

Thumbnail

Event details

Date 04.05.2012
Hour 14:0015:30
Speaker Tim Harris, Microsoft Research
Location
Category Conferences - Seminars
Abstract:
This talk introduces AC, a set of language constructs for composable asynchronous IO in native languages such as C/C++. Unlike traditional synchronous IO interfaces, AC lets a thread issue multiple IO requests so that they can be serviced concurrently, and so that long-latency operations can be overlapped with computation. Unlike traditional asynchronous IO interfaces, AC retains a sequential style of programming without requiring code to use multiple threads, and without requiring code to be “stack-ripped” into chains of callbacks. AC provides an async statement to identify opportunities for IO operations to be issued concurrently, a do..finish block that waits until any enclosed async work is complete, and a cancel statement that requests cancellation of unfinished IO within an enclosing do..finish. We give an operational semantics for a core language. We describe and evaluate implementations that are integrated with message passing on the Barrelfish research OS, and integrated with asynchronous file and network IO on Microsoft Windows. We show that AC offers comparable performance to existing C/C++ interfaces for asynchronous IO, while providing a simpler programming model.

Biography:
Tim Harris is a researcher at MSR Cambridge where he works on abstractions for using multi-core computers. He is currently working on the Barrelfish operating system, and on architecture support for programming language runtime systems. His other recent work has focused on the implementation of software transactional memory for multi-core computers, and the design of programming language features based on it. He is a co-author of the Morgan Claypool book "Transactional Memory".

Tim has a BA and PhD in computer science from Cambridge University Computer Laboratory. He was on the faculty at the Computer Laboratory from 2000-2004 where he led the department's research on concurrent data structures and contributed to the Xen virtual machine monitor project. He joined Microsoft Research in 2004.

Practical information

  • Informed public
  • Free

Contact

  • Simone Muller

Tags

suritest

Event broadcasted in

Share