| Integrating Empirical Methods into Computer Science | |
|
Project Goals Required Skills Lab Repository Related Papers Collaborators Feedback |
||
Empirical Lab RepositoryTitle: Measuring Java's Method Call Overhead Author: Grant W. Braught, Dickinson College, braught@dickinson.edu Possible courses: Computer Organization and Architecture Empirical Concepts Used: average, percent Empirical Concepts Introduced: experiment design, isolation of variables Computer Science Concepts Used: control structures, method calling, static methods, class implementation, instance methods Summary: In this assignment, students measure the overhead associated with
making
static and instance method calls in Java. The main purpose of this assignment is to
provide
students with the opportunity to explicitly examine the trade offs involved in using
Structured
and Object Oriented programming techniques. In the context of a computer
organization and
architecture course this means that students see first-hand the impact of the method
calling
protocol on performance. Students are also exposed to a simple profiling tool and
techniques
for measuring the performance of their programs.
Variations: The materials provided are Java specific. However, the assignment idea should easily generalize to any language for which an adequate profiler is available.
|