Skip to content

Swap encryption pr5 app workloads#6788

Open
DevVegeta wants to merge 9 commits into
GoogleCloudPlatform:masterfrom
ashishsuneja:swap-encryption-pr5-app-workloads_new
Open

Swap encryption pr5 app workloads#6788
DevVegeta wants to merge 9 commits into
GoogleCloudPlatform:masterfrom
ashishsuneja:swap-encryption-pr5-app-workloads_new

Conversation

@DevVegeta

@DevVegeta DevVegeta commented Jun 24, 2026

Copy link
Copy Markdown
Collaborator

feat(swap_encryption/pr5): Phase 3b — kernel build slowdown under cgroup memory cap

Stacked PR 5/5. Inherits PR1 framework (swap_config as NodepoolSpec field).
Benchmark nodepool provisioned automatically by GKE cluster creation.

Phase 3b additions:

  • Kernel build slowdown ratio: constrained (cgroup memory cap = 50% RAM, forces swap pressure) vs unconstrained build
  • Supports both cgroup v1 and cgroup v2 memory controllers
  • Reports kernel_build_slowdown_ratio — unique measurement of swap encryption cost on real compile workloads
  • kernel_compile_benchmark.py is VM-based and cannot run inside a K8s pod; this is the only PKB path for this measurement

Phases not included (handled by separate PKB benchmarks on a swap-enabled cluster):

  • Phase 3a (Redis/memtier): use kubernetes_redis_memtier_benchmark with swap_config nodepool from PR1
  • Phase 3c (OpenSearch): use esrally_benchmark on a swap-enabled cluster

…5); manifest moved to data/cluster and rendered via vm_util
- Add _configure_eks_kubelet_swap() stub (deferred to PR GoogleCloudPlatform#6780)
- DaemonSet: aligned with PR4 slim (no redis/memtier/esrally/opensearch)
- Kernel source pre-fetch retained for Phase 3b kernel build
- Fix COS_CONTAINERD -> UBUNTU_CONTAINERD (r3472549985)
- re import retained (used in _parse_redis_benchmark)
@DevVegeta DevVegeta force-pushed the swap-encryption-pr5-app-workloads_new branch from ebf8a21 to 84bd9d7 Compare June 25, 2026 15:04
…e logic

- Prepare() uses SwapNodePool + SwapDaemonSet from spec.resources
- Cleanup() is empty - PKB framework auto-deletes spec.resources
- All _pod_exec(pod, ...) calls replaced with daemonset.PodExec(...)
- Remove Phase 3a (Redis/memtier): duplicated kubernetes_redis_memtier_benchmark;
  run that benchmark on the swap-enabled cluster instead
- Remove Phase 3c (OpenSearch): fragile in-pod JVM launch; use esrally_benchmark
  on the swap-enabled cluster instead
- Keep Phase 3b (kernel build under cgroup memory cap): unique to this benchmark;
  kernel_compile_benchmark.py is VM-based and cannot run in a K8s pod
- Add _configure_eks_kubelet_swap() stub (deferred to PR GoogleCloudPlatform#6780)
- Fix COS_CONTAINERD -> UBUNTU_CONTAINERD (r3472549985)
Inherits PR1 framework changes (swap_config as NodepoolSpec field).

- Prepare(): deploy SwapDaemonSet + _delete_default_pool(cluster)
- Phase 3b: kernel build slowdown ratio under cgroup memory cap
- Remove Phase 3a/3c (Redis/OpenSearch): use existing PKB benchmarks
- Add _configure_eks_kubelet_swap() stub (deferred to PR GoogleCloudPlatform#6780)
@DevVegeta DevVegeta force-pushed the swap-encryption-pr5-app-workloads_new branch from 531662f to ab074b3 Compare June 29, 2026 12:50
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