log in  |  register  |  feedback?  |  help  |  web accessibility
Logo
Good Enough Dependability: A New Paradigm For Dependable Systems Design
Wednesday, February 18, 2015, 1:30-2:30 pm Calendar
  • You are subscribed to this talk through .
  • You are watching this talk through .
  • You are subscribed to this talk. (unsubscribe, watch)
  • You are watching this talk. (unwatch, subscribe)
  • You are not subscribed to this talk. (watch, subscribe)
Abstract

Good Enough Dependability: A New Paradigm For Dependable Systems Design

Commodity software is designed with the assumption that the hardware is  fault-free, and hence software hardly ever needs to deal with hardware errors. However, this assumption is increasingly difficult to satisfy as CMOS devices scale to smaller and smaller sizes, and as manufacturing variations increase. In addition, traditional solutions such as guard-banding and dual modular redundancy (DMR) are challenging to apply in commodity systems due to stringent power constraints. Therefore, there is a compelling need to develop low overhead software approaches for protecting programs from hardware errors.

In this talk, I will describe our approach to build software systems that are resilient to hardware faults. We call this approach “good enough dependability”, as it leverages the properties of the application to provide targeted protection for the most important errors. First, I will present a compiler-based approach to identify critical data in soft-computing applications, or applications that have inherent resilience to many errors. We call the errors that cause significant deviation from the correct output of the application as Egregious Data Corruptions (EDCs), and provide targeted protection for such errors. I will then discuss how we extend this approach to Silent Data Corruptions (SDCs) in general-purpose applications, which are not inherently error resilient. Finally, I will present other work we have done in applying the good enough dependability paradigm to (1) mitigate software bugs in modern javascript-based web applications, and (2) smart gird security.

This is joint work with my graduate students, colleagues at UBC, and industry collaborators.

Bio

Bio: Karthik Pattabiraman received his M.S and PhD. degrees from the University of Illinois at Urbana-Champaign (UIUC) in 2004 and 2009 respectively. After a post-doctoral stint at Microsoft Research (Redmond), Karthik joined the University of British Columbia (UBC) as an assistant professor of electrical and computer engineering in 2010. Karthik's research interests are in building reliable and secure systems through compiler and architectural techniques, and in software engineering for modern web applications. Karthik has won a best student paper award at the IEEE International Conference on Dependable Systems and Networks (DSN), 2008, a best paper runner up award at the IEEE International Conference on Software Testing (ICST), 2013 and a Distinguished paper award at the IEEE/ACM International Conference on Software Engineering (ICSE), 2014.  Karthik was the general chair for the IEEE Pacific Rim International Symposium on Dependable Computing (PRDC), 2013, and has served on the program committees of conferences such as DSN and ISSRE. Find out more about him at: http://blogs.ubc.ca/karthik/

This talk is organized by Aseem Rastogi