The submission and evaluation platform for ARCH-COMP, the international competition on the verification of continuous and hybrid systems. Submit a tool or a benchmark; the platform provisions a worker, runs it, collects logs, and scores the results. Built on the shared core evaluation platform.
- Docker + Docker Compose (Docker Desktop on macOS/Windows).
- Git.
git clone --recurse-submodules https://github.com/ARCH-COMP/arch-eval-platform.git
cd arch-eval-platform && docker compose up --build- Frontend: http://localhost:5174
- Public URL (optional):
docker compose logs cloudflared | grep trycloudflare
The first account you sign up becomes the admin; later signups start disabled until an admin enables them.
To try a submission, start from the examples:
- Benchmark: https://github.com/ARCH-COMP/example_benchmark
- Tool: https://github.com/ARCH-COMP/example_toolkit
The platform supports running the website and the worker on separate machines — a lightweight VM serves the frontend and schedules jobs, while a heavier machine (e.g. a lab server or GPU node) runs the Docker containers that execute the submissions.
Clone the same repository on both machines, then start each with a single command:
Website server (same as the default setup above):
docker compose up --buildWorker server (on the dedicated worker machine):
docker compose run --rm backend python deploy/manage.py worker_service --port 9001This starts the worker service on port 9001, which listens for provision and terminate requests from the website server.
Once the worker service is running, register it in one of two ways:
Platform-wide default — go to Admin → Settings, set execution_backend to remote_docker, and enter the worker machine's URL and port. Per-user override — each user can enter their own worker server URL and port on their Account page. Submissions from that user are then routed to their private worker instead of the platform default.
Developing the platform (tests, updating the core engine, architecture) is covered in CONTRIBUTING.md.