Zum Inhalt springen
#0904
DaemonContainers

The department's job runner is a POST with a TTL

A grad student submits a run: POST /api/v1/daemon/quick-start with the command, the user, ttl: 7200, autorestart: "false". The daemon returns a quick_ id and starts the program. Two hours later, if it's still going, the daemon stops it. When it exits, it's reaped: because autorestart is off; under the default "unexpected" policy an exited job sits until its TTL. The logs stay under /hoody/storage/hoody-daemon/logs/{name}/. Nothing was registered in programs.json; nothing survives a reboot.

Twelve lab groups, twelve containers on the department's box, each with its own daemon and its own list of quick_ ids. The TTL is the fairness policy. The box is the budget.

Serverless ML platforms meter the second and keep a warm pool for you. Here the substrate is flat-rate; the win is no scheduler cluster, no warm pool, no job-queue service to run.

The department's job runner is a POST with a TTL.