Post

R memory 관리: limit 확인하고 maximum 재설정하기

single-cell data를 R로 처리하다보면 가끔 작업중에 core dumpkilled, 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.

© Subin Cho. Some rights reserved.

Using the Chirpy theme for Jekyll.