Kernel threads for IO do not work great (I'd be happy to provide more info), which is why async IO is needed. Not using an M:N model to keep compatibility with C is certainly reasonable, but goroutines and an M:N model do have many advantages over kernel threads for doing IO.https://twitter.com/pcwalton/status/1140983747379990528 …
What about NGPT in Linux, though? That’s M:N, and didn’t require the same amount of kernel/user interaction. Also abandoned in favor of 1:1. Seehttp://www.drdobbs.com/open-source/nptl-the-new-implementation-of-threads-f/184406204 …
-
-
Old library with benchmarks: https://lwn.net/Articles/10710/ For creation/destruction, 1:1 beat M:N by a factor of 4 (!!)
-
I wish they provided more details on why this happens, because this does not make sense to me. They even mention that they expected that M:N would be better in this scenario.
- 7 more replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.