The profiling is very Python specific. It may be good to allow instructors a choice of profiling tools, such as - [TAU](http://www.cs.uoregon.edu/research/tau/home.php), [example](https://www.cs.uoregon.edu/research/tau/docs/newguide/ch03s09.html) - [Extrae](https://tools.bsc.es/extrae), [example](https://doi.org/10.1016/j.procs.2017.05.203) Other interesting tools include - [HPCToolkit](http://www.hpctoolkit.org/) - [Scalasca](https://www.scalasca.org)