3 ms·
I've written native C modules interacting with EVE online, probably one of the biggest Python systems in deployment, and they run on stackless python with a baz
by revelation 13y ago
I've written native C modules interacting with EVE online, probably one of the biggest Python systems in deployment, and they run on stackless python with a bazillion of threads for every little thing. While still needing to hit that 50fps window.
The GIL was not a problem.
- jknupp 13y ago...because they run on Stackless Python.
- kbutler 13y agoThis is a common misconception about Stackless Python. Stackless still has the GIL - it facilitates concurrent, not parallel programming. Stackless Python programs run on a single core, with cooperative task switching between microthreads. See http://stackoverflow.com/questions/377254/stackless-python-and-multicores http://stackoverflow.com/questions/377254/stackless-python-a...
- asperous 13y agoIt's not concurrent either. It's about asynchronous. Tasks that don't finish before another one starts and runs. Why would you want this? From the website: * Improved program structure. * More readable code. * Increased programmer productivity.
- kbutler 13y agoThis is "concurrent" in the increasingly common Erlang sense of the word: "The real world is ’concurrent’. It is made up of a bunch of things (or actors) that interact with each other ina loosely coupled way with limited knowledge of each other." -- Grant Olson "Why Stackless" 2006 "Concurrent computing is a form of computing in which programs are designed as collections of interacting computational processes that may be executed in parallel." -- http://en.wikipedia.org/wiki/Concurrent_computing http://en.wikipedia.org/wiki/Concurrent_computing
- asperous 13y agoThe point of Stackless python is that it avoids the GIL by not using threading. It's more about asynchronous behavior.