2 ms·
More like "kernel programming is hard, let's put fancier logic and RPC in userspace". Which sounds perfectly sane.
by yencabulator 3y ago
More like "kernel programming is hard, let's put fancier logic and RPC in userspace". Which sounds perfectly sane.
- mochomocha 3y 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.