Gerald Jay Sussman, May 25 and 26, 2010
Date | Title | Location |
Tue. May 25, 2010 at 5:00 pm | Why Programming is a Good Medium for Expressing Poorly Understood and Sloppily Formulated Ideas | MC 2066 |
Wed. May 26, 2010 at 5:00 pm | The Art of the Propagator | MC 5158 |
Date | Speaker | Title | Location |
Tue. June 22, 2010 at 4:30 pm | Prabhakar Ragde | Compiling To Combinators | MC 2066 |
Tue. July 6, 2010 at 4:30 pm | Nomair Naeem | Dataflow Analysis | MC 2054 |
Previous terms: F08 S08 W08 F07 W07 F06 S06 W06
Current term:
Date | Speaker | Title (click for abstract) | Location |
Tue. May 18, 2010 at 1:30 pm | Mirza Omer Beg | A Graph Theoretic Approach to Cache-Conscious Placement of Data for Direct Mapped Caches | DC 1331 |
Fri. May 21, 2010 at 1:30 pm | Jonathan Rodriguez | A Concurrent IFDS Dataflow Analysis Algorithm Using Actors | DC 2314 |
Tue. May 25, 2010 at 1:30 pm | Roy Krischer | Safe Asynchronous Exception Propagation | DC 2314 |
Thu. May 27, 2010 at 1:30 pm | Pavel Parízek | Verification of Java programs and components using Java Pathfinder | DC 1331 |
Thu. June 3, 2010 at 10:00 am | Peter F. Sweeney | The Poor State of Experimental Evaluation of Software and Systems in Computer Science | DC 1304 |
Thu. June 17, 2010 at 1:30 pm | Pavel Parízek | Java Pathfinder: General Overview and Current State of Affairs | DC 1331 |
All are welcome.
Talk announcements are also posted to a public mailing list.
To volunteer to give a talk, contact Ondřej Lhoták. Talks can range from informal to formal, and they can be about any of the following:
The purpose is for us all to see what people are interested in, and motivate discussions.
This talk examines general concepts related to asynchrony and how
asynchronous exception handling affects control flow.
It demonstrates how unrestricted asynchrony can be safely employed
under certain circumstances in order to reduce the delay between
delivery and propagation, and to allow for a more intuitive use of
asynchronous propagation control.
The necessary extension to the semantics of the language uC++ are
documented, as well the efforts required and obstacles encountered
when implementing this feature.
Verification of Java programs and components using Java Pathfinder
Pavel Parízek
May 27, 2010
Pavel Parizek is a new post-doctoral fellow at the School of Computer
Science, University of Waterloo. He is working with professor Ondrej
Lhotak. Pavel received his PhD degree at the Charles University in
Prague, Czech Republic, in 2008.
This talk presents an overview of his previous research. Topics will
include: 1) modular verification of software systems built from Java
components using Java Pathfinder (JPF) and behavior protocols, 2)
techniques for efficient detection of concurrency errors in Java
programs with JPF, and 3) model checking real-time Java programs with
thread scheduling and a model of time based on thread periods.
The Poor State of Experimental Evaluation of Software and Systems in Computer Science
Peter F. Sweeney
June 3, 2010
As hardware and software continues to evolve into increasingly complex
systems, our ability to understand their behavior and measure their
performance is increasingly difficult. Nevertheless, many areas of
computer science use experiments to identify performance bottlenecks
and to evaluate innovations. In the last few years, researchers have
identified some disturbing flaws in the way that experiments are
performed in computer science.
This talk presents two of these flaws. First, changing a seemingly innocuous aspect of an experimental setup can result in a systems researcher drawing wrong conclusions from an experiment. What appears to be an innocuous aspect in the experimental setup may in fact introduce a significant bias in an evaluation of native (C and C++) applications.
Second, performance analysts profile their programs to find methods that are worth optimizing: the "hot" methods; however, four commonly used Java profilers (xprof , hprof , jprofile, and yourkit) often disagree on the identity of the hot methods. This talk demonstrates that these profilers all violate a fundamental requirement for sampling based profilers: to be correct, a sampling-based profiler must collect samples randomly.
Unfortunately, the flaws discussed above are not the full extent of the problem. If computer science is to be taken seriously as a scientific discipline, we as a community need to do a better job designing experiments and evaluating their results.
Peter F. Sweeney is a Research Staff Member in the Program Technology
Department at the IBM T.J. Watson Research Center in Hawthorne, New
York. His research interests are performance analysis and tuning of
computer systems with a focus on automation. Peter received a Master
degree in Computer Science from Columbia University SEAS and he joined
IBM research in 1985. Peter is a senior member of ACM.
Java Pathfinder: General Overview and Current State of Affairs
Pavel Parízek
June 17, 2010
This talk will introduce Java Pathfinder, a platform for analysis and
verification of Java programs.
It will describe the tool both from the user and developer
perspective, covering especially the following topics:
1) Supported properties, algorithms, and optimizations of state space traversal;
2) Modular architecture of JPF core and basic principles of internal functioning;
3) Extension points and JPF API, configuration options;
4) Publicly available extensions (symbolic execution, GUI framework, RTSJ programs, and many others);
5) Development model, current projects, and selected applications.