CS 584 Lecture 21 Project Proposal Due Friday

  • Slides: 14
Download presentation
CS 584 Lecture 21 • Project Proposal – Due Friday! – In my box

CS 584 Lecture 21 • Project Proposal – Due Friday! – In my box in the CS office • No class on Friday • Paper presentation on Wednesday – Tom Abbott

Performance Analysis Remember: In measuring, we change what we are measuring. • 3 Basic

Performance Analysis Remember: In measuring, we change what we are measuring. • 3 Basic Steps – Data Collection – Data Transformation – Data Visualization • Many tools are available, but consider – Accuracy, Simplicity, Flexibility – Intrusiveness, and Abstraction

Data Collection • The process by which data about the performance of a program

Data Collection • The process by which data about the performance of a program are gathered. • 3 Techniques – Profiles – Counters – Event Traces

Profiles • Shows time spent in portions of the code. • Advantages – Profiles

Profiles • Shows time spent in portions of the code. • Advantages – Profiles can be obtained automatically – Should be the first technique used to gather and analyze performance data • Disadvantages – Don't generally consider temporal aspects of a parallel program.

Counters • Storage location that counts events – Number of sends/receives – Number of

Counters • Storage location that counts events – Number of sends/receives – Number of procedure calls, etc. • Can be compiler generated as in a profile • Also includes interval timers – Time spent in a piece of code – Idle time, function time, etc.

Traces • Low level approach to data collection • A log file is generated

Traces • Low level approach to data collection • A log file is generated which records the event and a time stamp, etc. Trace Record 11 0 6 0 11 0 4 0 11 0 1553 2237 2500 3186 2 2 2 0 1 0 0 3 0 1078 1341 2 1341 8 12 Description Timer Data Receive Timer Data Send Timer Data

Traces • Advantages – Support a broad study of program behavior – Can be

Traces • Advantages – Support a broad study of program behavior – Can be post-processed to obtained profiles, etc. – Contains other data (message size, etc. ) • Disadvantages – Huge log files (eg. 20 bytes per event) – Perturbs performance – Sophisticated analysis is required

Data Transformation & Visualization • Profiles, counts, and trace data are difficult to directly

Data Transformation & Visualization • Profiles, counts, and trace data are difficult to directly interpret. • Goal: Present the data to the programmer in such a way that interpretation is simple. – Histogram – Gantt chart – Space-time diagram

Histogram

Histogram

Gantt Chart

Gantt Chart

Space-Time Diagram

Space-Time Diagram

Tools • XPVM – Instrumented PVM code – Space-time chart based • Upshot –

Tools • XPVM – Instrumented PVM code – Space-time chart based • Upshot – Instrumented MPI code – Gantt chart based I couldn’t get this to work on our machines