2016-11-10 21 views
5

Bất cứ ai có thể giúp tôi tìm ra cách thay đổi kích thước tối đa của các đối tượng toàn cầu được chuyển đến một mục trong gói trong tương lai?cách điều chỉnh future.global.maxSize trong R?

Dưới đây là một ví dụ vô dụng cho thấy quan điểm của tôi

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

tôi nhận được lỗi sau:

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’).

bất cứ ai có thể giúp tôi hiểu làm thế nào để điều chỉnh tùy chọn đó future.global.maxSize? Tôi đã thử options(future.global.maxSize = 1500000) nhưng điều đó không hiệu quả.

Trả lời

5

Tìm hiểu và tìm hiểu cách bạn có thể chỉnh sửa tùy chọn cho bất kỳ gói nào.

Đây là dòng mà tôi đã sử dụng:

options(future.globals.maxSize= 891289600) 

Nếu bạn muốn tùy chỉnh giới hạn của bạn, tôi thấy trong nguồn gói giới hạn đã được tính toán và đây là cách bạn sẽ tính toán kích thước cho một 850mb giới hạn:

850*1024^2 = 891289600 

Cảm ơn!

+1

Tác giả của tương lai tại đây: Điều này là chính xác; sử dụng tùy chọn 'future.globals.maxSize' (số nhiều) - có lỗi đánh máy trong thông báo lỗi. Điều này đã được sửa cho bản phát hành tiếp theo (tương lai> 1.2.0), cf. https://github.com/HenrikBengtsson/future/issues/116 – HenrikB

+0

Tuyệt vời! Cảm ơn bạn đã thêm ghi chú và cảm ơn bạn vì gói tuyệt vời. –

Các vấn đề liên quan