laurent oget wrote:
> is there something i can do to prevent the following script from leaking 
> memory?


There seems to be something happening.
(more below)

> Laurent
> 
> from rpy2.robjects import r,RVector,RDataFrame
> from rpy2.rlike.container import TaggedList
> from math import sin
> import array
> 
> size=100
> xx=[]
> for x in range(size):
>     xx.append(RVector(array.array('f',[sin(0.1*(y+x))for y in range(1000)])))
> 


(side note: the line above could write easier

from rpy2.robjects import FloatVector

for x in range(size):
     xx.append(FloatVector([sin(0.1 * (x+y) for y in range(1000)]))
)


> 
> formula='x%s~%s'%(0,'+'.join(['x%d'%(i+1) for i in range(size-1)]))
> 
> t=['x%d'%i for i in range(size)]
> df=RDataFrame(TaggedList(xx,tags=t))
> 
> done=False
> i=0
> while not done:
>     print i
>     i=i+1
>     model=r.lm(formula,df)

I thought that the following would solve the problem... but it does not.
The increase in running speed suggests that this is because there is 
less copying (therefore the problem about copying and protecting R 
objects and never unprotecting them). The growth of the process is 
slower, but still there...


from rpy2.robjects import globalEnv

globalEnv["dataf"] = df

done=False
i=0
while not done:
     print i
     i=i+1
     model=r('lm("%s", data=dataf)' %formula)


The problem will likely require a closer look.


> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> rpy-list mailing list
> rpy-list@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/rpy-list


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
rpy-list mailing list
rpy-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/rpy-list

Reply via email to