Flora Ma
Notes and analysis on LLM inference, GPU kernels, and systems engineering.
Recent posts
- 一个 prompt 的一生:nano-vllm 从起服务到吐出 token
顺着 LLM(...) 和 engine.step() 两条线,把 nano-vllm 起服务时的进程拓扑、权重加载、显存规划、CUDA graph,以及一次推理里调度、张量准备、前向、采样、状态回写的全流程串成一张图。
- 同一个 Qwen3,两种写法:从 transformers 到 nano-vllm 的推理改造
以 Qwen3-8B 为例,先把模型结构和每一处维度画清楚,再逐项对照 transformers 与 nano-vllm 的实现差异:权重融合、扁平批次、分页 KV cache、注意力后端、RoPE、残差融合与张量并行。
- 对照 Nano-vLLM 实现:读懂 vLLM 调度
先用轮次快照把 nano-vllm 的调度看透,再对照 vLLM V1 的 schedule(),讲清混批、chunked prefill、token 预算与抢占这几处关键分歧。
- Docker Tutorial
Docker concepts, everyday CLI commands, and its architecture — plus why reproducible containers matter for ML/DL work.
- Python Parallel and Concurrent Programming
Core concepts of parallel and concurrent programming — threads, processes, the GIL, synchronization primitives, and executor pools — and how they play out in Python.