R memory 관리: limit 확인하고 maximum 재설정하기
single-cell data를 R로 처리하다보면 가끔 작업중에 core dump
나 killed
, cannot allocate vector
등의 메모리 에러가 난채로 죽기도 하는데
난 보통 5만개 이상의 cell을 처리할때는 50기가 이상을 잡고 시작한다. 여러개의 file을 integrated analysis해야한다면 더 많은 메모리를 필요로 한다.
BTW, R에서 메모리를 확인하고 조정하는 방법을 정리한다. function마다 입력으로 받거나 출력하는 숫자의 단위가 다르니 주의하자.
메모리 limitation 확인하기
1
2
3
memory.limit()
[1] 1535.875 # 1.5GB
# memory.limit(size=1800)
메모리 상한 설정
1
options(future.globals.maxSize= 850*1024^2) # 850MB
R 자체 메모리 상한 설정 변경
R 환경변수 저장돼 있는 .Renviron
파일에 저장용량을 변경해주는 방법.
.Renviron
파일은 보통 홈폴더 아래 저장돼 있다. 없으면 이렇게 어디있는지 확인가능.
1
usethis::edit_r_environ()
어디 있는지 찾았으면 열어서 R_MAX_VSIZE
를 새로 넣어주거나 수정해준다.
1
2
3
vi /home/subin/.Renviron
...
R_MAX_VSIZE=2000Gb
reference
This post is licensed under CC BY 4.0 by the author.