Installation
Binary distribution (recommended)#
The easiest way to install HyperQueue is to download and unpack the prebuilt hq executable:
-
Download the latest release archive from this link.
Target architecture
Make sure to choose the correct binary for your architecture. Currently, we provide prebuilt binaries for
x86-64,AArch64(ARM) andPowerPCarchitectures. -
Unpack the downloaded archive:
$ tar -xvzf hq-<version>-linux-<architecture>.tar.gzThe archive contains a single binary
hq, which is used both for deploying the HQ cluster and submitting tasks into HQ. You can addhqto your system$PATHto make its usage easier.
See Quickstart for an example "Hello world" HyperQueue computation.
Compilation from source code#
You can also compile HyperQueue from source. This allows you to build HyperQueue for architectures for which we do not provide prebuilt binaries. It can also generate binaries with support for vectorization, which could in theory improve the performance of HyperQueue in extreme cases.
- Setup a Rust toolchain
-
Clone the HyperQueue repository:
$ git clone https://github.com/It4innovations/hyperqueue/ -
Build HyperQueue:
$ cargo build --profile=dist -
Use the executable located in
./target/dist/hq
Build dependencies#
Apart from a Rust compiler, the default build configuration also depends on some C and C++ dependencies (Jemalloc and Highs), which require a recent C/C++ compiler and also CMake to be built. If you encounter issues trying to compile these dependencies, you can build HyperQueue without them using the following command:
$ cargo build --profile=dist --no-default-features --features dashboard,microlp
This will come at some cost to runtime performance.
Note that even if HyperQueue is built with the C/C++ dependencies, they are always statically linked, so they are not required during runtime, only at build time.