I work on LLM inference infrastructure: serving engines, kernels, and the systems around them.
- NVIDIA Dynamo #16399: pick a complete tool call when
parallel_tool_callsis false while streaming (Rust, Chat Completions and Responses APIs). Under review - vLLM #56040: honor an explicit
VLLM_ROCM_USE_AITER_UNIFIED_ATTENTION=0on AMD RDNA GPUs. Under review - SGLang #39075: traced a decode context parallel crash to the aiter decode path returning no LSE; closed after AMD landed the full fix in #34432
Serving and deployment
- vllm-serving-tuning-practice: continuous batching throughput, prefix caching TTFT, and decode memory-bandwidth utilization on an RTX 3060 Ti
- vllm-k8s-deploy-practice: vLLM on Kubernetes with rolling updates, HPA, and a CI latency regression gate, then real vLLM on an RTX 3060 Ti node (k3s on WSL2, throughput within 0.4% of bare Docker over 5 repeated runs)
Agent workloads
- agentic-loop-bottleneck-practice: real vLLM tool-calling loops; structured decoding reliability, a LangGraph agent profiled with NeMo Agent Toolkit and Nsight Systems, fp16 vs fp8 KV cache
- harness-cpu-overhead-practice: CPU overhead in the agent harness, framed with Amdahl's Law
- gil-scheduling-practice: does LangGraph's parallel node execution use multiple cores under the GIL?
Kernels, communication, and hardware
- vllm-kernel-practice: Triton versions of vLLM CUDA kernels
- allreduce-practice: naive, ring, and recursive-doubling allreduce in C with a cost model, plus transfer/compute overlap on a real GPU
- lpu-compiler-practice: toy instruction-block DSL and register allocator modeled on an LPU
- bloom-filter-ngram-practice: Bloom filter n-gram pre-filter modeled on vLLM's n-gram speculative decoding
Blog: thisish3.tistory.com

