Welcome to Taskblaster’s documentation!
Taskblaster is a Python tool for defining and running computational workflows.
A workflow is a specification for generating computational tasks. A task is a small unit of computational work with an input and an output. In Taskblaster it is a Python function along with an input specification. Workflows may specify tasks and subworkflows statically or via dynamic flow control structures. As tasks are generated, they are stored forming a directed acyclic graph and can be executed by worker processes.
Taskblaster makes it easy to parametrize a workflow on many inputs, and to execute the tasks whether on a supercomputer or on a laptop. Taskblaster also makes it easy to extend and modify a workflow along the way while keeping track of whether computations are up to date.
Some main design features of Taskblaster are:
Workflows and tasks are composed into a main workflow using a Python interface.
Running the main workflow generates tasks, which for conceptual and practical simplicity are organised into a directory structure that can be navigated with standard tools.
A command-line interface allows selecting which workflows and tasks to run and when. It also provides a range of reporting and inspection tools.
Taskblaster is a light-weight tool and does not require a database server or a persistent connection to a supercomputer. On a supercomputer, Taskblaster is best used together with myqueue and workload manager such as Slurm or Torque.
Taskblaster is free software released under GPLv3+.
- Links:
Documentation: https://taskblaster.readthedocs.io/
Source code: https://gitlab.com/taskblaster/taskblaster.git
Releases: https://pypi.org/project/taskblaster/
- Installation
- Tutorials
- Explanation
- How to?
- Paths and output files
- Resources
- Executing and submitting tasks
- External files
- How to write a while loop?
- How to write an advanced while loop?
- Writing Taskblaster documentation
- How to set up a large scale project with Taskblaster?
- How to set up a large scale project with Taskblaster using ASE (Atomic Simulation Environment)?
- Reference