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()
로 제공합니다. 버전에서는: 이전버에전다음사했용습야다.round(memory.limit()/2^20, 2)
.
사용하다memory.limit()
이 명령을합니다.memory.limit(size=2500)
여기서 크기는 MB 단위입니다.이를 제대로 활용하려면 64비트를 사용해야 합니다.
또 다른 제안은 가능한 한 메모리 효율적인 개체를 사용하는 것입니다. 예를 들어 data.frame 대신 matrix를 사용하는 것입니다.
Linux/unix의 경우 unix 패키지를 제안할 수 있습니다.
Linux에서 메모리 제한을 늘리려면:
install.packages("unix")
library(unix)
rlimit_as(1e12) #increases to ~12GB
다음을 사용하여 메모리를 확인할 수도 있습니다.
rlimit_all()
자세한 정보는 https://rdrr.io/cran/unix/man/rlimit.html .
또한 여기에서 더 많은 정보를 찾을 수 있습니다: 리눅스에서 R의 메모리 사용 제한
Microsoft Windows는 프로세스의 모든 메모리 요청을 수락합니다.
가상 메모리 크기를 제외하고 프로세스에 제공할 수 있는 메모리에는 제한이 없습니다.
가상 메모리 크기는 실행 중인 애플리케이션 수에 관계없이 모든 프로세스에 대해 32비트 시스템에서 4GB입니다.모든 프로세스는 32비트 시스템에서 최대 4GB의 메모리를 할당할 수 있습니다.
실제로 Windows는 프로세스 요청 및 페이징 파일 메커니즘에 따라 RAM 또는 페이지 파일에서 할당된 메모리의 일부를 자동으로 할당합니다.
그러나 또 다른 제한은 페이징 파일의 크기입니다.페이징 파일이 작으면 대용량 메모리를 할당할 수 없습니다.Microsoft에 따라 페이징 파일의 크기를 늘려 메모리 공간을 늘릴 수 있습니다.
- 램 추가 구매
- 64비트 OS로 전환합니다.점 1과 결합합니다.
R에 할당된 메모리 양을 늘리기 위해 memory.limit을 사용할 수 있습니다.
memory.limit(size = ...)
또는
memory.size(max = ...)
인수 정보
- size - 숫자입니다.NA가 메모리 제한을 보고하면 새 제한을 요청합니다(MB). 32비트 R 빌드에서는 최대 4095개의 값만 허용되지만 '상세 정보'를 참조하십시오.
- max - 논리적.TRUE인 경우 OS에서 얻은 최대 메모리 양이 보고되고, FALSE인 경우 현재 사용 중인 양이 보고되며, NA인 경우 메모리 제한이 보고됩니다.
R 스튜디오에서 증가하는 방법:
file.edit(file.path("~", ".Rprofile"))
그 다음에.Rprofile 입력 후 저장
invisible(utils::memory.limit(size = 60000))
감소하려면: 엽니다.R 프로파일
invisible(utils::memory.limit(size = 30000))
RStudio를 저장하고 다시 시작합니다.
언급URL : https://stackoverflow.com/questions/1395229/increasing-or-decreasing-the-memory-available-to-r-processes
'programing' 카테고리의 다른 글
Docker Wordpress tar: 소유권을 uid 33, gid 33으로 변경할 수 없습니다. 작업이 허용되지 않습니다. (0) | 2023.06.11 |
---|---|
Firebase App이 python에서 이미 초기화되었는지 확인합니다. (0) | 2023.06.11 |
명령줄에서 Windows 이벤트 로그 소스를 만드는 방법은 무엇입니까? (0) | 2023.06.11 |
휴대용 분기 예측 힌트 (0) | 2023.06.11 |
인수 구문:'x'가 있는 경우 'y' 인수가 필요합니다. (0) | 2023.06.11 |