Kahibaro
Discord Login Register

Performance analysis and optimization report

Purpose of the Performance Analysis and Optimization Report

For the final project, you are not only running an HPC application—you are also expected to analyze its performance and document how you improved it. The performance analysis and optimization report is where you:

Think of it as a mini research paper on your code’s performance, not just a log of what you tried.

Expected Structure of the Report

Use a clear, logical structure. A common, acceptable outline is:

  1. Abstract
  2. Introduction and Goals
  3. Experimental Setup
  4. Baseline Performance
  5. Performance Analysis
  6. Optimization Strategies
  7. Results and Comparisons
  8. Discussion and Lessons Learned
  9. Conclusions and Future Work
  10. Reproducibility Appendix (commands, scripts, module lists)

Below is guidance on what to include in each section.

Abstract

A short (5–10 sentences) summary:

Write the abstract last, when you know your final results.

Introduction and Goals

Clarify what you are trying to achieve from a performance standpoint, not just a scientific one.

Include:

Make the goals concrete and, where possible, quantifiable (e.g., “aim to double performance on 16 cores versus the baseline version”).

Experimental Setup

The point of this section is reproducibility and context. You are answering: “On what system, with what configuration, did these numbers come from?”

Include:

Prefer concrete detail over vague descriptions. Example:

Baseline Performance

Define a clear baseline version of your code. This is your reference point for all optimizations.

Explain:

Present at least:

Tables or simple plots are appropriate. For example:

Be clear about units (seconds vs milliseconds) and what is included (e.g., “reported times exclude file I/O”).

Performance Analysis

Here you dig into why the baseline performs as it does. You will use tools and metrics introduced earlier in the course, but this section focuses on:

Typical subsections:

Timing and Scaling Metrics

Include key high-level metrics such as:

Show and comment on:

Profiling and Hotspots

Summarize what your profiling tools indicated:

Do not reproduce entire profiler outputs—pick the most relevant numbers, tables, or plots.

Parallel Overheads and Bottlenecks

Describe any performance issues you discovered, for example:

Support claims with evidence such as:

The goal is to identify a small number of primary bottlenecks to target with optimization.

Optimization Strategies

Explain the changes you made to improve performance. For each optimization, describe:

  1. Motivation
    • Which bottleneck it targets.
    • Why you expected it to help.
  2. Implementation
    • A brief technical description of the change.
    • Code snippets or pseudocode where it clarifies things.
    • Any modifications to algorithms, data structures, or parallelization strategy.
  3. Potential trade-offs
    • Increased code complexity.
    • Reduced generality or flexibility.
    • Changes in memory usage.
    • Possible impact on numerical behavior (if applicable).

Organize this section as a sequence of clearly labeled optimizations, e.g.:

Do not just list them—connect each optimization to the earlier analysis, showing a chain of reasoning from measurements → hypothesis → change.

Results and Comparisons

Now you quantify the impact of your optimizations. This section should be data-rich but focused.

For each important configuration, present:

Typical presentations:

For each figure or table, always add a short interpretation, e.g.:

Emphasize trends, not just raw numbers.

Discussion and Lessons Learned

Reflect on what the results tell you about your code and the system.

Discuss:

This section shows critical thinking: you are not just reporting success, you are analyzing outcomes and trade-offs.

Conclusions and Future Work

Provide a concise summary:

Keep this section short but specific.

Reproducibility Appendix

Add an appendix with everything needed to reproduce your main results. At minimum include:

This section is crucial for credibility and is often what separates a good report from an excellent one.

Practical Tips for Writing the Report

Evaluation Criteria

Your performance analysis and optimization report will typically be assessed on:

Use this chapter as a checklist while you work on your final project and as you write up your findings.

Views: 9

Comments

Please login to add a comment.

Don't have an account? Register now!