Skip to content

Instantly share code, notes, and snippets.

@nerdalert
Last active February 24, 2026 06:45
Show Gist options
  • Select an option

  • Save nerdalert/2297ba5ae9586f5641ff93b38627cbe4 to your computer and use it in GitHub Desktop.

Select an option

Save nerdalert/2297ba5ae9586f5641ff93b38627cbe4 to your computer and use it in GitHub Desktop.

Baseline Benchmark Results - Feb 24

Run metadata

  • Executed at: 2026-02-24 06:42:10 UTC
  • Repo: ~/vanilla/subscription-maas-413/maas-benchmark-vanilla/maas-benchmark
  • Target host: maas.apps.rosa.vnthh-zgsnt-wuf.rrcb.p3.openshiftapps.com
  • Protocol: https
  • Model ID detected from MAAS API: facebook/opt-125m
  • Model path detected from MAAS API: /llm/facebook-opt-125m-simulated
  • k6 version: k6 v1.5.0 (commit/7961cefa12, go1.25.5, linux/amd64)

Rate-limit policy adjustment

  • tokenratelimitpolicy/gateway-token-rate-limits in openshift-ingress was set to:
    • free-user-tokens: 10000000
    • premium-user-tokens: 10000000
    • enterprise-user-tokens: 10000000
  • No RateLimitPolicy objects were present in this cluster (kubectl get ratelimitpolicy -A returned none).

Commands run

cd ~/vanilla/subscription-maas-413/maas-benchmark-vanilla/maas-benchmark
set -euo pipefail

kubectl patch tokenratelimitpolicy gateway-token-rate-limits -n openshift-ingress --type='json' -p='[
  {"op": "replace", "path": "/spec/limits/free-user-tokens/rates/0/limit", "value": 10000000},
  {"op": "replace", "path": "/spec/limits/premium-user-tokens/rates/0/limit", "value": 10000000},
  {"op": "replace", "path": "/spec/limits/enterprise-user-tokens/rates/0/limit", "value": 10000000}
]'

GATEWAY_HOST=$(oc get gateway maas-default-gateway -n openshift-ingress \
  -o jsonpath='{.spec.listeners[0].hostname}')
OC_TOKEN=$(oc whoami -t)

mkdir -p tokens/free tokens/all results
rm -f tokens/free/*.json tokens/all/*.json

for i in 1 2 3 4 5; do
  RESP=$(curl -sSk -X POST "https://${GATEWAY_HOST}/maas-api/v1/tokens" \
    -H "Authorization: Bearer ${OC_TOKEN}" \
    -H "Content-Type: application/json" \
    -d '{"expiration": "4h"}')
  TOK=$(echo "$RESP" | jq -r '.token // empty')
  [ -n "$TOK" ] || { echo "Token creation failed: $RESP"; exit 1; }
  cat > "tokens/free/baseline-free-${i}.json" <<JSON
{
  "token": "${TOK}",
  "expiration": "4h",
  "expiresAt": 0,
  "user_id": "baseline-free-${i}",
  "tier": "free"
}
JSON
done

jq -s '.' tokens/free/*.json > tokens/all/free_tokens.json
echo '[]' > tokens/all/premium_tokens.json
jq -s '{"free": .[0], "premium": .[1]}' \
  tokens/all/free_tokens.json \
  tokens/all/premium_tokens.json > tokens/all/all_tokens.json

MAAS_TOKEN=$(jq -r '.[0].token' tokens/all/free_tokens.json)
DISCOVERY=$(curl -sSk "https://${GATEWAY_HOST}/v1/models" -H "Authorization: Bearer ${MAAS_TOKEN}")
MODEL_PATH=$(echo "$DISCOVERY" | jq -r '.data[0].url' | sed -E 's|https?://[^/]*||')
MODEL_ID=$(echo "$DISCOVERY" | jq -r '.data[0].id')

k6 run -e HOST="${GATEWAY_HOST}" -e PROTOCOL=https -e MODEL_PATH="${MODEL_PATH}" -e MODEL_ID="${MODEL_ID}" -e BURST_VUS=1 -e BURST_ITERATIONS=20 --summary-export=results/baseline-feb24-burst-1vu-summary.json k6/maas-performance-test.js | tee results/baseline-feb24-burst-1vu.log || true
k6 run -e HOST="${GATEWAY_HOST}" -e PROTOCOL=https -e MODEL_PATH="${MODEL_PATH}" -e MODEL_ID="${MODEL_ID}" -e BURST_VUS=3 -e BURST_ITERATIONS=30 --summary-export=results/baseline-feb24-burst-3vu-summary.json k6/maas-performance-test.js | tee results/baseline-feb24-burst-3vu.log || true
k6 run -e HOST="${GATEWAY_HOST}" -e PROTOCOL=https -e MODEL_PATH="${MODEL_PATH}" -e MODEL_ID="${MODEL_ID}" -e BURST_VUS=5 -e BURST_ITERATIONS=100 --summary-export=results/baseline-feb24-burst-5vu-summary.json k6/maas-performance-test.js | tee results/baseline-feb24-burst-5vu.log || true

Results

Test HTTP reqs Success rate Failed req rate p95 latency (ms) Auth failure checks
1 VU, 20 iters 20 100.00% 0.00% 88.41 0
3 VUs, 30 iters 30 6.67% 93.33% 17.30 28
5 VUs, 100 iters 100 2.00% 98.00% 6.24 98

Artifacts

  • results/baseline-feb24-smoke-chat.json
  • results/baseline-feb24-burst-1vu-summary.json
  • results/baseline-feb24-burst-1vu.log
  • results/baseline-feb24-burst-3vu-summary.json
  • results/baseline-feb24-burst-3vu.log
  • results/baseline-feb24-burst-5vu-summary.json
  • results/baseline-feb24-burst-5vu.log
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment