Rubric

Final Project Submission & Presentation
Final Project Submission & Presentation
Criteria Ratings Pts
Source code
Prepare all the source code in C, or Fortran, or Python calling C/Fortran for compute-intensive computations. All the code should be in a Git repository.
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Test suite
Test the implementation with three test cases using a unit testing framework, e.g. Google Test, pFUnit.
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Build system
Prepare a building system either with GNU Autotools (not simple Makefile) or CMake to build the application and test suites.
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Visualization
Visualize the evolution of the system using ParaView or Visit. For this, you can write the position of the living cells to a file in VTK format (point data) and then use Paraview or Visit to visualize it.
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Use of HPC libraries/data formats
Consider the usage of HPC libraries/data formats to improve the performance or implement additional features. Which HPC libraries can be used (e.g. BLAS, HDF5, VTK, etc)?
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Performance analysis
Analyze the performance of your code (execution time, cache usage, ...) and hotspots (functions that take most of the time) by varying the size of the initial population. For this, you should use the profiler in gperftools and the Linux perf tools (measuring hardware counters).
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Discussion
Analyze the advantage with respect to dense representation of the game in terms of memory and computation.
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Documentation
At the root level of the repository, include a README.md file that outlines how to install the dependencies; How to build your code; How to run the test suite, what do they test for, and why; How to run the code, and adjust the initial conditions; How to visualize the output data; How to reproduce the experiments you presented in the presentation.
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--
Presentation
A 20 Minute Presentation (15 minutes for presentation and 5minutes for questions) with presentation slides covering all aspects of the tasks. The slides are uploaded to Canvas.
threshold: pts
1 Pts Full poäng
0 Pts Inga poäng
pts
1 pts
--