9/22/2005 3:30pm-4:30pm ECCR 265
|
Supporting the Software Revolution
Department of Computer Science
Many modern commercial and open source applications include tens of millions of
lines of code each. These large applications are (i) difficult to write,
(ii) hard to understand and evolve, and (iii) resource intensive. My research
addresses these three challenges by (i) rethinking how and what we teach
computer scientists, (ii) building tools that support software engineering
tasks, and (iii) developing automatic and semi-automatic techniques for
improving the resource usage of applications. In my talk I'll focus on
Vertical Profiling.
Vertical profiling is a tool-supported methodology for understanding the
performance of modern applications. Modern applications, such as ones written
in Java, run on top of many components, such as dynamic compilers, garbage
collectors, and middleware. These components interact with each other and with
the application. Thus, one cannot understand the performance of such
applications by looking at only the application or hardware-level profiles.
Instead, vertical profiling collects traces from all the components (including
the application and hardware) and uses statistical and visualization techniques
on these traces to explain performance phenomenon. This talk will demonstrate
vertical profiling by applying it to several previously unexplained performance
phenomenon in popular Java applications.
|
The Department holds colloquia throughout the Fall and Spring semesters. These
colloquia, open to the public, are typically held on Thursday afternoons, but
sometimes occur at other times as well.
If you would like to receive email notification of upcoming colloquia,
subscribe to our
Colloquia Mailing List.
If you would like to schedule a colloquium, see
Colloquium Scheduling.
Sign language interpreters are available upon request. Please contact
Stephanie Morris at least five days prior to the colloquium.
|