Reading a bit about Go's goroutine scheduler. Sounds like it tries to solve many of the same problems a GPU's shader core does. # threads ("goroutines") >> # of simds ("OS threads"), fast switching, small stacks, minimal fairness, turn blocking calls into async calls.
-
-
Those are two quite big differences :). I also wouldn’t say that OS schedulers are trying to optimize for the same thread-to-core ratios or same degree of throughput. There’s a reason that primitives such as goroutines exist.
-
TBH I think Go would have been just fine, and maybe better off, if goroutines were implemented as 1:1 OS threads.
- 12 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.