Noodles is a programming model to do task-based parallel and concurrent programming in 100% Python. Its primary goal is to make it easier to write or modify Python code to work in a parallel environment. The user enters a Python script that looks and feels like a serial program. The Noodles engine then converts this script into a call graph. This graph can be executed on a variety of machines using the different back-ends that Noodles provides. Noodles applications scale from running on your laptop to computer clusters through the Xenon middleware. As a programming model, Noodles is largely inspired on functional programming techniques.
- Advanced Python
- Functional programming in Python
- Staging parametric tests in PyTest
- Noodles website: https://nlesc.github.io/noodles
- Read the latest documentation at: https://noodles.readthedocs.io
- Improve the website, questions: what is noodles? when should I use it? who is already using it?
- Noodlify your favourite Python module
- Staging a remote run using Xenon
- Development documentation
- Systematic testing of programming idioms on different back-ends: https://docs.pytest.org/en/latest/example/parametrize.html
- Better pilot job