CS Faculty Candidate Seminar - Charles Killian

*********************************
There is now a CONTENT FREEZE for Mercury while we switch to a new platform. It began on Friday, March 10 at 6pm and will end on Wednesday, March 15 at noon. No new content can be created during this time, but all material in the system as of the beginning of the freeze will be migrated to the new platform, including users and groups. Functionally the new site is identical to the old one. webteam@gatech.edu
*********************************

Event Details
  • Date/Time:
    • Thursday March 13, 2008 - Friday March 14, 2008
      11:00 am - 11:59 am
  • Location: KACB 1116E
  • Phone:
  • URL:
  • Email: shanita@cc.gatech.edu
  • Fee(s):
    N/A
  • Extras:
Contact
Shanita Williams
Summaries

Summary Sentence: No summary sentence submitted.

Full Summary: No summary paragraph submitted.

Charles Killian
University of California, San Diego

"Mace: Systems and Language Support for Building Correct, High-Performance Networked Services"

Abstract:  Building distributed systems is particularly difficult because of the asynchronous, heterogeneous, and failure-prone environment where these systems must run.  This asynchrony makes verifying the correctness of systems implementations even more challenging.  Tools for building distributed systems must strike a compromise between reducing programmer effort and increasing system efficiency.  Mace is a C++ language extension, compiler, runtime, and toolset, that translates a concise but expressive distributed system specification into a C++ implementation. Mace exploits a natural decomposition of distributed systems into a layered, event-driven state machine.  A key design principle of Mace is to separate each service algorithm from the implementation mechanics (serialization, dispatch, synchronization, etc.), debugging code (logging and property testing), and its utility services (lower-level services providing a specified interface).  Our experience indicates that precisely because Mace imposes limits on the design structure of distributed systems, it supports the implementation of a wide variety of high-level supporting tools, including model checking, simulation, live debugging, and visualization.  Mace is fully operational, has been in development for four years, and has been used to build a wide variety of Internet-ready distributed systems.  This talk will describe both the Mace programming language design and MaceMC, the first model checker that can find liveness violations in unmodified systems implementations.

 

Bio: Charles Killian is a Ph.D. Candidate in the Department of Computer Science and Engineering at the University of California, San Diego under the supervision of Amin Vahdat.  Before transferring to UCSD in August 2004, he completed his Masters in Computer Science from Duke University with Amin Vahdat.  His research is at the boundary of systems and programming languages, focusing on ways to use compilers and language constructs to dually bridge the gap between performance and programming expression, and to provide high-level tools for debugging, analysis, and understanding.  Over the past 4 years he has implemented the Mace programming language and toolkit, built numerous distributed systems, and designed MaceMC, the first model checker capable of finding liveness violations in unmodified systems code.  Charles will graduate in June, 2008.

 

Additional Information

In Campus Calendar
No
Groups

College of Computing

Invited Audience
No audiences were selected.
Categories
No categories were selected.
Keywords
No keywords were submitted.
Status
  • Created By: Louise Russo
  • Workflow Status: Published
  • Created On: Feb 11, 2010 - 10:57am
  • Last Updated: Oct 7, 2016 - 9:50pm