Developer builds custom GPU job scheduler for Raspberry Pi homelab called Hearth
A developer created a lightweight job scheduling platform called Hearth to manage GPU workloads on a Raspberry Pi homelab, after finding that existing orchestration tools like k3s and Nomad consumed too much memory. The system uses SQLite in WAL mode instead of Redis or Celery, allowing the job queue to persist across reboots without additional overhead. Each job runs inside its own systemd-run scope mapped to a resource slice, so an out-of-memory event kills only the affected job rather than crashing the entire host. Jobs support priority levels, retry with exponential backoff, and a dead-letter path for failures requiring human review. A key design lesson emerged when a bimodal job exposed flaws in using median runtime estimates for scheduling, leading the developer to switch to the maximum of the last five runs to avoid starting jobs that cannot finish within a required time window.
This is an AI-generated summary. ShortSingh links to the original source for the complete article.

Discussion (0)
Log in to join the discussion and vote.
Log in