How GPUFarm works
Architecture#
Compute never runs onchain. The chain holds escrow, receipts and payouts; everything else is offchain and labeled honestly about what it proves.
- 1Customer
Configures a job and sees a live price estimate with its assumptions.
- 2Escrow
Funds the job's maximum cost into ComputeEscrow on Robinhood Chain.
- 3Scheduler
Matches GPU class, VRAM, count, region, load, price and reputation — never cheapest-only.
- 4Host
Accepts the 10-second offer, pulls the image and inputs, runs the sandboxed container.
- 5Verification
Server re-hashes the output, checks GPU telemetry, re-computes deterministic workloads.
- 6Settlement
Verifier signs the completion; after the challenge window (or your approval) payment releases.
Roles#
| Role | Does | Starts at |
|---|---|---|
| Customer | Rents GPUs: configures jobs, funds escrow, downloads results, approves or disputes. | /marketplace |
| Host | Connects one or more GPU machines with the daemon, sets prices and policy, earns per verified GPU-second. | /host |
| Farm owner | Groups machines into a public compute pool with a name, region, prices and an optional commission. | /farms |
Jobs#
A job is one container: an image, a command, GPU requirements (count, minimum VRAM, optional model allowlist), a max runtime, output rules and a network policy (none by default). V1 runs every GPU of a job on one physical machine — there is no cross-host distributed training.
Workload types hosts can accept or decline:
inferenceImage Generation image_generationVideo videoRendering renderingBatch Compute batchFine-Tuning fine_tuningDevelopment developmentCustom Container customEvery job moves through these states. Failed compute is never charged.
| State | Meaning |
|---|---|
| CREATED | Configured and priced. Fund the escrow to queue it. |
| FUNDED | Payment is locked in the escrow contract on Robinhood Chain. |
| QUEUED | Waiting for compatible capacity. |
| MATCHING | The scheduler is offering this job to a compatible host. |
| ASSIGNED | A host accepted the job and reserved the GPUs. |
| DOWNLOADING | The host is pulling the container image and inputs. |
| RUNNING | The workload is executing on the assigned GPUs. |
| UPLOADING | The host is uploading outputs, logs and metrics. |
| VERIFYING | GPUFarm is checking the result hash and execution telemetry. |
| COMPLETED | Result delivered. Payment settles after the challenge window or your approval. |
| FAILED | The job could not complete. You are not charged for failed compute. |
| DISPUTED | Escrow is frozen while an arbitrator reviews logs, telemetry and hashes. |
| CANCELED | Canceled before completion. |
| REFUNDED | The escrowed payment was returned to the customer. |
Verification, briefly#
- Result verified — a deterministic verifier re-computed the output (V1: the
gpufarm/selftest:1workload). - Execution verified — the output hash matches the host's signed receipt and GPU telemetry confirms the assigned GPUs were working.
- Host reported — integrity holds, but execution could not be independently confirmed. Use the challenge window.