FIFO Scheduler for Jetson Cluster

Job ID: 39725146

Budget: $750 – $1,500 USD

I’m building a small cluster of Jetson Nano boards, each with its own GPU and a plug-in TPU, while a Raspberry Pi acts as the control plane. What I need is a lightweight FIFO scheduler exposed through FastAPI. Jobs arrive over the endpoint in a stream similar to Azure Function invocation traces and must be queued strictly in arrival order, yet still give me the option to raise a job’s priority when flagged.

The scheduler has to recognise two execution targets—GPU and TPU—and dispatch accordingly. Throughout the run I want full visibility: queue depth, per-node utilisation, execution times and exit status should be captured in logs and surfaced as metrics I can scrape or ship to Grafana/Loki. Robust logging and monitoring are therefore as important as the core queuing logic.

Deliverables
• Clean, well-commented source code for the FIFO scheduler (control plane) and lightweight agents for the Jetson nodes
• FastAPI interface definition and brief usage examples (curl or simple script)
• Metrics and log output ready for standard Prometheus/Grafana stacks
• Setup guide that lets me spin everything up on a Raspberry Pi plus multiple Jetson Nanos, run a sample workload of GPU- and TPU-based computations, and see tasks complete in the expected order or at elevated priority when requested

I’ll consider the job complete when the demo workload runs end-to-end, metrics flow, and logs clearly show each job’s lifecycle without dropped entries.