Computer Engineering Seminar

Practical Language and System Support for Reliable Concurrent Software

Michael BondAssistant ProfessorOhio State University

Commodity software systems must become more parallel in order to scale with increasingly parallel hardware, but developing parallel software is notoriously difficult. Programmers are basically stuck using shared memory and locks because advanced language and system support for concurrency is impractical for real-world use. For example, record & replay, strong memory models, and transactional memory provide substantial benefits — but no practical designs are known. This talk describes new analyses and systems we are developing that provide efficient language and system support for concurrency on commodity languages and systems. These new analyses and systems are based on a new framework for capturing conflicting accesses that avoids the high cost of existing software-based approaches. Our work aims to provide practical language and system support for the first time, and thus help general-purpose software scale successfully to future hardware systems.

Michael Bond is an assistant professor in Computer Science & Engineering at Ohio State University. He and his five PhD students are the Programming Languages and Software Systems (PLaSS) group. Mike completed his PhD and a postdoc at UT Austin, advised by Kathryn McKinley, and won the 2008 ACM SIGPLAN Outstanding Doctoral Dissertation award. He recently received an NSF CAREER Award.

Sponsored by