Skip to content

swap memory

2019.03.14 09:35

WHRIA 조회 수:59

https://blog.2dal.com/tag/oom/

 

vm.overcommit_memory

앞서, malloc() 에서 가용영역을 넘어선 메모리영역을 리턴하는 것이 overcommit이라 설명했는데,
vm.overcommit_memory Kernel Parameter를 통해서 다음과 같이 overcommit rule을 설정할 수 있다.

vm.overcommit설명
0 (디폴트) heuristic에 따라 overcommit여부를 판단. 메모리 확보가 불가능한 경우, 실행중인 프로세스를 강제 종료해서 메모리를 확보
1 무조건 overcommit 허용. 메모리 확보가 불가능한 경우 OOM Killer 동작(0과 같다)
2 overcommit 불가. 메모리가 부족할 경우 에러 발생 [Swap size] + ([RAM size] * vm.overcommit_ratio/100)

대부분의 서버는 다음과 같이 기본 값으로 설정되어 있다.

$ sudo sysctl -n vm.overcommit_memory
0
$ sudo sysctl -n vm.overcommit_ratio
50 

의도하지 않게 프로세스가 OOM Killer에 의해 지속적으로 종료된다면, 메모리 관리를 Kernel heuristic에 맡기기보다 vm.overcommit을 2로 설정하고, overcommit_ratio를 적당한 수치로 조정해볼 필요가 있다.

 

 

혹시 swappiness를 처음 만났다면
  • vm.swappiness = 0 : 스왑 사용안함 (실제로 swap이 disable되지는 않는다. 참고)
  • vm.swappiness = 1 : 스왑 사용 최적화
  • vm.swappiness = 60 : 기본값
  • vm.swappiness = 100 : 적극적으로 스왑 사용

규칙으로 설정되며, 현재 서버의 swappiness 값은 다음 명령으로 확인할 수 있다.

$ sudo sysctl -n vm.swappiness
60
번호 제목 글쓴이 날짜 조회 수
1581 모든 code 를 python3 로 migration 중 WHRIA 2019.06.08 121
1580 리눅스 samba mount 정리 [1] WHRIA 2019.05.26 194
1579 LG 21 세기 brain hunt - USA file WHRIA 2019.05.23 422
1578 pROC package [3] WHRIA 2019.05.11 143
1577 이미지 비교 [1] WHRIA 2019.04.23 97
1576 label noise [1] WHRIA 2019.04.19 522
1575 드리블 WHRIA 2019.04.12 64
1574 high impact journals WHRIA 2019.04.07 112
1573 color pallate WHRIA 2019.04.07 50
1572 good luck ! WHRIA 2019.03.21 301
» swap memory WHRIA 2019.03.14 59
1570 이궁 WHRIA 2019.03.12 139
1569 HASh benchmark WHRIA 2019.03.10 430
1568 opencv rotate WHRIA 2019.03.09 106
1567 mAP 계산법 WHRIA 2019.02.24 45265

Powered by Xpress Engine / Designed by Sketchbook

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소