R에서 사용할 수있는 메모리 양을 늘리거나 줄이고 싶습니다.이를 달성하는 방법은 무엇입니까?
R에서 사용할 수있는 메모리 양을 늘리거나 줄이고 싶습니다.이를 달성하는 방법은 무엇입니까?
답변:
에서:
http://gking.harvard.edu/zelig/docs/How_do_I2.html ( 미러 )
Windows 사용자는 R에 메모리가 부족하다는 오류가 표시 될 수 있습니다.
R이 이미 설치되어 있고 이후에 더 많은 RAM을 설치하는 경우 추가 용량을 활용하려면 R을 다시 설치해야 할 수 있습니다.
사용 가능한 메모리 양을 수동으로 설정할 수도 있습니다. R을 닫은 다음 R 프로그램 아이콘 (바탕 화면 또는 프로그램 디렉토리의 아이콘)을 마우스 오른쪽 버튼으로 클릭합니다. ``속성 ''을 선택한 다음``바로 가기 ''탭을 선택하십시오. ``Target ''필드를 찾고 R 실행 파일 위치 주변의 닫는 따옴표 뒤에 다음을 추가합니다.
--max-mem-size = 500M
아래 그림과 같이. 이 값을 최대 2GB 또는 설치 한 물리적 RAM의 최대 양까지 늘릴 수 있습니다.
R이 길이 x의 벡터를 할당 할 수 없다는 오류가 발생하면 R을 닫고``대상 ''필드에 다음 줄을 추가합니다.
--max-vsize = 500M
또는 적절하게. R 프롬프트에 입력하여 R의 사용 가능한 메모리 양을 항상 확인할 수 있습니다.
memory.limit()
사용 가능한 메모리 양을 MB 단위로 제공합니다. 이전 버전의 R에서는 다음을 사용해야 round(memory.limit()/2^20, 2)
했습니다..
사용 memory.limit()
. 이 명령을 사용하여 기본값을 늘릴 수 있습니다 memory.limit(size=2500)
. 여기서 크기는 MB 단위입니다. 이를 실제로 활용하려면 64 비트를 사용해야합니다.
한 가지 다른 제안은 가능한 한 메모리 효율적인 객체를 사용하는 것입니다. 예를 들어 data.frame 대신 행렬을 사용하십시오.
Microsoft Windows는 가능한 경우 프로세스의 모든 메모리 요청을 수락합니다.
가상 메모리 크기를 제외하고 프로세스에 제공 할 수있는 메모리에는 제한이 없습니다.
가상 메모리 크기는 실행중인 응용 프로그램 수에 관계없이 모든 프로세스에 대해 32 비트 시스템에서 4GB입니다. 모든 프로세스는 32 비트 시스템에서 최대 4GB 메모리를 할당 할 수 있습니다.
실제로 Windows는 프로세스 요청 및 페이징 파일 메커니즘에 따라 RAM 또는 페이지 파일에서 할당 된 메모리의 일부를 자동으로 할당합니다.
그러나 또 다른 한계는 페이징 파일의 크기입니다. 작은 페이징 파일이 있으면 큰 메모리를 할당 할 수 없습니다. 더 많은 메모리 공간을 확보하기 위해 Microsoft 에 따라 페이징 파일의 크기를 늘릴 수 있습니다.
R에 할당 된 메모리 양을 늘리려면 memory.limit 를 사용할 수 있습니다 .
memory.limit(size = ...)
또는
memory.size(max = ...)
인수에 대해