|
|
|
|
|
by ibraheemdev
1471 days ago
|
|
> - Noisy neighbor problems from other threads messing with your TLB and L1 cache Switching between threads within the same process doesn't require a TLB or L1 cache flush. Not sure if you were implying this, just wanted to point that out. > - High cost of context switches Userspace schedulers (like rust's tokio) do make context switching cheaper, however, most of the context switching in the case of a web server is due to blocking I/O and the most expensive part of the switch, entering the kernel, is already accounted for by the I/O request. Kernel context switching is unlikely to be your bottleneck. > Unpredictable scheduling/priority inversion in the scheduler This can definitely be an issue at scale, but a general purpose async scheduler like most use is unlikely to be any better. |
|