Skip to main content

Sizing guide

Faheem Code Enterprise deployments are sized primarily based on expected peak concurrent sandboxes — the largest number of sandboxes you expect to be running at the same time. Keep in mind that one user can have multiple sandboxes running at one time.

Planning unit

Both tables below are built from the same per-sandbox allocation:

ResourcePer sandbox
CPU0.5 vCPU
Memory4 GiB
Node disk10 GiB
Volume storage10 GiB

If you raise the sandbox defaults (for large monorepos or memory-hungry builds), scale the totals in the tables by the same factor. See Resource Limits for how to change these values.

Installation modes

This guide covers the two supported installation modes:

Replicated Embedded Cluster — single VM

Machine sizes below are based on the peak sandboxes, so feel free to size up or down based on expected usage.

Peak sandboxesUsers (estimate)VMExample machine typesData disk (starting recommendation)
5~258 vCPU / 32 GiBe2-standard-8, m6i.2xlarge, D8s_v5500 GiB SSD
15~6016 vCPU / 64 GiBn2-standard-16, m6i.4xlarge, D16s_v51 TiB SSD
30~12532 vCPU / 128 GiBn2-standard-32, m6i.8xlarge, D32s_v51.5 TiB SSD
50~25064 vCPU / 256 GiBn2-standard-64, m6i.16xlarge, D64s_v53 TiB SSD
100~40096 vCPU / 384 GiBn2-standard-96, m6i.24xlarge, D96s_v54 TiB SSD
Above 100Use a Kubernetes install, or contact us for a sizing consultation

The 16 vCPU / 64 GiB row matches the minimum VM in the Quick Start system requirements. Trials that stay below roughly 15 concurrent sandboxes are well served by that baseline.

Replicated Helm installation

Use two node pools: a tainted pool that runs only sandboxes, and an untainted pool that runs everything else. This keeps a burst of sandboxes from evicting platform components.

Recommended node pools:

  • Sandbox pool: 16 vCPU / 64 GiB / 400 GiB SSD
  • Platform pool: 8 vCPU / 32 GiB / 100 GiB
Peak sandboxesUsers (estimate)Sandbox nodes (min–max)Platform nodesVolume storage (start)PostgreSQL (in-cluster by default)
10~501–121 TiB2 vCPU / 8 GiB — fits the platform pool
25~1251–322.5 TiB2 vCPU / 8 GiB — fits the platform pool
50~2501–525 TiB2 vCPU / 8 GiB — fits the platform pool
100~5001–10310 TiB4 vCPU / 16 GiB — fits the platform pool
200~1,0002–20320 TiB4 vCPU / 16 GiB — fits the platform pool
500~2,5003–48450 TiB8 vCPU / 32 GiB — needs a dedicated node
1,000~5,0005–965100 TiB16 vCPU / 64 GiB — needs a dedicated node

Notes on the table:

  • Minimum node counts assume autoscaling. If your cluster cannot scale up quickly, raise the minimum toward your typical daily peak so users don't wait on node provisioning.
  • PostgreSQL is deployed in-cluster by default. At 500 peak sandboxes and above, give it a dedicated node — or use External PostgreSQL and size it with your database team.

Adjusting after rollout

  • Track sandbox pod count over time and size to the observed peak, plus headroom.
  • Watch memory usage against limits to catch OOMKills, and usage against requests to catch evictions. See Resource Limits for the metrics and the settings to change.
  • Grow volume storage before it fills. Sandbox workspaces are deleted with their sandbox, but their usage and retention may outstrip initial storage numbers

Next steps