From 515a6ad973a5ca83738d0fc65a280c9a82fb8339 Mon Sep 17 00:00:00 2001 From: Stefan Prodan Date: Fri, 17 Nov 2023 23:56:29 +0200 Subject: [PATCH] Add Intel benchmark Signed-off-by: Stefan Prodan --- .github/workflows/test.yaml | 2 +- README.md | 38 ++++++++++++++++++------------------- 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index b9b60c6..e11a720 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -14,7 +14,7 @@ jobs: bench: strategy: matrix: - RESOURCES: [ 100, 300, 500, 1000 ] + RESOURCES: [ 100, 500, 1000 ] runs-on: ubuntu-latest steps: - name: Checkout diff --git a/README.md b/README.md index 867f247..edf9c84 100644 --- a/README.md +++ b/README.md @@ -116,20 +116,20 @@ reconciling app definitions on the Kubernetes cluster. For this benchmark we assume 100, 500 and 1000 app packages being pushed to the registry at the same time. -| Objects | Type | Flux component | Concurrency | Total Duration | Max Memory | -|---------|---------------|----------------------|-------------|----------------|------------| -| 100 | OCIRepository | source-controller | 4 | 35s | 38Mi | -| 100 | Kustomization | kustomize-controller | 4 | 38s | 32Mi | -| 100 | HelmChart | source-controller | 4 | 35s | 40Mi | -| 100 | HelmRelease | helm-controller | 4 | 42s | 140Mi | -| 500 | OCIRepository | source-controller | 10 | 45s | 65Mi | -| 500 | Kustomization | kustomize-controller | 10 | 1m50s | 72Mi | -| 500 | HelmChart | source-controller | 10 | 1m10s | 68Mi | -| 500 | HelmRelease | helm-controller | 10 | 1m58s | 350Mi | -| 1000 | OCIRepository | source-controller | 10 | 1m30s | 67Mi | -| 1000 | Kustomization | kustomize-controller | 20 | 3m58s | 112Mi | -| 1000 | HelmChart | source-controller | 10 | 1m45s | 110Mi | -| 1000 | HelmRelease | helm-controller | 10 | 5m10s | 620Mi | +| Objects | Type | Flux component | Duration Apple M1 | Duration Intel | Max Memory | +|---------|---------------|----------------------|-------------------|----------------|------------| +| 100 | OCIRepository | source-controller | 35s | 35s | 38Mi | +| 100 | Kustomization | kustomize-controller | 38s | 38s | 32Mi | +| 100 | HelmChart | source-controller | 35s | 35s | 40Mi | +| 100 | HelmRelease | helm-controller | 42s | 40s | 140Mi | +| 500 | OCIRepository | source-controller | 45s | 45s | 65Mi | +| 500 | Kustomization | kustomize-controller | **1m50s** | **3m50s** | 72Mi | +| 500 | HelmChart | source-controller | 1m10s | 1m10s | 68Mi | +| 500 | HelmRelease | helm-controller | **1m58s** | **4m40s** | 350Mi | +| 1000 | OCIRepository | source-controller | 1m30s | 1m30s | 67Mi | +| 1000 | Kustomization | kustomize-controller | **3m58s** | **4m50s** | 112Mi | +| 1000 | HelmChart | source-controller | 1m45s | 1m45s | 110Mi | +| 1000 | HelmRelease | helm-controller | **5m10s** | **14m10s** | 620Mi | ### Observations @@ -145,11 +145,11 @@ Higher concurrency probably requires an HA Kubernetes control plane with multipl ### Specs -- MacBook Pro M1 Max -- Docker Desktop for Mac (10 CPU / 24GB) +- Apple Macbook Pro (M1 Max 8cpu) +- GitHub hosted-runner (CPU Intel 2cpu) - Kubernetes Kind (v1.28.0 / 3 nodes) -- Flux source-controller (1CPU / 1Gi) -- Flux kustomize-controller (1CPU / 1Gi) -- Flux helm-controller (2CPU / 1Gi) +- Flux source-controller (1CPU / 1Gi / concurrency 10) +- Flux kustomize-controller (1CPU / 1Gi / concurrency 20) +- Flux helm-controller (2CPU / 1Gi / concurrency 10) - Helm repository (oci://ghcr.io/stefanprodan/charts/podinfo) - App manifests (Deployment scaled to zero, Service Account, Service, Ingress)