UptimeUptime Wiki

Host categories (shape vectors)

Not all servers are the same shape. Balanced is the general-purpose workhorse that handles a bit of everything. Memory-optimised carries more RAM per core for databases and caches. Compute-dense packs fast cores into less space. Storage hauls big disks. GPU has the accelerators that AI labs and render shops fight over. Network appliances are your switches and load-balancers. Different customers demand different shapes.

If you buy nothing but one kind of box, you'll pack it poorly the moment your customers want variety — a memory-hungry tenant can't make use of a storage host's empty disks, and a GPU job won't run on a balanced node at all. A healthy fleet is a deliberate mix that matches the customers you're chasing, not a pile of whatever was cheapest.

Detailed explanation

HostCategory enum

HostCategory in { Balanced, MemoryOpt, ComputeDense, Storage, Gpu, NetworkAppliance }. Each host exposes a resource vector (vCPU / RAM / SSD GB / SSD IOPS / accelerators), not a single scalar — capacity is a shape. Customer archetypes carry category demand vectors and the allocator scores candidate hosts against that demand, first-fitting onto whichever satisfies the binding constraint.

Bin-packing under diversity

A homogeneous fleet bin-packs poorly once archetype diversity climbs: stranded capacity appears wherever a host's free axis doesn't match the queued demand's binding axis. The host-category-mix probe reports your current fleet composition so you can see whether your shape distribution matches the demand you're courting. GPU hosts in particular bin-pack differently — card-dominated capex, high power-per-U, compute-bound workloads.

On this page