Installation

KCoral can be installed from a prebuilt package or built from source. Install the client on the machine that submits programs. If you also host a KCoral server, install the server dependencies on each machine that runs it.

Python 3.10 or newer is required.

Method 1: Install a prebuilt package

Prebuilt wheels are available on PyPI.

Install the client

python -m pip install kcoral

This installs the package with client dependencies. Running the clients needs no GPU.

Verify that the client imports successfully:

python -c "from kcoral import Client, Program; print('KCoral client is ready')"

Install the server

Install the server extra:

python -m pip install 'kcoral[server]'

The server extra supports both GPU execution and CPU compilation. See system requirements.

Method 2: Build from source

Use a source installation to modify KCoral or install a specific revision.

Get the source

Rust 1.87 or newer is required.

git clone https://github.com/mlc-ai/kcoral.git
cd kcoral

Run the remaining source installation commands from this repository directory.

Install in editable mode

Install the client:

python -m pip install -e .

To include the server dependencies, use:

python -m pip install -e '.[server]'

Server system requirements

Server mode

Purpose

Hardware

GPU (--device gpu)

Compile, execute, and benchmark kernels

NVIDIA GPU and driver

CPU (--device cpu)

Compile CUDA C for execution on a GPU server

No GPU or GPU driver required

Compiling CUDA C in either mode requires the CUDA toolkit and a compatible C++ compiler.

Install bubblewrap 0.8.0 or newer for filesystem isolation. On Debian/Ubuntu:

sudo apt install bubblewrap

For deployment, see Launch the server and Remote Compilation.