4 ms·
Actually your example is not that oversubscribed. I've seen a couple of big production webservers which are running a threadpool of 1000 threads on < 100 cores.
by Matthias247 6y ago
Actually your example is not that oversubscribed.
I've seen a couple of big production webservers which are running a threadpool of 1000 threads on < 100 cores. And they perform by far not as bad as all the new hype around async IO tells us.
One key here is however that those threads typically all run very independent workloads. If there would be a massive amount of synchronization between those threads or lots of context-switching due to message passing between them it would likely be worse.
- scott_s 6y agoIn my experiment, every thread communicated with two other threads through lock-free queues, and each thread’s work depended on receiving that work form another thread. In other words, the threads were very dependent on each other, and they all had lots of work.