Thesis Proposal
"Safe Parallelism for Servers"
Kiran Pamnany
Monday, December 7, 2009 at 2:00 P.M.
Lubrano Conference Room (CIT 4th floor)
Many applications take advantage of parallelism to increase performance. Servers are a particularly common case, as they must multiplex resources across many simultaneous users. Unfortunately, writing parallel applications is difficult and prone to a variety of subtle and non-deterministic bugs that can be difficult to reproduce.
We advocate an approach to developing parallel programs that is safe-by-default, where a static program analysis coupled with a runtime scheduler ensures that code is executed in parallel only when it can be determined that it is safe to do so. This approach allows the safe, concurrent execution of code that was developed with serial execution in mind, greatly reducing the need for the programmer to reason about concurrency. Here, a programmer's mistake results in reduced concurrency, rather than incorrect behavior.
We are building a system composed of elyze, a static program analyzer, and libmultivent, a runtime scheduler, that enable this safe-by-default approach to developing event-driven server applications in C. We will evaluate this system on two existing server applications: thttpd and tor.
Host: John Jannotti
| Page Owner: Webmaster | Last Modified: Mon Nov 9 14:24:27 2009 |