An embedded and charset-unspecified text was scrubbed... Name: not available URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20120203/61d4fc29/attachment.pl>
Memory leaks in .C-interface
2 messages · Grigory Alexandrovich, Duncan Murdoch
On 12-02-03 9:26 AM, Grigory Alexandrovich wrote:
Hi,
I wrote a C-function which I call with the .C-interface ( something
like .C("foo", x, y) ).
The function does a lot of things.
Among<http://dict.leo.org/ende?lp=ende&p=_xpAA&search=things&trestr=0x8004>st
other things it allocates much memory (stack and heap).
Every heap allocation (with malloc) has a corresponding free call.
My problem is, that if I call this function many times in a for-loop,
the memory amount used by R
converges to 100% and the process is being killed at the end.
Clearing the workspace doesn't help, since the memory is not occupied by
R-objects.
Is it a known problem with the .C interface? How can I found out what
kind of data fills the memory and especially how can I clean it?
The .C() function will create duplicate copies of its arguments, but they aren't saved, so garbage collection should reclaim them. So it's most likely a problem in your own C code. Debugging those is hard. Duncan Murdoch
I work on Linux (OpenSuse 12.1) Thanks Grigory Alexandrovich [[alternative HTML version deleted]]
______________________________________________ R-help at 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.