Skip to content
HHackerTube.videoSurprise me

Dmitry Vyukov — Go scheduler: Implementing language with lightweight concurrency

Dmitry Vyukov — Go scheduler: Implementing language with lightweight concurrency on HackerTube: recommended by 2 Hacker News commenters across 2 separate months, 2020–2026.

Hydra

talk · advanced · evergreen

Open on YouTube

Go runtime contributor Dmitry Vyukov looks inside the Go scheduler, explaining how goroutines and channels are implemented. He covers the main scheduler components and overall operation, then goes into details such as preemption and stacks.

Why Hacker News recommends it

Recommended as a good watch on how Go's M:N:P scheduler works and why it was designed that way compared with alternative schemes.

people recommended it
2
separate months
2
strong recommendations
0
discussed on HN
2020–2026
“This one notably also explains the design considerations for golangs M:N:P in comparison to other schemes”
— c0balt, Mar 2026, in “Understanding the Go Runtime: The Scheduler”

What HN commenters said

3 Hacker News comments link this video. Each one links back to its thread.

c0baltMar 2026Recommends

▶ this video - Dmitry Vyukov — Go scheduler: Implementing language with lightweight concurrency This one notably also explains the design considerations for golangs M:N:P in comparison to other schemes and which specific challenges it tries to address.

in “Understanding the Go Runtime: The Scheduler” · View on HN

RossBencinaFeb 2020Recommends

I guess that's because they are "intros," and often multi-core event loops are implemented by the language runtime or some threadpool library. This is a good watch: Dmitry Vyukov — Go scheduler: Implementing language with lightweight concurrency (Oct 14, 2019) ▶ this video

in “A Hitchhiker’s Guide to Asynchronous Programming” · View on HN

lukaslalinskyOct 2025Cites it

Go depends on the fact that it can track all pointers, and when it needs to resize stacks, it can update them. Previous versions of Go used segmented stacks, which are theoretically possible, if Zig really wanted (would need compiler support), but they have nasty performance side-effects, see ▶ this video

in “How I turned Zig into my favorite language to write network programs in” · View on HN

Topics & tags