[Rd] Passing a large array to .Call by reference

Boris Aronshtam baronshtam at lightminersystems.com
Tue Jan 14 23:46:03 CET 2014

Sorry for the post. My mistake. The further investigation shows that .Call() passes arrays/vectors by reference. 

-----Original Message-----
From: Dirk Eddelbuettel [mailto:edd at debian.org] 
Sent: Monday, January 13, 2014 6:27 PM
To: Boris Aronshtam
Cc: r-devel at r-project.org
Subject: Re: [Rd] Passing a large array to .Call by reference

On 14 January 2014 at 02:02, Boris Aronshtam wrote:
| I need to pass a large array to my C function. I am using .Call(). I can clearly see according to the memory consumption (reported by gc()) that the array is duplicated. Is there a way to avoid this duplication and pass the array by reference?

Staring at gc() is at approximate at best. 

R has memory profiling, see Writing R Extensions for how to use it.

There is no code in your post, so not much else I can comment on.


Dirk Eddelbuettel | edd at debian.org | http://dirk.eddelbuettel.com

More information about the R-devel mailing list