Psyco alternative

K

king kikapu

Hi,

it seems that Psyco's author will not port it for the upcoming Python
3000 release :(
So, for us who use it we will continue to use CPython 2.5.x version
for some time to come. Is there an alternative to Psyco so i can have
a look at ?

Thanks in advance.
 
P

Paul Rubin

king kikapu said:
it seems that Psyco's author will not port it for the upcoming Python
3000 release :(

I think the idea is it will be part of PyPy and you should use that.
 
K

king kikapu

I think the idea is it will be part of PyPy and you should use that.

I know that his efforts are on PyPy now but i do not know when PyPy is
going to be stable and if i can use it with my current "development
stack" (PyQt, Eric4 etc). I mean, i do not know if it will be possible
to "abandon" CPYthon and use PyPy instead.
 
D

Diez B. Roggisch

king said:
I know that his efforts are on PyPy now but i do not know when PyPy is
going to be stable and if i can use it with my current "development
stack" (PyQt, Eric4 etc). I mean, i do not know if it will be possible
to "abandon" CPYthon and use PyPy instead.

Currently? No way. It's *way* to slow.

Diez
 
K

king kikapu

Currently? No way. It's *way* to slow.

Diez

Ok, i know this. The one that i do not know, is if, let'say, in 2
years it will be ready for seriously development, PyPy will aim to
"replace" CPython entirely ?? We are talking about an whole new
distribution ?

As for psyco, are there any alternatives to use now ?
 
D

Diez B. Roggisch

Ok, i know this. The one that i do not know, is if, let'say, in 2
years it will be ready for seriously development, PyPy will aim to
"replace" CPython entirely ?? We are talking about an whole new
distribution ?

Most certainly not. It's the goal of each language to finally become
self-hosted, and I hope we see that for python. But that's nothing that
will happen anytime soon (soon being at least half a decade), and most
probably not for the 2.x-versions.
As for psyco, are there any alternatives to use now ?

Nope, but I heard through the grapevine that while it won't be supported for
all times to come, a new version is in the making.

But ultimately, the author says that the approach is flawed, so at *some*
point it will be discontinued. But that could be said about nearly
everything, couldn't it?

Diez
 
K

king kikapu

Nope, but I heard through the grapevine that while it won't be supported for
all times to come, a new version is in the making.

Aha!! It seems you have better "sources" than me! :)

But ultimately, the author says that the approach is flawed, so at *some*
point it will be discontinued. But that could be said about nearly
everything, couldn't it?

Diez

It is a pity because this module *does* really solve some problems...
 
K

king kikapu

If it's about "some problems", then maybe Cython is an alternative.

Hmmm...thanks but i think Pyrex-like solution is not the ideal one.
Coming from C# and having 8 years of expertise on it, i have gain a
very positive thinking about jit compilers and i think that psyco (ok,
a just-in-time specializer) is a more easy (and more correct) way to
go that mixing 2 languages.
 
B

bearophileHUGS

Diez B. Roggisch:
the author says that the approach is flawed, so at *some*
point it will be discontinued.

Can't Psyco be improved, so it can compile things like:

nums = (i for i in xrange(200000) if i % 2)
print sum(nums)

I think the current Psyco runs slower than Python with generators/
iterators. To speed up that code with Psyco you have to write this:

nums = [i for i in xrange(200000) if i % 2]
print sum(nums)

Bye,
bearophile
 
P

Paul Boddie

[Psyco maintenance and further development]
Nope, but I heard through the grapevine that while it won't be supported for
all times to come, a new version is in the making.

But ultimately, the author says that the approach is flawed, so at *some*
point it will be discontinued. But that could be said about nearly
everything, couldn't it?

From what I've seen from browsing publicly accessible materials,
there's a certain commercial interest in seeing Psyco updated
somewhat. So, whether it gets discontinued depends on the usual
factors of satisfying a need and there being qualified and motivated
people to work on it.

Paul
 
K

king kikapu

[Psyco maintenance and further development]
Nope, but I heard through the grapevine that while it won't be supported for
all times to come, a new version is in the making.
But ultimately, the author says that the approach is flawed, so at *some*
point it will be discontinued. But that could be said about nearly
everything, couldn't it?

From what I've seen from browsing publicly accessible materials,
there's a certain commercial interest in seeing Psyco updated
somewhat. So, whether it gets discontinued depends on the usual
factors of satisfying a need and there being qualified and motivated
people to work on it.

Paul

Let's hope that this isn't going to happen (psyco dicontinued). But i
do not have positive thinking after an email i got for the author last
week. Unless something has changed...
 
C

Christian Tismer

Diez B. Roggisch:

Can't Psyco be improved, so it can compile things like:

nums = (i for i in xrange(200000) if i % 2)
print sum(nums)

Although my main goal is to support PyPy as much as possible,
I am currently taking a pause in favor of filling the gap
for psyco, supporting generators. The details are not yet
settled, maybe we choose to change the project name,
to avoid the author getting bugged with questions about
this extra stuff.

- chris

--
Christian Tismer :^) <mailto:[email protected]>
tismerysoft GmbH : Have a break! Take a ride on Python's
Johannes-Niemeyer-Weg 9A : *Starship* http://starship.python.net/
14109 Berlin : PGP key -> http://wwwkeys.pgp.net/
work +49 30 802 86 56 mobile +49 173 24 18 776 fax +49 30 80 90 57 05
PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04
whom do you want to sponsor today? http://www.stackless.com/
 
K

kib

Christian Tismer a écrit :
Although my main goal is to support PyPy as much as possible,
I am currently taking a pause in favor of filling the gap
for psyco, supporting generators. The details are not yet
settled, maybe we choose to change the project name,
to avoid the author getting bugged with questions about
this extra stuff.

- chris

Maybe try Psychotic
http://code.google.com/p/psychotic/

I really like the screencast !

....sorry for the bad joke :)
 
S

sturlamolden

As for psyco, are there any alternatives to use now ?


When Cython has implemented all of Python's syntax, we can replace
CPython's compiler and bytecode interpreter with Cython and a C
compiler. Cython can be one or two orders of magnitude faster than
CPython.
 
S

sturlamolden

Hmmm...thanks but i think Pyrex-like solution is not the ideal one.
Coming from C# and having 8 years of expertise on it, i have gain a
very positive thinking about jit compilers and i think that psyco (ok,
a just-in-time specializer) is a more easy (and more correct) way to
go that mixing 2 languages.
 
S

sturlamolden

Hmmm...thanks but i think Pyrex-like solution is not the ideal one.
Coming from C# and having 8 years of expertise on it, i have gain a
very positive thinking about jit compilers and i think that psyco (ok,
a just-in-time specializer) is a more easy (and more correct) way to
go that mixing 2 languages.


The problem with Python, when we are talking out jit compilation, is
it's reliance on attribute lookups in hash tables. Java and C# do not
have dynamically bound attributes, and can implement classes using
vtables. Attributes cannot be rebound in Java or C#. A Python jit
cannot even do elementary optimizations like keeping an integer in a
register. This makes it a lot easier to make an efficient jit compiler
for Java or C#. Python is more like Common Lisp. There is no efficient
jit for Lisp. But there are very fast implementations that depend on
optional static typing (e.g. SBCL and CMUCL). That could be an option
of Python as well, by including something like Cython and a C
compiler. Any module that has a cdef is passed to Cython and CC
instead of the usual bytecode compiler and interpreter.
 
S

sturlamolden

From what I've seen from browsing publicly accessible materials,
there's a certain commercial interest in seeing Psyco updated
somewhat.

YouTube uses Psyco.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top