[Distutils] short circuiting module lookups

P.J. Eby pje at telecommunity.com
Tue Apr 7 20:55:26 CEST 2009


At 02:23 PM 4/7/2009 -0400, Jim Fulton wrote:

>On Apr 7, 2009, at 9:28 AM, P.J. Eby wrote:
>
>>At 11:54 PM 4/7/2009 +1200, Noah Gift wrote:
>>>1.  In the case of entry points for setuptools, it actually recurses
>>>into EVERY egg directory in your path, not just the egg you
>>>requested,
>>>adds them to your sys.path and additionally looks for four files
>>>inside of every egg.  On a laptop on local storage, this doesn't
>>>matter, but when thousands of machines hit the same filer, with many
>>>python processes, bad things happen...
>>
>>Install your eggs with --multi-version, and then only the eggs that
>>are required for the running script will be added to sys.path or
>>have their contents opened.  (Installing them as zip files rather
>>than directories may also speed this up.)
>
>
>My experience on Linux is that installing eggs as Zip files slows
>imports.

In general, perhaps.  But if they're not actually *on* sys.path, as I 
proposed above, then it should not slow down all imports, and instead 
should speed up the entry point lookups.  Were your tests using 
--multi-version install (i.e., eggs not on sys.path)? 



More information about the Distutils-SIG mailing list