Yes there is a gevent backend. Has been from day one. You can force one over the other by setting the GOLESS_BACKEND envvar to 'stackless' or 'gevent'.
On Tue, Jun 3, 2014 at 7:45 AM, Kristján Valur Jónsson < [email protected]> wrote: > I also think that gevent must be somehow sub-optimal. I´ve seen > comparisons of python web frameworks where gevent based backends don’t > perform that well in terms of latency. > > Waiting for your blog, I´m still a bit confused at what you are doing. > did you implement goless with a gevent backend? > > K > > > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *Rob Galanakis > *Sent:* 30. maí 2014 12:47 > > *To:* The Stackless Python Mailing List > *Subject:* Re: [Stackless] goless > > > > I was doing some benchmarking of goless under gevent and stackless. The > results are pretty astonishing when you do this stuff in the interpreter! I > will put it on GitHub later today or tomorrow and also write up a blog. > It's possible our implementation is just not a good one regarding gevent, > but I sort of doubt it. The stackless/gevent specific code is minimal > (goless/backends.py) and I don't see anything ugly that we're doing there. > Maybe something is idiomatically very different, or is gevent performance > just not very good? > > Anyway, it should be easy to profile eventually. > > > > Using backend StacklessBackend > > Benchmarking channels: > > 0.13s: Sync > > 0.14s: Async > > 0.13s: Buffered(1000) > > Benchmarking select: > > 0.29s: No default case. > > 0.15s: With default case. > > > > Using backend GeventBackend > > Benchmarking channels: > > 0.87s: Sync > > 0.83s: Async > > 0.82s: Buffered(1000) > > Benchmarking select: > > 1.12s: No default case. > > 0.16s: With default case. > > > > On Tue, May 27, 2014 at 7:17 AM, Kristján Valur Jónsson < > [email protected]> wrote: > > Well, I started doing some documentation using sphinx the other day but > got sidetracked. > > The current documentation lives in the modules and in the unittests. > > I guess the only fiddly bit about it currently is to start it up. > Currently one has to explicitly get the main loop running. This is because > stackless _*used*_ to only allow stackless.run() on the main tasklet. > The latest versions don’t. > > Once that restriction is removed, having the main loop run implicitly much > as the gevent library does (when the Hub singleton is requested) is easy. > > I need to put that little brick in there, and then everything will run > smoothly J > > > > K > > > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *Aleksandar Radulovic > *Sent:* 23. maí 2014 11:36 > > > *To:* The Stackless Python Mailing List > *Subject:* Re: [Stackless] goless > > > > Speaking of which, when can we see some more documentation or examples on > stacklesslib? ;) > > > > I was fiddling with it the other day and couldn't find any good enough > examples of stacklesslib usage.. > > > > Cheers, > > alex > > > > On Tue, May 20, 2014 at 12:13 PM, Kristján Valur Jónsson < > [email protected]> wrote: > > You may want to take a look at the latest version of “stacklesslib”, > particularly the stacklesslib.wait module. We now have “waitable” > channels, so that you can do similar things to > > select, e.g. > > > > c1 = stacklesslib.wait.WaitChannel() > > c2 = stacklesslib.wait.WaitChannel() > > … > > for c in stacklesslib.wait.iwait([c1, c2]): > > if c is c1: percolate() > > elif c is c2: promulgate() > > > > A “WaitChannel” is ready when its balance is non-zero. > > There are also “Sendable” and “Receivable” adapters for WaitChannels to in > order to wait for either positive or negative balance. > > > > The stacklesslib.util.QueueChannel() is a channel with a fifo queue, which > can be either unbounded (the default) or have a maximum length. This is, I > believe, similar to Go’s channels. > > > > K > > > > > > *From:* [email protected] [mailto: > [email protected]] *On Behalf Of *Christian Tismer > *Sent:* 18. maí 2014 00:00 > *To:* The Stackless Python Mailing List > *Subject:* Re: [Stackless] goless > > > > On 18.04.14 12:46, Kristján Valur Jónsson wrote: > > Hi, I though’t I’d mention here an experimental problem that a few of my > colleagues worked on during PyCon: > > Goless! > > http://goless.readthedocs.org/en/latest/index.html > > > > It also shows how more complex behavior can be built on top of the > relatively simple primitives that stackless provides. > > > (a bit late, but anyway better than never) > > Yes, quite neat thing. > This could be used as an interesting example for the Stackless talk. > > cheers - Chris > > p.s.: actually, I'm studying Go a bit, in order to understand > how they do stuff, how they lock, how they schedule, ... > > -- > > Christian Tismer :^) [email protected] > > Software Consulting : http://www.stackless.com/ > > Karl-Liebknecht-Str. 121 : http://www.pydica.net/ > > 14482 Potsdam : GPG key -> 0xFB7BEE0E > > phone +49 173 24 18 776 fax +49 (30) 700143-0023 > > > _______________________________________________ > Stackless mailing list > [email protected] > http://www.stackless.com/mailman/listinfo/stackless > > > > > > -- > a lex 13 x > http://a13x.net | @a13xnet > > > _______________________________________________ > Stackless mailing list > [email protected] > http://www.stackless.com/mailman/listinfo/stackless > > > > _______________________________________________ > Stackless mailing list > [email protected] > http://www.stackless.com/mailman/listinfo/stackless >
_______________________________________________ Stackless mailing list [email protected] http://www.stackless.com/mailman/listinfo/stackless
