What if my job cannot wait in a queue?
Then it is not a network job. Queues are part of the design, and a job that must start the moment it is submitted belongs on your own systems. A deadline is different from an inability to wait.
· 3 min read
IN SHORT
Then it is not a job for the network. Queues are part of the design: a submitted job may wait until compute is free, with the meter off while it waits. Work that cannot tolerate that wait stays on your own infrastructure. A deadline is not the same thing; a job can declare when it must be finished and still wait for compute in the meantime.
Then it is not a job for the network, and the design is explicit about that. A queue is part of how E31 Network is meant to work. A job that is submitted when no compute is free waits until some is, and the meter does not run while it waits. Work that cannot tolerate that wait, that must start the moment it exists, belongs on dedicated local infrastructure, on an edge device, or on your own systems. The network is not being built to carry it.
The useful part of the question is deciding which of your jobs that describes, because fewer of them than you might think cannot wait.
Why the queue is there
The network's economics depend on it. Compute is rented by the hour and released when the job finishes, so the pool is shared among many jobs. If every job demanded compute the instant it was submitted, the pool would have to be sized for the worst moment, which is the problem of owning for your peak all over again. A queue lets a job wait for a gap instead, and the waiting costs nothing, since the meter starts only at rent.
That is the design trade in one sentence: compute by the hour without idle capacity, because jobs agree to wait for it. The how it works page shows where the queue sits in the life of a job.
Cannot wait versus must finish by
These are different, and the difference decides a lot. A job that must finish by a deadline can still wait, as long as the wait plus the run fits before the deadline. The request step exists for this: it declares how much compute, for how long or until done, and when the job must be finished. "I need compute tonight to retrain my model" has a deadline, tonight, and room to wait for compute in the meantime.
A job that cannot wait at all is different in kind. A control loop, live perception on a moving machine, a safety function, live operator tooling, an assistant a person is waiting on: these do not have deadlines, they have a now. No queue of any length fits, because the answer is needed at the moment the question arises. That is the work the workloads page puts on the local side of the line, and can I run a robot from the network works through the clearest case.
The cases near the line
Some work sits in between. Inference for a product that answers users in the moment must stay local, but inference over last month's backlog of inputs, where nobody is waiting on each result, is a batch inference job. A model that must be retrained before tomorrow's shift has a deadline, not a now. An evaluation sweep that a release is blocked on feels urgent, but urgency is a short deadline, and a short deadline can still queue.
Whether the queue can honor a short deadline is a scheduling question the program has not solved, and it says so. No priority mechanism is described. So the honest position is this: if your job can wait at all, it is a candidate, and how well the queue would serve its deadline is open. If it cannot wait at all, it stays with you, by design.
Questions this raises
- Is there a priority or express lane for urgent jobs?
- Nothing like that is published, and the program has not described tiers of any kind. Scheduling mixed jobs fairly is on its unsolved list, and a priority lane would be one possible answer among several. For now, assume one queue.
- My job has a hard deadline tonight. Does that disqualify it?
- Not by itself. The request step declares when the job must be finished, and a deadline is information the scheduler would use. Whether the queue can honor a given deadline depends on scheduling that is not yet designed, so no promise is made.
- What about an interactive assistant that answers a person?
- An assistant that must answer in the moment stays on your own systems. Inference over a large backlog of prompts, where no one is waiting on each answer, is a batch inference job and would belong on the network.
KEEP READING