[sage-devel] Re: Python Performance Improvement
Could you be more specific about what you think these guys don't understand? To a non-python expert type there isn't much difference between the article and the wiki information. I was very impressed at the goals as spelled out on the wiki and they seem to have a decent roadmap up. Is it the goals themselves which you feel are bollucks or do you think they don't understand the technical workings of python? Perhaps, as a non-expert, I won't understand, but I am interested to hear, if you have the time to explain. Bill. On 27 Mar, 05:32, Craig Citro craigci...@gmail.com wrote: I read the article with excitement, but unfortunately that article is total BS -- it's reporting at its worst, and then some. The actual project that article is about http://code.google.com/p/unladen-swallow/wiki/ProjectPlan seems to be massively misrepresented by the arstechnica aricle. As far as I can tell this is in no way some official Google project as the article claims, and there's not much on that wiki that gives me confidence the project members know what they are doing. I definitely didn't abhor the article as much as William, but clearly the writer was confused about a few things. However, it looks like the Unladen Swallow folks are doing something I commend -- trying to get pieces of their branch merged into mainline CPython a little bit at a time. Here's a post by the head of the project: http://mail.python.org/pipermail/python-dev/2009-March/087737.html (where he immediately clarifies the bit about google-sponsored), which is part of the following thread on python-dev: http://mail.python.org/pipermail/python-dev/2009-March/087728.html It seems like some of the Python folks are already stepping up to review some of the code, which means we'll probably get some first-hand opinions soon on whether or not they know what they're doing. -cc --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
Could you be more specific about what you think these guys don't understand? Were you asking me or William? My impression from reading through the wiki is that these guys *do* know what they're doing, contrary to what William seemed to think, though I suspect neither of us has actually read any code -- so probably both opinions should be taken with a big grain of salt. I was pointing out the code submission and review from the Python community, because that will be the real test ... -cc --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
(In reference to http://arstechnica.com/open-source/news/2009/03/google-launches-project-to-boost-python-performance-by-5x.ars) On Fri, Mar 27, 2009 at 11:37 AM, Bill Hart goodwillh...@googlemail.com wrote: Could you be more specific about what you think these guys don't understand? To a non-python expert type there isn't much difference between the article and the wiki information. I was very impressed at the goals as spelled out on the wiki and they seem to have a decent roadmap up. Is it the goals themselves which you feel are bollucks or do you think they don't understand the technical workings of python? Perhaps, as a non-expert, I won't understand, but I am interested to hear, if you have the time to explain. All I wrote before was there's not much on that wiki that gives me confidence the project members know what they are doing. I mean that literally, i.e., that there wasn't anything that gives me confidence that they know what they're doing. I didn't mean to say I think they don't know what they are doing, since I don't know if they do or not. Why should a a few guys who read some papers be able to massively beat (a factor of 5!?) the work of the entire Python development community over 15 years? I certainly didn't see anything to convince me that they can pull that off. I'm certainly not saying they won't or can't. In fact, I really hope they do since it would benefit us all. It's just that with Python every few months it seems like another project pops up with the goal to speed up Python by a factor of 5-10, and they fall by the wayside after a few years... except Cython, which actually succeeds. -- William -- William Stein Associate Professor of Mathematics University of Washington http://wstein.org --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
On Friday 27 March 2009 02:37:44 pm Bill Hart wrote: Could you be more specific about what you think these guys don't understand? Not to answer your question. I'm curious about William's reasoning as well. However, I think they don't give a lot of evidence about why they believe their radically rewritten python could be a 5x speed improvement. To my eye's that's a huge claim to make for the amount of code they seem to have. I don't really see much justification for the claim. I've looked at LLVM and I think it's a pretty exciting project so their use of that gives them some credibility to me. Time will tell, but python seems pretty fast to me as long as you don't call functions and don't do tons of things you'd never do in C (e.g. wild amounts of list slices). We expect function calls to be slow in a dynamic language like python, so I don't mean that to be derogatory. -- Joel --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
Not to press the point, but isn't: Our long-term proposal is to replace CPython's custom virtual machine with a JIT built on top of LLVM, while leaving the rest of the Python runtime relatively intact. the explanation of how they propose to get some speed out of it. In other words they are using a technologically superior method of interpreter operation. I'm interested to know if you have an opinion on that. As for many projects springing up which aim to do this, presumably they give up because of the massive number of hours involved, rather than it being impossible. I think of the recent speedup in the boot time of Ubuntu linux and the speedup of the Pari interpreter as examples of open source projects which have recently had massive speedups due to technological improvements. Bill. On 27 Mar, 21:13, Joel B. Mohler j...@kiwistrawberry.us wrote: On Friday 27 March 2009 02:37:44 pm Bill Hart wrote: Could you be more specific about what you think these guys don't understand? Not to answer your question. I'm curious about William's reasoning as well. However, I think they don't give a lot of evidence about why they believe their radically rewritten python could be a 5x speed improvement. To my eye's that's a huge claim to make for the amount of code they seem to have. I don't really see much justification for the claim. I've looked at LLVM and I think it's a pretty exciting project so their use of that gives them some credibility to me. Time will tell, but python seems pretty fast to me as long as you don't call functions and don't do tons of things you'd never do in C (e.g. wild amounts of list slices). We expect function calls to be slow in a dynamic language like python, so I don't mean that to be derogatory. -- Joel --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
On Fri, Mar 27, 2009 at 4:35 PM, Bill Hart goodwillh...@googlemail.com wrote: Not to press the point, but isn't: Our long-term proposal is to replace CPython's custom virtual machine with a JIT built on top of LLVM, while leaving the rest of the Python runtime relatively intact. the explanation of how they propose to get some speed out of it. In other words they are using a technologically superior method of interpreter operation. I'm interested to know if you have an opinion on that. Well, just reading that paragraph isn't enough... replacing ceval.c with an LLVM-based JIT in a straightforward way should be more-or-less equivalent to Cython's performance on pure-Python code (that is, the speedup is much less than 2x). You really need type information to do much better; fortunately, they do plan to use type information (either using type annotations, or by guessing that the types will likely be the same every time the code is executed). I'm pretty sure that Javascript implementations have speed up by more than 5x in the last year; IMHO similar speedups should be possible for Python. (Whether this is possible while remaining 100% compatible with current Python source and extension modules is another question.) Carl --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
Thanks, that does answer my questions. I'm not an expert, but I did find the possibility of speeding up python this much was an interesting one. Let's hope they'll succeed, though I guess it may take them years. I hope they are in it for the long run. Bill. On 28 Mar, 01:45, Carl Witty carl.wi...@gmail.com wrote: On Fri, Mar 27, 2009 at 4:35 PM, Bill Hart goodwillh...@googlemail.com wrote: Not to press the point, but isn't: Our long-term proposal is to replace CPython's custom virtual machine with a JIT built on top of LLVM, while leaving the rest of the Python runtime relatively intact. the explanation of how they propose to get some speed out of it. In other words they are using a technologically superior method of interpreter operation. I'm interested to know if you have an opinion on that. Well, just reading that paragraph isn't enough... replacing ceval.c with an LLVM-based JIT in a straightforward way should be more-or-less equivalent to Cython's performance on pure-Python code (that is, the speedup is much less than 2x). You really need type information to do much better; fortunately, they do plan to use type information (either using type annotations, or by guessing that the types will likely be the same every time the code is executed). I'm pretty sure that Javascript implementations have speed up by more than 5x in the last year; IMHO similar speedups should be possible for Python. (Whether this is possible while remaining 100% compatible with current Python source and extension modules is another question.) Carl --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
On Thu, Mar 26, 2009 at 6:25 PM, Daryl Hammond dhamm...@aol.com wrote: I found this article on Python performance improvement interesting: http://arstechnica.com/open-source/news/2009/03/google-launches-project-to-boost-python-performance-by-5x.ars Google's goal appears to be a 5x performance improvement in Python. I read the article with excitement, but unfortunately that article is total BS -- it's reporting at its worst, and then some. The actual project that article is about http://code.google.com/p/unladen-swallow/wiki/ProjectPlan seems to be massively misrepresented by the arstechnica aricle. As far as I can tell this is in no way some official Google project as the article claims, and there's not much on that wiki that gives me confidence the project members know what they are doing. Anyway, this kind of reminds me of this (failed?) but massive project: http://codespeak.net/pypy/dist/pypy/doc/ or this one: http://psyco.sourceforge.net/ -- William --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---
[sage-devel] Re: Python Performance Improvement
I read the article with excitement, but unfortunately that article is total BS -- it's reporting at its worst, and then some. The actual project that article is about http://code.google.com/p/unladen-swallow/wiki/ProjectPlan seems to be massively misrepresented by the arstechnica aricle. As far as I can tell this is in no way some official Google project as the article claims, and there's not much on that wiki that gives me confidence the project members know what they are doing. I definitely didn't abhor the article as much as William, but clearly the writer was confused about a few things. However, it looks like the Unladen Swallow folks are doing something I commend -- trying to get pieces of their branch merged into mainline CPython a little bit at a time. Here's a post by the head of the project: http://mail.python.org/pipermail/python-dev/2009-March/087737.html (where he immediately clarifies the bit about google-sponsored), which is part of the following thread on python-dev: http://mail.python.org/pipermail/python-dev/2009-March/087728.html It seems like some of the Python folks are already stepping up to review some of the code, which means we'll probably get some first-hand opinions soon on whether or not they know what they're doing. -cc --~--~-~--~~~---~--~~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~--~~~~--~~--~--~---