Research Status: TiEE is an experimental architecture under active technical validation. Performance figures not accompanied by a published reproducible benchmark should be interpreted as theoretical, modeled, projected, or experimental hypotheses—not independently verified production results. View validation status →

Engineering Blog • Infrastructure Architecture

How we dropped our K8s I/O footprint by 1,000x to cure GPU starvation

Decoupling ingestion to feed starved GPUs. A raw technical breakdown of replacing heavy OS threads with the Toroidal Execution Engine.

The Architecture Breakdown

The Bottleneck: Treating I/O like Compute

We recently load-tested a high-density NVIDIA GPU cluster and hit a brutal wall. Our tensor cores were theoretically capable of massive parallel execution, but our node-level GPU utilization was struggling to break 70%. We weren't compute-bound; we were fundamentally I/O bound.

Standard Kubernetes sidecars, `slurmd`, and legacy data handlers rely on OS-level threads. Every new connection spins up a Linux thread with a default 2 MB stack size. When you scale to tens of thousands of concurrent ingestion pipelines to feed a massive model, the context-switching overhead, TLB thrashing, and memory bloat create massive network drag.

Amdahl's Law (Extended for I/O)

By applying an extended version of Amdahl's Law for I/O-bound parallelized workloads, the physical limit of the cluster becomes obvious:

Extended Amdahl's Law
S(N) = 1 / ((1 - P) + P/N + I/O_wait)
No matter how many GPUs (N) you add to parallelize the process (P), the I/O wait term ultimately dictates your maximum speedup. Throwing more expensive hardware at a software architecture problem just yields diminishing returns.
The Fix: The Toroidal Execution Engine

We stopped treating ingestion as a synchronous pipeline and built what we call the Toroidal Information Execution Engine. Instead of heavy OS threads, we shifted the I/O handling entirely to a lightweight, asynchronous execution model that completely bypasses the kernel-level scheduler for multiplexing.

Key Operational Shifts

  • Memory Footprint: The baseline stack size dropped from 2 MB to 2 KB per operation.
  • Bypassing the Scheduler: We rely on an event-driven loop to manage I/O natively, eliminating the massive CPU context-switching penalty.
  • Edge Annihilation: By stripping out heavy packet headers and K8s sidecar noise before the payload reaches the container runtime, we reclaimed 40% of the node's baseline CPU overhead.
The k6 Benchmarks

We ran a 5,000 virtual user (VU) k6 load test against the new architecture on existing NVIDIA silicon. Here is how the economics shifted:

Metric Legacy K8s / OS Threads Toroidal Async Engine Net Improvement
Max Throughput 10,000 req/s 200,000 req/s (target) +2,000% (modeled target)
GPU Utilization ~70.0% 99.4% (target) +29.4% (Maxed)
Baseline Mem/Conn 2 MB < 3 KB -99.8%

We recently submitted a draft RFC patch to the open-source SUNK (Slurm on K8s) repository to validate how this architecture performs inside standard enterprise scheduling stacks. You can review the raw k6 output and the architecture repository on our GitHub.

AUTHOR: DRAGRUSH ENGINEERING • © 2026 DRAGRUSH INC.