Jorey Bump wrote ..
> I've installed it on a lightly used production server so I can test it
> against some real-world apps. Initial testing indicates that it's 10-20%
> slower than 3.2.10; I'm not sure why.
> 
> Can I turn on the legacy importer with a runtime configuration, or do I
> need to recompile? I'd like to compare the two.

Expected it would be slower for a few reasons. I don't have a good system on
which to do any comparative tests, so was never sure how much performance hit
there would be. I did state though early on that the initial aim would be to
get it working properly and then we can look at the performance and tweak it so
as to regain as much as possible of what was lost.

The main culprit will be the new module importer. This is primarily going to be
due to it doing extra checks on whether module files or other modules they have
imported, have been modified. I would expect that this would be the bulk of any
performance loss especially since done in Python code.

There are two things you can do to gauge where any loss arises. First is to
ensure that module reloading is turned off and see how that changes things.

  PythonAutoReload Off

The second is to reenable the old module importer as a comparison. This needs
to be done at global scope within main Apache configuration:

  PythonOption mod_python.legacy.importer *

The argument is actually a comma separated list of interpreter names for which
to use the old importer. Listing just '*' has the effect of using the old 
importer
for all interpreter instances.

Graham

Reply via email to