Hi Matt, what's your sessionInfo()? Can you try installing bigmemory as follows:
install.packages("bigmemory", repos="http://R-Forge.R-project.org") it'll get you the latest version, in which I cannot reproduce the problem you're reporting (ie, after gc(), I get all the RAM back) b On Sat, Feb 6, 2010 at 7:37 PM, Matthew Keller <mckellerc...@gmail.com> wrote: > Hi Steve and other R folks, > > Thanks for the suggestion. No - that doesn't work. I meant to put that > into my original email. To recap > > x <- > big.matrix(nrow=20000,ncol=500000,type='short',init=0,dimnames=list(1:20000,1:500000)) > #Gets around the 2^31 issue - yay! > #R takes 18 Gb RAM, so says top > > rm(x) #top says R still takes 18Gb RAM > gc() #top says R still takes 18Gb RAM > > How do I flush the memory? I thought maybe R/bigmemory would give up > the RAM if it was needed elsewhere, but apparently not: > > y <- > big.matrix(nrow=20000,ncol=500000,type='short',init=0,dimnames=list(1:20000,1:500000)) > #takes *another* 18Gb RAM, and takes it away from several other > processes I had running - OUCH! > > Any help would be appreciated. > > As an aside, I just want to say "thank you" to the teams developing > bigmemory, ff, and other packages meant to allow users of large > datasets to still use R. > > Matt > > > > On Fri, Feb 5, 2010 at 9:27 PM, Steve Lianoglou > <mailinglist.honey...@gmail.com> wrote: >> Hi, >> >> On Fri, Feb 5, 2010 at 9:24 PM, Matthew Keller <mckellerc...@gmail.com> >> wrote: >>> Hi all, >>> >>> I'm on a Linux server with 48Gb RAM. I did the following: >>> >>> x <- >>> big.matrix(nrow=20000,ncol=500000,type='short',init=0,dimnames=list(1:20000,1:500000)) >>> #Gets around the 2^31 issue - yeah! >>> >>> in Unix, when I hit the "top" command, I see R is taking up about 18Gb >>> RAM, even though the object x is 0 bytes in R. That's fine: that's how >>> bigmemory is supposed to work I guess. My question is how do I return >>> that RAM to the system once I don't want to use x any more? E.g., >>> >>> rm(x) >>> >>> then "top" in Unix, I expect that my RAM footprint is back ~0, but it >>> remains at 18Gb. How do I return RAM to the system? >> >> Maybe forcing R to do garbage collection might help? >> >> Try calling `gc()` after your call to `rm(x)` and see what `top` tells you. >> >> Did that do the trick? >> >> -steve >> >> -- >> Steve Lianoglou >> Graduate Student: Computational Systems Biology >> | Memorial Sloan-Kettering Cancer Center >> | Weill Medical College of Cornell University >> Contact Info: http://cbio.mskcc.org/~lianos/contact >> > > > > -- > Matthew C Keller > Asst. Professor of Psychology > University of Colorado at Boulder > www.matthewckeller.com > > ______________________________________________ > R-help@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.