[Rd] R process killed when allocating too large matrix (Mac OS X)

Kirill Müller kirill.mueller at ivt.baug.ethz.ch
Fri May 13 11:03:22 CEST 2016


On 12.05.2016 09:51, Martin Maechler wrote:
>      > My ulimit package exposes this API ([1], should finally submit it to
>      > CRAN); unfortunately this very API seems to be unsupported on OS X
>      > [2,3]. Last time I looked into it, neither of the documented settings
>      > achieved the desired effect.
>
>      > -Kirill
>
>      > [1] http://krlmlr.github.io/ulimit
>      > [2]
>      > http://stackoverflow.com/questions/3274385/how-to-limit-memory-of-a-os-x-program-ulimit-v-neither-m-are-working
>      > [3]
>      > https://developer.apple.com/library/ios/documentation/System/Conceptual/ManPages_iPhoneOS/man2/getrlimit.2.html
>
>
> ...
>
> In an ideal word, some of us,
>      from R core, Jeroen, Kyrill, <one person knowing much about Windows>,
>      maintainer("microbenchmark>, ...
> would sit together and devise an R function interface (based on
> low level platform specific interfaces, specifically for at least
> Linux/POSIX-compliant, Mac, and Windows) which would allow
> something  like your rlimit(..) calls below.
>
> We'd really need something to work on all platforms ideally,
> to be used by R package maintainers
> and possibly even better by R itself at startup, setting a
> reasonable memory cap - which the user could raise even to +Inf (or lower
> even more).
>
I haven't found a Windows API that allows limiting the address space, 
only one that limits the working set size; it seems likely that this is 
the best we can get on OS X, too, but then my experience with OS X is 
very limited.

mallinfo() is used on Windows and seems to be available on Linux, too, 
but not on OS X.


-Kirill



More information about the R-devel mailing list