nano-vLLM Kernel Optimization
이 경로는 PyTorch profiling과 CUDA kernel 실습을 nano-vLLM serving loop에 연결하는 경로입니다.
핵심은 standalone kernel benchmark에서 멈추지 않는 것입니다. RMSNorm이나 attention이 단독으로 빨라졌을 때, 실제 serving loop의 TTFT, TPOT, throughput, peak memory가 어떻게 바뀌는지 확인합니다.
이 path의 최종 산출물은 전후 비교 리포트입니다.
baseline nano-vLLM
-> bottleneck profile
-> kernel swap
-> correctness check
-> TTFT / TPOT / throughput report
- Attention Workload: Prefill vs Decode — attention benchmark를 prefill-like와 decode-like workload로 나누어 측정한다.
- Optimized Attention Benchmark — manual attention, PyTorch SDPA, optimized attention backend를 prefill/decode workload에서 비교한다.
- nano-vLLM Kernel Integration Points — nano-vLLM serving loop에서 RMSNorm, attention, sampling 같은 kernel 교체 지점을 찾는다.
- nano-vLLM RMSNorm Kernel Swap — PyTorch RMSNorm을 custom/optimized RMSNorm kernel로 교체하고 model output과 serving metric을 비교한다.
- nano-vLLM Attention Kernel Swap — manual/SDPA/optimized attention을 nano-vLLM prefill/decode loop에 연결하고 전후 성능을 비교한다.
- nano-vLLM Sampling Kernel Candidate — logits에서 token을 고르는 sampling 경로가 언제 kernel 최적화 후보가 되는지 판단한다.
- nano-vLLM Prefill/Decode Benchmark Report — kernel swap 전후의 TTFT, TPOT, throughput, memory를 prefill/decode workload별로 정리한다.