Installation¶
HyperLoom has two components from the installation perspective:
- Runtime - the HyperLoom infrastructure (Server and Worker)
- Python client
Both components resides in the same Git repository, but their installations are independent.
The main repository is: https://code.it4i.cz/ADAS/loom
Runtime¶
The HyperLoom infrastructural components depend on the following libraries that are not included in the HyperLoom source code:
- libuv – Asychronous event notification
- Protocol buffers – Serialization library
- Python >=3.4 (optional)
- Clouldpickle (optional)
(HyperLoom also depends on spdlog and Catch that are distributed together with HyperLoom)
In Debian based distributions, dependencies can be installed by the following commands:
apt install libuv-dev libprotobuf-dev
pip install cloudpickle
Note
If you are going to create plans with many tasks, you can obtain a significant speedup by using PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=”cpp” feature.
When dependencies are installed, HyperLoom itself can be installed by the following commands:
cd loom
mkdir _build
cd _build
cmake ..
make
make install
Python client¶
Python client depends on:
- Protocol buffers
- Cloudpickle
Python client can be installed by the following commands:
cd loom/python
sh generate.sh
python setup.py install