Software Engineering guest lecturer – Adrian Nistor

When

February 24, 2016    
1:00 pm - 2:00 pm

Where

3043 ECpE Building Addition
Coover Hall, Ames, Iowa, 50011

Adrian Nistor Assistant Professor Schmid College of Science and Technology Chapman University
Adrian Nistor
Assistant Professor
Schmid College of Science and Technology
Chapman University

Title: Detecting and Fixing Performance Bugs using Execution and Code Patterns

Abstract: Software bugs and ineffective testing cost the US economy tens of billions of dollars each year.  Performance bugs are programming mistakes that slow down program execution. Performance bugs affect the user-perceived software quality, degrade application responsiveness, and lower system throughput.  In addition to impacting everyday software usage, performance bugs have also created high profile incidents, e.g., brought down the Wikipedia and Facebook servers.

In this talk I will present my recent work on understanding, detecting, and fixing performance bugs.  I will first discuss Caramel, a static analysis technique that detects and fixes performance bugs that have non-intrusive fixes.  I will then discuss Toddler, a dynamic analysis technique that detects a different class of performance bugs than Caramel.  The idea in Caramel and Toddler is to identify code and execution patterns that are indicative of common programming mistakes affecting performance.  I will also briefly present several other of my projects on performance, concurrency, and mobile bugs.  Caramel and Toddler found over 190 new performance bugs in widely used Java (Ant, Lucene, Google Core Libraries, Groovy, Tomcat, etc) and C/C++ applications (GCC, Google Chrome, Mozilla, MySQL).  140 of these bugs have already been fixed by developers based on our reports.

Bio: Adrian Nistor got his Ph.D. in 2014 from the Computer Science Department at the University of Illinois at Urbana-Champaign. Adrian's research interests are in software engineering, with a focus on detecting, repairing, and preventing bugs in real-world applications.  His projects investigate performance, concurrency, and mobile bugs.

Adrian's Caramel paper won an ACM SIGSOFT Distinguished Paper award at ICSE 2015.  One of the largest telecommunications companies in the world is exploring a technology transfer for Caramel.  Adrian received an NSF SHF:Small grant (sole PI, 2015-2018) to investigate performance bugs that have non-intrusive fixes.  Adrian is a committer to Apache Collections.

Loading...