How to write a report
For each assignment, your report should contain an analysis of your parallel solution for the given problem.
This is a list of questions that should help you to write a good report.
Note that this list is not meant to be exhaustive, but it provides a basic template for you to use when building your report. Note that the report should not exceed 5 pages (graphs and tables not counted). Brevity is appreciated, but do not omit the interesting details about your implementation and results.
- What was the problem to solve and which algorithm(s) you used?
- In case you changed the sequential program, what were the changes?
- What is the theoretical estimation of the performance of the parallel program? Note that the assignments might need different techniques to estimate the expected parallel performance.
- What are is the experimental set-up? Always create a complete experimental set-up, explain how you decided what measurements to take and why, and what is the relevance of each experiment or set of experiments.
- What was the procedure of taking measurements? Explain what you have measured, why, and how.
- What were the results of your measurements? Include both numbers and graphs. Execution times and speed-ups must be included in your report; however, do include (in separate tables and/or graphs) any additional relevant measurements that you've taken and analyzed.
- What do the numbers say about program performance? Explain all the results you include in the report; any unexplained graph and/or table are basically useless for the reader, and therefore will not be considered for grading your report.
- How do the results compare to the theoretical estimation? Focus on explaining the (eventual) gaps: why they appear and how can they be alleviated.
- Is there any slow-down? Why? Is there any superlinear speedup? Why? Is there a flattening of the speed-up curve? Why?
- In cases when reporting utilization is important/interesting (see GPUs, for example), what are the reasons for low utilization? Can utilization be improved? How?
- How does the performance scale in case there were more processors?
- What are the conclusions of your work? What is your experience with the particular language/programming model that the assignment targets? Any generic difficulties you have encountered? Any guidelines you've extracted from your work?
Practical Notes: Only reports in PDF format will be accepted. To create speedup graphs you can use any tool but keep the
axes scaled evenly. We recommend Gnuplot.
October 31, 2012:
The new assignments are available on the blackboard.
October 31, 2012:
The site for PPP has moved on the blackboard.