datawhalechina/zero-to-sglang is an official LLM inference course produced by SGLang and Datawhale. It guides you step by step through learning the structure of inference, implementing mini-sglang from scratch, and then reading the actual SGLang source code and submitting your first PR. The latest commit 71d7351 (2026-10-26) merges PR #102, completing the conceptual explanation of Part 2 Chapter 6 "Continuous Batching and Scheduler" in Chinese and English. The chapter files in the two languages each changed with 255 lines added and 1 line deleted, and the commit as a whole added 512 lines and deleted 4 lines.
The topic of this chapter is continuous batching and the scheduler. Static batching determines its members in advance and runs them together to the end, so when a short request finishes while a long request still remains, new requests keep waiting. The document explains the method of reselecting the requests that take part in computation at every execution round, as well as the state of the scheduler that manages this. The waiting queue, the decode execution set, and the batch of the current round make up that state, and the request slots, the prefill token budget, and the KV capacity determine the acceptance of new requests. It also covers the priority of running prefill first, splitting prefill into several chunks (chunked prefill), and reclaiming the resources of finished requests.
The Chapter 6 entries in README and README_zh changed their status from "Concept 🚧 / Code 📝" to ✅, and the description was reorganized into "continuous batching, scheduler state, resource limits, and the latency/throughput trade-off". Five illustrations were added in each language. They are: the waiting that arises under static batching, the scheduling timeline of continuous batching, the scheduling loop and request state transitions, the checking of admission conditions and the estimation of KV capacity, and split prefill.
That said, this chapter is not based on actual measurement. The body itself states that the scheduling table using three requests A, B, and C does not use time slots of the same length and is not a performance measurement either. No comparison figures or benchmarks are presented. Since the files changed by the commit are only the concept chapter, the illustrations, and the two READMEs, the Chapter 6 "code walkthrough" document is not included in this change. The document points to PR #88, which contains the implementation, and to the mini-sglang commit 9a91cfa. The teaching material is provided only in English and Chinese, and the repository license and star count are not given in the provided information.