On Mon, Dec 13, 2010 at 10:51 PM, Miquel Torres <[email protected]> wrote: > @Maciej: it doesn't make a lot of sense. Looking at this graph: > http://speed.pypy.org/comparison/?exe=2%2B35,4%2B35,1%2B172,3%2B172&ben=11,14,15&env=1&hor=false&bas=none&chart=normal+bars > > slowspitfire is much faster than the other two. Is that because it > performs more iterations?
I think it's apples to oranges (they have different table sizes and different number of iterations) > > Also, how come pypy-c-jit is faster than cpython or psyco precisely in > cstringio, where performance should be dependent on cstringIO and thus > be more similar across interpreters? because having a list of small strings means you have a large (old) object referencing a lot of young objects, hence GC cost. It's not the case with cstringio where you have a single chunk of memory which does not contain GC pointers. > > > 2010/12/13 Leonardo Santagada <[email protected]>: >> why not have only 2 versions, both with the same size table and name >> one spitfire_cstringio and the other spitfire_strjoin? I think it >> would make things clearer. >> >> >> On Mon, Dec 13, 2010 at 2:43 PM, Maciej Fijalkowski <[email protected]> wrote: >>> Hi. >>> >>> spitfires are confusing. >>> >>> slowspitfire and spitfire use ''.join(list-of-strings) where >>> spitfire_cstringio uses cStringIO instead. >>> >>> spitfire and spitfire_cstringio use smaller table to render (100x100 I >>> think) which was the default on original benchmarks >>> >>> slowspitfire uses 1000x1000 (which is why it used to be slower than >>> spitfire) and was chosen by US guys to let the JIT warm up. We should >>> remove _slow these days. >>> >>> On Mon, Dec 13, 2010 at 5:08 PM, Miquel Torres <[email protected]> >>> wrote: >>>> sorry, I meant the opposite. To recap, according to >>>> http://code.google.com/p/unladen-swallow/wiki/Benchmarks, >>>> spitfire: psyco >>>> slowspitfire: pure python >>>> >>>> in addition we have spitfire_cstringio, which uses a c module (so it >>>> is even faster). >>>> >>>> what is vanilla spitfire in our case? >>>> >>>> >>>> 2010/12/13 Miquel Torres <[email protected]>: >>>>> @Carl Friedrich & exarkun: thanks, I've added those. >>>>> >>>>> only spectral-norm, slowspitfire and ai to go. >>>>> >>>>> slowspitfire is described at the Unladen page as using psyco, but it >>>>> doesn't make sense in our case? >>>>> >>>>> >>>>> >>>>> 2010/12/13 <[email protected]>: >>>>>> On 08:20 am, [email protected] wrote: >>>>>>> >>>>>>> Thanks all for the input. >>>>>>> I've compiled a list based on your mails, the Unladen benchmarks page >>>>>>> (http://code.google.com/p/unladen-swallow/wiki/Benchmarks), and the >>>>>>> alioth descriptions. Here is an extract of the current speed.pypy.org >>>>>>> admin: >>>>>>> >>>>>>> [snip] >>>>>>> twisted_iteration >>>>>> >>>>>> Iterates a Twisted reactor as quickly as possible without doing any work. >>>>>>> >>>>>>> twisted_names >>>>>> >>>>>> Runs a DNS server with Twisted Names and then issues requests to it over >>>>>> loopback UDP. >>>>>>> >>>>>>> twisted_pb >>>>>> >>>>>> Runs a Perspective Broker server with a no-op method and invokes that >>>>>> method >>>>>> over loopback TCP with some strings, dictionaries, and tuples as >>>>>> arguments. >>>>>> >>>>> >>>> _______________________________________________ >>>> [email protected] >>>> http://codespeak.net/mailman/listinfo/pypy-dev >>>> >>> _______________________________________________ >>> [email protected] >>> http://codespeak.net/mailman/listinfo/pypy-dev >> >> >> >> -- >> Leonardo Santagada >> > _______________________________________________ [email protected] http://codespeak.net/mailman/listinfo/pypy-dev
