Skip to content

chore: cap all comparison pods at 2 CPU / 4Gi - #35

Merged
merlimat merged 1 commit into
mainfrom
comparison-2cpu-4gi-sizing
Jul 10, 2026
Merged

chore: cap all comparison pods at 2 CPU / 4Gi#35
merlimat merged 1 commit into
mainfrom
comparison-2cpu-4gi-sizing

Conversation

@merlimat

Copy link
Copy Markdown
Contributor

Uniform 2 CPU / 4Gi requests/limits for every backend server in the comparison configs (oxia sizes, zookeeper, etcd, redis, tikv, consul). The previous 3 CPU / 6Gi pods binpacked poorly onto the available VM shapes — the oxia-12 scale-up (12×3CPU/6Gi + workers ≈ 66 CPU / 132Gi) churned on spot nodes. Uniform 2/4 pods pack cleanly and shrink oxia-12 to a schedulable footprint.

In-pod knobs scaled with the container:

  • oxia readCacheSizeMB 3072 → 2048 — still ~30× the 1M×64B dataset, so reads remain cache hits.
  • zookeeper heapSize 3072 → 2048 — 2× the 1024 bitnami default that OOM'd on the 1M-znode keyspace, and keeps the same half-of-container heap ratio that ran clean at 6Gi.

Bench workers are sized per run; runs should pass WORKER_CPU=2 WORKER_MEM=4Gi to match.

Verification

helm template renders checked for oxia-3 (server StatefulSet 2 CPU/4Gi; dataserver.yaml deep-merges readCacheSizeMB: 2048 with the data dirs intact), zookeeper (ZOO_HEAP_SIZE=2048, 2/4Gi resources), and etcd (2/4Gi); no cpu: "3"/6Gi/3072 remains under comparison/.

Note: results at this sizing are a new baseline — not comparable to runs from the 3 CPU / 6Gi configs.

Uniform 2 CPU / 4Gi requests/limits for every backend server in the
comparison configs (oxia sizes, zookeeper, etcd, redis, tikv, consul).
The previous 3 CPU / 6Gi pods binpacked poorly onto the available VM
shapes (the oxia-12 scale-up churned on spot); uniform 2/4 pods pack
cleanly.

Scale the in-pod knobs with the container:
- oxia readCacheSizeMB 3072 -> 2048 (still ~30x the 1M x 64B dataset,
  so reads stay cache hits)
- zookeeper heapSize 3072 -> 2048 (2x the 1024 default that OOM'd on
  the 1M-znode keyspace; keeps the half-of-container heap ratio)

Bench workers are sized per run; pass WORKER_CPU=2 WORKER_MEM=4Gi to
match.

Signed-off-by: Matteo Merli <mmerli@apache.org>
@merlimat
merlimat merged commit e599f54 into main Jul 10, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant