Computer System Measurement And Performance Analysis

CS299r – Spring 2003

Topics Covered:

  1. Introduction
  2. Measurement – tools that people use to measure systems
  3. Benchmarks and workload characterization
  4. Statistical Techniques, statistical tools, tutorials
  5. Network simulation: ns, emulab, PlanetLab
  6. Queuing theory basics, specific subsystems, tools
   

Time and Location:

Tuesday: 10-11 AM, MD 123
Thrusday: 10-11 AM, MD 223

Students:

Sasha Fedorova (fedorova@eecs.harvard.edu)
Jonathan Ledlie (jonathan@eecs.harvard.edu)

 

Schedule and Syllabus

01/29 – 02/02

Reading:

Notes:

Introduction

Jon Bentley "The Back of the Envelope" (pdf)

Jon Bentley "The Envelope is Back" (pdf)

Christopher Small, Narendar Ghosh, Hany Saleeb, Margo Seltzer, and Keith A. Smith, “Does Systems Research Measure Up?”, Harvard University Computer Science Technical Report TR-16-97. Novermber, 1997. (Tues). (pdf)

 

02/03 – 02/09

Reading:

Notes:

Measurement Tools: I

Gene McDaniel, "METRIC: A Kernel Instrumentation System for Distributed Environments", Proc. 6'th SOSP, November, 1977, pp. 93-99. (Tues) (pdf) (review)

Karin Yaghmour and Michael Dagenais, "Measuring and Characterizing System Behavior Using Kernel-Level Event Logging", Proc. USENIX Annual Technical Conference, June, 2000, San Diego, CA pp. 13-26. (Tues) (pdf) (review)

Jacob Lorch and Alan Jay Smith, "The VTrace Tool: Building a System Tracer for Windows NT and Windows 2000", MSDN Magazine, October, 2000, pp. 86-102. (Thurs) (html)

Robert Hundt, "HP Caliper - An Architecture for Performance Analysis Tools", Proc. USENIX First Workshop on Industrial Experiences With System Software", (WIESS 2000), October 22, 2000, San Diego, CA., pp. 39-46. . (Thurs) (pdf)

02/10 – 02/16

Projects:

Measurement Tools: II

Use gprof to collect data using some CPU-intensive application.

Margo’s mini gprof project:

  1. Download Berkeley DB and compile with DIAGNOSTIC
  2. Create a RECNO DB
    1. Create one with shared environment
    2. Create another with DB-PRIVATE
  3. Create a DB that fits in cache
  4. Analyze performance with gprof

02/17 – 02/23

Reading:

Notes:

Benchmarks and Workload Characterization: I

Rafael Saavedra-Barrera and Alan Jay Smith, "Analysis of Benchmark Characteristics and Benchmark Performance Prediction'', December, 1992.  ACM TOCS, 14, 4, November, 1996, pp. 344-384. (Tues) (pdf)

W.W. Hsu, A.J. Smith and H.C. Young, “Characteristics of Production Database Workloads and the TPC Benchmarks”, IBM Systems Journal, Vol. 40, No.3, 2001 (Tues.) (pdf)

Windsor Hsu, Alan Jay Smith, and Honesty Young, "I/O Reference Behavior of Production Database Workloads and the TPC Benchmarks - An Analysis at the Logical Level", ACM Transactions on Database Systems, 26, 1. March, 2001, pp. 96-143. (CLASS CANCELLED - Jonathan at a conference) (pdf)

02/24 – 03/02

Projects:

Notes:

Benchmarks and Workload Characterization: II

Prepare a survey of the distributed systems benchmarks: focus on those that are used for high-end server performance and on those that can be used for P2P systems.  Note: Margo has new version of benchmarks.

Benchmarks to cover:

  • SPECCPU2000
  • SPECWEB99
  • SPECMAIL
  • SPECJAppServer
  • SPECJBB
  • TBD: P2P-related benchmarks

03/03 – 03/09

Reading:

Notes:

Statistical Techniques I

Vogels, W, “File System Usage In Windows NT 4.0”, Proceedings of the 17th ACM Symposium on Operating Systems Principles, Kiawah Island, SC, December 1999 (Tues.) (pdf)

Erik Cota-Robles, James P Held, "A Comparison of Windows Drive Model Latency Performance on Windows NT and Windows 98", OSDI'99, pp. 159-172. (Tues.) (pdf)

Catherine McGeoch, "Analyzing Algorithms by Simulation: Variance Reduction Techniques and Simulation Speedups", ACM Computing Surveys, 24, 2, June, 1992, pp. 195-212. (Thurs.)

Mark Friedman, "Optimizing the Performance of Wintel Applications", Proc. CMG '98, December, 1998, volume, pp. 245-259. (Thurs.) (pdf)

03/10 – 03/16

Projects:

Profiling Tools

Explore "Quantify" . (Tues.)

Explore "Purify" . (Thurs.)

03/17 – 03/23

Projects:

Notes (1, 2)

Reading:

Network Simulators

Learn how to use Emulab.



The Emulab paper

03/24 – 03/30

Spring Break!

03/31 – 04/06

No classes - all students are at FAST!

 

04/07 – 04/13

Reading:

Queuing Theory I – The Basics

Chapters 30, 31 from “The Art of Computer Systems Performance Analysis”  by Jain (Tues.)

Chapter 36 from “The Art of Computer Systems Performance Analysis”  by Jain (Thursday)

04/14 – 04/20

Reading:

Notes for Tuesday:
Notes for Thursday:

Queuing Theory II – Applied Queuing Theory

Alan Jay Smith, "Characterizing the Storage Process and Its Effect on the Update of Main Memory by Write Through", Journal of the Association for Computing Machinery, Vol 26, No. 1, January 1979, pp 6-27. (pdf) (Tues)

E. Borowsky, R. Golding, P. Jacobson, A. Merchant, L. Schreier, M. Spasojevic and J. Wilkes, "Capacity Planning with Phased Workloads", Proceedings of the First Workshop on Software and Performance (WOSP '98), pages 199-207, October 1998. (pdf) (Thurs.)

04/21 – 04/27

Reading:

Queuing Theory II – Applied Queuing Theory (cont.)

Lazowska, “Quantitative System Performance”, Chapters 5-8.

(Tues: 5,6) (Thurs: 7,8)

04/28 – 05/04

Reading:

Queuing Theory III – Tools

Lazowska, “Quantitative System Performance”, Chapters 10, 15, 16.

(Tues: 10,15) (Thurs: 16)

 

EVALUATION:

60%     At the end of each topic there will be a short, closed-book quiz on that topic's reading.
40 %    Final project of choice (will be presented to SYRAH/Vino Group).