GIE 1.4: the framework release (and what it means for llm-d)

Gateway API Inference Extension v1.4 landed with 101 commits from 54 contributors. The headline isn’t a single feature, it’s that GIE became a real plugin framework. Here’s what changed and why it matters if you’re building on top of it.

March 21, 2026 · 7 min · Sam Batschelet

Go finally gets SIMD in 1.26

Go 1.26 shipped simd/archsimd behind GOEXPERIMENT=simd, giving Go native SIMD intrinsics for the first time. I tried it on a real data structure to see what it feels like in practice.

March 20, 2026 · 4 min · Sam Batschelet

Fine-tuning a Go expert: does it actually work? (Part 2)

The v2 adapter trained overnight on 41k samples. Loss 0.918, accuracy 82.7%. I loaded it into vLLM and ran the same prompts. Here’s what came out.

March 19, 2026 · 6 min · Sam Batschelet

Fine-tuning a Go expert: LoRA on a $300 GPU (Part 1)

I trained a LoRA adapter on 41k Go code examples from the Kubernetes and etcd source trees. The first run produced 600 tab characters. Here’s what I learned.

March 18, 2026 · 8 min · Sam Batschelet

DRANet: the fix for bare metal RDMA in Kubernetes

hostNetwork is the default recommendation for RDMA in Kubernetes. It breaks disaggregated inference. DRANet replaces it with DRA-based NIC assignment and fixes the problem cleanly.

March 17, 2026 · 5 min · Sam Batschelet

Disaggregated Prefill/Decode on Consumer GPUs

Running llm-d’s disaggregated prefill/decode architecture across an RTX 3060 and a Tesla T4 connected by 25GbE RDMA. What worked, what broke, and what I learned about KV cache transfer at the edge of what consumer hardware can do.

March 14, 2026 · 10 min · Sam Batschelet