Aumentando (ou diminuindo) a memory disponível para processos R

Eu gostaria de aumentar (ou diminuir) a quantidade de memory disponível para R. Quais são os methods para conseguir isso?

A partir de:

http://gking.harvard.edu/zelig/docs/How_do_I2.html ( mirror )

Usuários do Windows podem receber o erro de que R ficou sem memory.

Se você já tiver o R ​​instalado e, subsequentemente, instalar mais RAM, talvez seja necessário reinstalar o R ​​para aproveitar a capacidade adicional.

Você também pode definir a quantidade de memory disponível manualmente. Feche R e, em seguida, clique com o botão direito do mouse no ícone do programa R (o ícone na área de trabalho ou no diretório de programas). Selecione “ Properties ”, e então selecione a aba “ Shortcut ”. Procure o campo “ Target ” e depois das aspas de fechamento em torno do local do executável R, adicione

–max-mem-size = 500 milhões

conforme mostrado na figura abaixo. Você pode aumentar esse valor em até 2 GB ou a quantidade máxima de RAM física instalada.

Se você receber o erro de que R não pode alocar um vetor de comprimento x, feche fora de R e adicione a seguinte linha ao campo “ Target ”:

–max-vsize = 500 milhões

ou conforme apropriado. Você sempre pode verificar a quantidade de memory disponível para R, digitando no prompt R

memory.limit() 

que lhe dá a quantidade de memory disponível em MB. Nas versões anteriores do R você precisava usar: round (memory.limit () / 2 ^ 20, 2)

Use memory.limit (). Você pode aumentar o padrão usando este comando, memory.limit (size = 2500), onde o tamanho está em MB. Você precisa estar usando 64 bits para aproveitar isso.

Uma outra sugestão é usar objects eficientes de memory sempre que possível: por exemplo, use uma matriz em vez de um data.frame.

  1. Compre mais ram
  2. Alterne para um sistema operacional de 64 bits. Combine com o ponto 1.

O Microsoft Windows aceita qualquer solicitação de memory de processos, se isso puder ser feito.

Não há limite para a memory que pode ser fornecida a um processo, exceto o tamanho da memory virtual.

O tamanho da memory virtual é de 4 GB em sistemas de 32 bits para qualquer processo, não importa quantos aplicativos você esteja executando. Qualquer processo pode alocar até 4 GB de memory em sistemas de 32 bits.

Na prática, o Windows aloca automaticamente algumas partes da memory alocada da RAM ou do arquivo de paginação, dependendo das solicitações de processos e do mecanismo do arquivo de paginação.

Mas outro limite é o tamanho do arquivo de paginação. Se você tiver um pequeno arquivo de paginação, não poderá alocar memorys grandes. Você poderia aumentar o tamanho do arquivo de paginação de acordo com a Microsoft para ter mais espaço de memory.