Making Programs Faster

(Benchmarking, Profiling, and Performance Tuning)

Length: 3 hours

Prerequisites: Students should have at least six months experience programming in Perl.


Almost every application must be made to run faster; some sooner, some later. Performance tuning of applications has long been a dark art, understood by few and riddled with terrible pitfalls. Stories abound of optimization projects that took weeks but yielded a pathetic 2% decrease in total run time. Don't let this happen to you. The class will begin with a brief introduction to the basic concepts of performance tuning. We'll then take an extensive look at modules for benchmarking and profiling and see several common blunders that even experts commit when benchmarking. We'll finish with a discussion of a few of the most important optimizations. Throughout, the class will emphasize both high- and low-level approaches to performance tuning: when to tune and when to try something different; if tuning is necessary, how to focus your efforts where they will do the most good. We'll learn how to rationally evaluate programming situations and when to try alternative approaches.



Sample slides coming soon. Watch this space.

Return to: Universe of Discourse main page | Perl Paraphernalia | Classes and Talks