Reproducibility
Reproducibility is the ability to run a job in the future in the exact same conditions, producing the exact same output. It is extremely important for:
- Debugging and maintaining algorithms.
- Verifying public claims, for example in academia and scientific research publishing.
Conditions
BatchX guarantees reproducibility based on the premise of image implementations being deterministic. Given that BatchX jobs run in isolated sandboxes without external communication, and that all BatchX assets are immutable, this premise translates in the following weaker conditions:
- Image output not depending on the runtime parametrization of the job.
- Image output not being random.