Student's Error-Detection System Takes Home the William C. Carter Award

5/30/2008 5:46:00 AM ITI Staff

It took only five minutes for Karthik Pattabiraman's new error-detection system to locate a potentially catastrophic error in an aircraft collision avoidance program. But when he tried to find the same error using a standard fault-injection system, it didn't show up at all.

Written by ITI Staff

Karthik Pattabiraman
Karthik Pattabiraman
Karthik Pattabiraman

It took only five minutes for Karthik Pattabiraman's new error-detection system to locate a potentially catastrophic error in an aircraft collision avoidance program. But when he tried to find the same error using a standard fault-injection system, it didn't show up at all.

Pattabiraman's system is called SymPLIFIED, and it has earned him the 2008 William C. Carter Award, a prestigious award given each year to an individual who has "made a significant contribution to the field of dependable computing through his or her graduate dissertation research."

According to Pattabiraman, SymPLIFIED is a general-purpose framework that can pinpoint the failure of detectors, which are built into programs to find errors. What's more, he says that his system examines entire classes of errors, not just single-point errors, as is done with traditional fault-injection methods. With traditional methods, you inject faults and trace their trajectory through a system. But there's always the lingering question: What if you do not inject the specific faults that could reveal problems in your program?

Pattabiraman uses the analogy of shooting at a target in a dark room. Fault injection is like bombarding the room with bullets in the hopes that one of them will strike the target. In contrast, SymPLIFIED is like casting a wide beam across the dark room, revealing a whole class of targets: an entire class of errors.

But SymPLIFIED does not just identify what kind of errors the detectors in a program failed to detect; it also reveals why they failed to detect the errors, he says.

SymPLIFIED was run on the Trusted ILLIAC cluster, a cutting-edge computing platform that is a joint project of the Coordinated Science Laboratory and the Information Trust Institute. SymPLIFIED was also tested on the aircraft avoidance system, which tells a pilot whether to ascend, descend, or maintain altitude when approaching another aircraft. This test demonstrated the potential for the SymPLIFIED system to be used in critical industries. Pattabiraman envisions that such a system could be used in medical, aerospace, chemical, or nuclear industries, where single errors might have catastrophic consequences.

Pattabiraman grew up in India and received his first exposure to computers in the third grade when he saw a BBC Micro computer. In high school, he joined the computer club and developed his own program, similar to Paintbrush; from that point on, he was hooked on high-tech.

After graduating from the University of Madras with a bachelor's degree in information technology, Pattabiraman came to the University of Illinois, where he completed his master's degree in computer science in 2004. He is expected to complete his PhD in computer science by August of 2008.

His SymPLIFIED tool uses model checking, a fairly standard technique. What makes his system unique is that he is using model checking to analyze the effect of hardware errors on software. Previously, model checking has been used to look at the effects of hardware errors on hardware or software errors on software.

In the next stage of the work, Pattabiraman hopes to scale up his system for use on larger programs. He would also like the system to be able to do more than expose detector failures; he would like it to be able to patch errors automatically.

Working with Pattabiraman on this project were three faculty members: Nithin Nakka, Zbigniew Kalbarczyk, and Pattabiramin's advisor, CSL Director and ITI Chief Scientist Ravi Iyer. In fact, Iyer was the one who first inspired him to tackle this work for his dissertation.

"Initially, I thought I don't want to do this mathematical-intensive work," Pattabiraman says. "I was more of a hands-on, systems-building kind of a person, rather than one to work on theoretical abstractions. But I really enjoyed this.

"Besides," he adds, "although this system has theoretical abstraction at its core, it is a working system."

The William C. Carter Award is sponsored by the IEEE Technical Committee on Fault-Tolerant Computing (TC-FTC) and the IFIP Working Group on Dependable Computing and Fault Tolerance (WG 10.4), and has been presented annually since 1997. The award honors the late William C. Carter, a key figure in the formation and development of the field of dependable computing. Pattabiraman will receive the award in June at the 38th Annual IEEE/IFIP International Conference on Dependable Systems and Networks in Anchorage, Alaska.

Writers: Doug Peterson with Jenny Applequist. Contact: Jenny Applequist, Information Trust Institute, 217/244-8920, applequi AT iti.uiuc.edu.

May 30, 2008


Share this story

This story was published May 30, 2008.