Hello! I haven't been following the list, cause I joined yesterday in order to share my impressions of PyPy here, so I don't know if these kinds of posts are frequent and annoying. I'm using PyPy the last few weeks in a qualitative spatial reasoner I am developing. The speedup is up to 10 times over CPython, and it grows even more as the input size grows bigger, but that's not what impressed me the most, because I was expecting that. You can find in my presentation here<http://cgi.di.uoa.gr/~sioutis/files/PyRCC8.pdf> at slides 25 and 33 some comparison diagrams against C (red color) and C++ (blue color) implementations of analogous reasoners. I am using different data structures and slightly modified algorithms, so you should not consider that the comparison diagrams is upon the exact same piece of code. Long story short, you will find out that the pypy reasoner ranks in positions 1 and 2 respectively, and I believe it will also rank 1 in the second diagram if I grow the input even more (I currently don't have enough memory and the C implementation tops it at 900 nodes, so it would be unreasonable and unfair to run on my own). The impressive part of both diagrams is the scalability pypy offers me. It starts slower than the statically compiled languages, but the more you push the input sizes, the faster it goes compared to the other two. I started developing the reasoner in python not necessarily to be fast in timings, but because I want to go beyond the state of the art in qualitative spatial reasoning and present sth new, so python was the language of choice to do it fast, in terms of working hours :) This is future work, that will be based on the current reasoner. *Thank you* for being patient, if you actually took the time to read my story, and have a Merry Xmas! Mike
On Sat, Dec 24, 2011 at 3:46 PM, Michael Sioutis <papito.dit@gmail.com> wrote:
Hello!
I haven't been following the list, cause I joined yesterday in order to share my impressions of PyPy here, so I don't know if these kinds of posts are frequent and annoying.
Hi Michael They're more than welcome here. PyPy lacks a bit lots of success stories, so we definitely welcome each of them
I'm using PyPy the last few weeks in a qualitative spatial reasoner I am developing. The speedup is up to 10 times over CPython, and it grows even more as the input size grows bigger, but that's not what impressed me the most, because I was expecting that.
You can find in my presentation here at slides 25 and 33 some comparison diagrams against C (red color) and C++ (blue color) implementations of analogous reasoners. I am using different data structures and slightly modified algorithms, so you should not consider that the comparison diagrams is upon the exact same piece of code. Long story short, you will find out that the pypy reasoner ranks in positions 1 and 2 respectively, and I believe it will also rank 1 in the second diagram if I grow the input even more (I currently don't have enough memory and the C implementation tops it at 900 nodes, so it would be unreasonable and unfair to run on my own).
The impressive part of both diagrams is the scalability pypy offers me. It starts slower than the statically compiled languages, but the more you push the input sizes, the faster it goes compared to the other two.
I started developing the reasoner in python not necessarily to be fast in timings, but because I want to go beyond the state of the art in qualitative spatial reasoning and present sth new, so python was the language of choice to do it fast, in terms of working hours :) This is future work, that will be based on the current reasoner.
Thank you for being patient, if you actually took the time to read my story, and have a Merry Xmas! Mike
This is all very impressive! The reason why pypy "scales" well is probably because JIT takes time to kick in, so for the short-running examples it does not run at the full speed. It's really cool to see PyPy enabling people to do *really cool stuff* in Python, that was not entirely possible before. Makes us want to work harder :) Thanks for sharing this! Cheers, fijal
participants (2)
-
Maciej Fijalkowski
-
Michael Sioutis