For GPU providers

Per-second GPU billing

Charge for GPU time by the second, not by the hour. The client signs a spending ceiling for the longest run; your node settles the seconds the job actually used, in ARL on Base.

Why per second

Inference calls, fine-tuning steps and batch jobs rarely fill a whole hour. Billing by the second lets a provider price a GPU honestly for short work and lets a client pay only for the time the job ran. Every settlement is an ERC-20 transfer on Base that anyone can check on Basescan.

What a provider gets

  • A listing on the open ERC-8004 registry in the ARL app: GPU model and count, GPU memory, vCPUs, memory, the longest job and a price per GPU or CPU second.
  • Payment before work: the client's signed ceiling is verified by the facilitator before the job starts.
  • Exact metering: any part of a second is billed as a whole second, and the amount settled is price × seconds, never above the ceiling.
  • Open-source reference node (@arl/provider): runs only the jobs you define, for the paid time, in a process with an empty environment so your keys never reach the job.
  • Longer work through the jobs escrow (ERC-8183) with a deadline and refunds, or a per-second payment stream (ComputePayment) that escrows rate × duration and settles at stop.

How it works

  1. List your GPU capacity and price per second in the ARL app.
  2. A client requests a run; your node answers HTTP 402 with the ceiling: price per second × the longest run.
  3. The client's wallet signs the ceiling (x402 upto, Permit2) and sends the request again.
  4. Your node verifies the authorization, runs the job and stops it when the paid time ends.
  5. The facilitator settles the seconds used in ARL; the answer carries the receipt and the output.

Where it runs today

  • Provider listing and per-second payments run on the Base Sepolia testnet in the ARL app.
  • The ARL token is live on Base Mainnet; the jobs escrow is live on Base Mainnet, paid in ARL or USDC.
  • The per-second streaming contract is tested on a local chain with 100% coverage and is in development.

Questions

How is a partial second billed?

As a whole second. The amount settled is the price per second times the billed seconds and can never exceed the ceiling the client signed.

What if a job fails?

A job that exits with an error is billed for the time it used, a job that could not start is billed nothing, and if settlement fails the output is withheld.

Can I run my own containers and GPUs?

Yes. Each job is a command you define, for example docker run with --gpus all and --network none, so GPU assignment and isolation stay under your control.

Read more

Start with ARL Protocol

Open the ARL app, read the Interactive Core or write to [email protected].

Partnership