Sciweavers

USENIX
2003

Multiprocessor Support for Event-Driven Programs

13 years 6 months ago
Multiprocessor Support for Event-Driven Programs
This paper presents a new asynchronous programming library (libasync-smp) that allows event-driven applications to take advantage of multiprocessors by running code for event handlers in parallel. To control the concurrency between events, the programmer can specify a color for each event: events with the same color (the default case) are handled serially; events with different colors can be handled in parallel. The programmer can incrementally expose parallelism in existing event-driven applications by assigning different colors to computationally-intensive events that do not share mutable state. An evaluation of libasync-smp demonstrates that applications achieve multiprocessor speedup with little programming effort. As an example, parallelizing the cryptography in the SFS file server required about 90 lines of changed code in two modules, out of a total of about 12,000 lines. Multiple clients were able to read large cached files from the libasync-smp SFS server running on a 4-CPU...
Nickolai Zeldovich, Alexander Yip, Frank Dabek, Ro
Added 01 Nov 2010
Updated 01 Nov 2010
Type Conference
Year 2003
Where USENIX
Authors Nickolai Zeldovich, Alexander Yip, Frank Dabek, Robert Morris, David Mazières, M. Frans Kaashoek
Comments (0)