Under the hood

Benchmarks & economics

The case for Collimate is quantitative: spawn an isolated VM in well under a millisecond, hold a thousand of them on one host for kilobytes each, and watch per-VM cost drop as you scale. Here are the measured numbers and what they mean for the cost of a rollout.

0.65-1.2ms
Spawn latency P50
141KB
Per VM at N=1,000
23-500×
Faster spawn
740×
Less memory vs E2B

Spawn latency

End-to-end time to spawn a fresh, fully-restored microVM, measured over 1,000 iterations on a GCP n2-standard-8 (8 vCPU, 32 GiB):

PercentileLatency
Min0.987 ms
P501.175 ms
P951.347 ms
P991.454 ms
Max1.736 ms

On AWS c8i.xlarge (the production-target platform) the same spawn measures ~0.65 ms P50 / ~0.996 ms P99.

Concurrent scaling

All VMs created simultaneously. Per-VM latency and memory both improve with scale, because the more VMs you run, the more memory stays shared:

Concurrent VMsWall-clockPer VMMemory / VM
108.6 ms856 µs506 KB
10084 ms841 µs174 KB
1,0001,225 ms1,225 µs141 KB

A single 8-vCPU host sustained 1,000+ concurrent VMs; on memory alone, the per-VM footprint would fit roughly 100K VMs in a large box's RAM, though CPU scheduling and kernel limits bind first; we've measured 1,000+.

Versus the runtimes teams actually use

Same workload, mainstream sandbox runtimes. Latency is spawn P50; memory is steady-state per sandbox.

RuntimeSpawn P50Memory / sandboxvs Collimate
Collimate~0.65-1.2 ms~141 KBbaseline
Daytona~27 ms~50 MB23× slower · 290× heavier
E2B~150 ms~128 MB128× slower · 740× heavier
microsandbox~200 ms~50 MB170× slower · 290× heavier
Docker (runc)~3,350 ms~4 MBshared-kernel container
gVisor (runsc)~2,886 msn/ashared-kernel sandbox

Sandbox-runtime figures (E2B, Daytona, microsandbox) are vendor-published; container figures (runc, gVisor) were measured on the primary host and are a different isolation class, listed for latency context.

Time-to-interactive

VM spawn plus a real round-trip of work:

WorkloadTotalof which spawn
VM spawn + echo5.8 ms1.1 ms
VM spawn + echo (via API)8.4 ms1.3 ms
VM spawn + cold Python (sum 1M)353 ms1.3 ms

The spawn is a rounding error. What you wait for is your own workload, which is exactly how it should be.

What a rollout costs

Density is the whole economic argument. Memory is usually what caps how many environments you can run at once:

  1,000 concurrent sandboxes, memory footprint:

  Collimate    ▏ ~140 MB        (141 KB × 1,000)
  Daytona      ████████████████████████████████  ~50 GB
  E2B          ██████████████████████████████████████████████████████████████████  ~128 GB
// the same fleet that needs a rack elsewhere fits in a corner of one host here

Because VMs share their template copy-on-write, you pay for divergence, not for environment count. That collapses the cost of the rollout phase: GRPO-style group sampling, best-of-N, and wide tree search stop being memory-bound, so the same budget buys far more exploration.

Methodology

Primary host
GCP n2-standard-8: 8 vCPU Intel Cascade Lake, 32 GiB, nested virtualization
Production target
AWS c8i / m8i / r8i with nested virtualization (~0.65 ms P50 there)
Template
512 MiB / 1 vCPU guest with Python 3 + bash + git
Procedure
Caches dropped before each run; VM spawn latency measured over 1,000 iterations, per-VM memory over 10,000 VMs
__ICO_book__

Honest about what's measured. Latency, scaling, and memory above are measured results. Numbers on other pages tied to tree search (e.g. replay-vs-fork overhead and per-branch memory for a browser workload) are analytical or projected; the end-to-end success-rate benchmark is still in progress, and we mark projections as such.

Related