3rd CINI Summer School on
High Performance Computing and Emerging Technologies
June 18th 2025
Writing, Benchmarking, and Reproducibility
of HPC Research Papers
Daniele De Sensi, Sapienza University of Rome
3rd CINI Summer School on
High Performance Computing and Emerging Technologies
June 18th 2025
Writing, Benchmarking, and Reproducibility
of HPC Research Papers
Daniele De Sensi, Sapienza University of Rome
a.k.a.: Research Horror Stories
3rd CINI Summer School on
High Performance Computing and Emerging Technologies
June 18th 2025
Writing, Benchmarking, and Reproducibility
of HPC Research Papers
Daniele De Sensi, Sapienza University of Rome
Research
4
Review the
literature
Identify a
research problem
Design a solution to that problem
Implement and validate the solution
Write down the paper
(Bad) Research
5
Design a solution
Implement and validate the solution
Write down the paper
(Bad) Research
6
Design a solution
Implement and validate the solution
Write down the paper
The killer reviewer
Spoiler: In this talk, the reviewer is not the monster – we are.
(Bad) Writing
7
90% effort
10% (rushed)
effort
The killer
(and busy) reviewer
Unclear motivation/solution/results/etc…
Academia Love Story
8
Academia Love Story
9
When and Where to Publish
10
Venue
vs.
3rd CINI Summer School on
High Performance Computing and Emerging Technologies
June 18th 2025
Writing, Benchmarking, and Reproducibility
of HPC Research Papers
Daniele De Sensi, Sapienza University of Rome
Some common Benchmarking Mistakes Monsters
12
References:
The cherry-picker
The straggler
The nondeterministic monster
e.g., if existing benchmark suites are used, all benchmarks should be run. If not, a reason should be presented
Computation might finish at different times on different nodes, report runtimes of each node (ideally), or the maximum across the nodes
Timings are non-deterministic, report timings across multiple runs (ideally show the distribution) and/or average plus confidence intervals
13
a.k.a. how to have nice/informative/useful plots
Scary Plotter
and the Dark Arts of Data Visualization
Choose the right tool/plot
14
Don’t use spreadsheets and their plotting tools (ok for quick analysis/debugging, but plots look bad).
Some suggestions:
Choose the most appropriate plot type:
https://github.com/Financial-Times/chart-doctor/tree/main/visual-vocabulary
How to report data distribution
15
“Scientific Benchmarking of Parallel Computing Systems” – R. Belli, T. Hoefler
How to report data distribution: beware of bar plots
16
“Friends Don't Let Friends Make Bad Graphs” (https://github.com/cxli233/FriendsDontLetFriends)
Tip #1: Report Bounds
17
Whenever possible, report the theoretical upper/lower bound, to show how far your algorithm/application/system is from the ideal performance
“An In-Depth Analysis of the Slingshot Interconnect” – D. De Sensi et al.
18
Tip #2: Exploit whitespace to improve readability
“Swing: Short-cutting Rings for Higher Bandwidth Allreduce” – D. De Sensi et al.
19
“Swing: Short-cutting Rings for Higher Bandwidth Allreduce” – D. De Sensi et al.
Tip #2: Exploit whitespace to improve readability
20
“Swing: Short-cutting Rings for Higher Bandwidth Allreduce” – D. De Sensi et al.
Tip #2: Exploit whitespace to improve readability
21
“Swing: Short-cutting Rings for Higher Bandwidth Allreduce” – D. De Sensi et al.
Tip #2: Exploit whitespace to improve readability
22
Tip #3: Stress important points
“Software Resource Disaggregation for HPC with Serverless Computing” - M. Copik et al.
23
Tip #4: Use labels to provide additional info
References
24
3rd CINI Summer School on
High Performance Computing and Emerging Technologies
June 18th 2025
Writing, Benchmarking, and Reproducibility
of HPC Research Papers
Daniele De Sensi, Sapienza University of Rome
Reproducibility Crisis
26
https://www.nature.com/articles/533452a
Reproducibility Crisis
27
https://www.nature.com/articles/533452a
Artifacts
28
Source code:
Document the experimental setup:
Artifact example: https://zenodo.org/records/6633941
SC artifact rules: https://sc24.supercomputing.org/program/papers/reproducibility-appendices-badges/
ICPP artifact rules: https://icpp2024.org/index.php?option=com_content&view=article&id=4&Itemid=108
HPCA artifact rules: https://www.hpca-conf.org/2024/submit/artifacts.php
Functional reproducibility vs. Performance reproducibility
29
Functional reproducibility for parallell code
30
Possible solution. Provide two different artifacts:
Tip: If a large computing cluster is needed, also provide an estimation of the required compute hours
https://zenodo.org/records/6633941
https://dl.acm.org/doi/10.5555/3571885.3571899
Functional reproducibility vs. Performance reproducibility
31
Conclusions
32
Conclusions
33
Don’t be a monster
Questions?
34
35