On Wed, 2009-07-22 at 16:16 -0400, David Turner wrote:
> On Wed, 2009-07-22 at 15:03 -0400, Stef Telford wrote:
> > Oleg Broytmann wrote:
> > > On Wed, Jul 22, 2009 at 02:26:57PM -0400, Stef Telford wrote:
> > >   
> > >>>> yes. evals appear to be  a 'bad' thing here :\
> > >>>>         
> > >>>    Well, those evals are in sqlmeta.addColumn and .addJoin methods, so 
> > >>> they
> > >>> work once for every column in the table, but that's all. After the class
> > >>> has been created and populated - whatever you do with rows (class 
> > >>> instances)
> > >>> - those evals are not executed.
> > >>>
> > >>>       
> > >> Ah. hrm. *rubs chin* perhaps it's not the evals then. It seems that the  
> > >> instantiations get .. well .. 'slower' over time.
> > >>     
> > >
> > >    Curiouser and curiouser. IWBN to find where the slowness is *near the
> > > end* of the loop - i.e. when instantiation becomes really slow.
> > >
> > >   
> > It could be purely a 'feeling' .. I don't have any numbers to back it up 
> > and I am not entirely sure -how- to benchmark that. This machine does 
> > have 8gb of ram in it, and a fairly beefy quad core. I have never seen 
> > any process get near memory exhaustion, which I could believe the calls 
> > to 'malloc' could slow down but.. yes.
> 
> Python's GC takes time roughly proportional to the number of live
> objects.  The GC is called every 700 allocations (7000, 70000 for older
> generations), so allocation also takes time proportional to number of
> live objects.

http://www.gossamer-threads.com/lists/python/dev/658396?page=last <--
see this thread, for instance.


------------------------------------------------------------------------------
_______________________________________________
sqlobject-discuss mailing list
sqlobject-discuss@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sqlobject-discuss

Reply via email to