Limitando a memória que o pacote raster usa no R?

10

Qual é a maneira mais fácil de limitar a memória que o rasterpacote usa Rpara 5 GB de RAM?

Idealmente, quero que qualquer raster que exceda esse tamanho seja gravado no disco rígido e analisado a partir de um arquivo temporário.

Estou usando o Windows 7 (64Bit) e a versão 3.0.3.

Aqui está um código com o qual eu estou jogando em uma máquina com 16 GB de RAM, mas ele continua chegando ao máximo quando estou lidando com grandes rasters:

require(raster)

memory.limit(size = 5000)
rasterOptions(format="GTiff",overwrite=TRUE,datatype="INT1S",
              tmpdir="C:/Research/BIN",tmptime=1.1,progress="text",chunksize=1000,
              maxmemory=1000)
rasterTmpFile("delete_me_")

r <- raster("myraster.tif")
r[r==0] <- NA

É nesse estágio do script que o uso da RAM aumenta para levar todos os 16 GB e depois para de funcionar e cancela a função.

O que preciso mudar aqui?

JPD
fonte

Respostas: