Scientific computing with SCOOP
Scalable Concurrent Operations in Python (SCOOP) is a Python module to distribute concurrent tasks (called Futures) on heterogeneous computational nodes. Its architecture is based on the ØMQ package, which provides a way to manage Futures between the distributed systems. The main application of SCOOP resides in scientific computing that requires the execution of many distributed tasks using all the computational resources available.
To distribute its futures, SCOOP uses a variation of the broker patterns:
The central element of the communication system is the broker that interacts with all the independent workers to dispatch messages between them. The Futures are created in the worker elements instead of the central node (the broker) with a centralized serialization procedure. This makes the topology architecture more reliable and makes performance better. In fact, the broker's main workload consists of networking and interprocess I/O...