DiODeProject/MuMoT

Reduce runtime of CI jobs?

Opened this issue · 0 comments

At present travis-ci.org jobs are taking ~50 mins and will likely be longer if/when PR #363 is merged:

  • Do all notebooks implicitly listed in Issue #325 need to be run?
  • Could CI runtimes be reduced by heavily refactoring the 'test' Notebooks and fleshing out the unit test suite? Expanding the (currently trivial) unit test suite (#339) would bring the benefit of checks for correctness (NB at present the CI jobs only confirm that a number of Notebooks can be run, not that output cells are 'sufficiently correct').
  • Could switching to managing MuMoT as a conda package instead of a pip wheel bring about performance improvements through making it simpler to adopt an all-conda workflow inc. the Intel MKL for accelerating BLAS/LAPACK operations using multiple cores and SIMD?
  • Could certain parts of MuMoT benefit from profiling and optimisation? Vectorisation (numpy), JIT compilation (numba), AOT (cython) and/or multithreading/multiprocessing may be useful here.