4 ms·
(I'm the author of the blog post) Beyond "kernel programming is hard", there are a few other reasons why it made sense for us: - observability & maintenance:
by mochomocha 2y ago
(I'm the author of the blog post)
Beyond "kernel programming is hard", there are a few other reasons why it made sense for us:
- observability & maintenance: much easier to implement and ship this type of changes in userspace than rolling out a kernel fork. We also built custom AB infra to be able to evaluate these optimizations.
- the kernel is really good at making reasonable decisions at high-frequency based on a limited amount of data and heuristics. But these decisions are far from optimal in all scenarios. In contrast in user-space we can make better decisions based on more data (or ML predictions), but do so less frequently.