Roger-123
Roger-123

Reputation: 2520

How to adjust future.global.maxSize?

Here's a useless example that shows my point

library(future)
a = 1:200000000
object.size(a)
test %<-% head(a)

I get the following error:

Error in getGlobalsAndPackages(expr, envir = envir, persistent = persistent, : The total size of all global objects that need to be exported for the future expression (‘head(a)’) is 762.95 MiB. This exceeds the maximum allowed size of 500.00 MiB (option 'future.global.maxSize'). There are two globals: ‘a’ (762.94 MiB of class ‘numeric’) and ‘head’ (10.05 KiB of class ‘function’).

Can anyone help me understand how to adjust that future.global.maxSize option? I tried options(future.global.maxSize = 1500000) but that didn't work.

Upvotes: 61

Views: 33174

Answers (1)

Roger-123
Roger-123

Reputation: 2520

Got it figured out and learned how you can edit options for any package.

This is the line that I used (edit: the change was from 'global' to 'globals':

options(future.globals.maxSize= 891289600)

If you want to customize your limit, I saw in the package source that the limit was calculated and this is how you would calculate the size for an 850mb limit:

850*1024^2 = 891289600

Thanks!

Upvotes: 99

Related Questions