"리눅스 swappiness"의 두 판 사이의 차이

 
(사용자 2명의 중간 판 20개는 보이지 않습니다)
2번째 줄: 2번째 줄:
;swappiness
;swappiness
;vm.swappiness
;vm.swappiness
;스왑 활용도
;스왑 활용도, 스와핑 활용도, 스와피니스
*리눅스 커널 속성 중 하나
*스왑메모리 활용 수준 조절
*스왑메모리 활용 수준 조절
*리눅스 커널 프로퍼티
*스왑 사용의 적극성 수준
 
==값 설명==
*값의 범위: 0 ~ 100 (기본값: 60)
*값의 범위: 0 ~ 100 (기본값: 60)
:0: 메모리 부족시에만 스왑
{| class="wikitable"
:60: 기본값
|-
:100: 적극적으로 스왑 활용
! 값 !! 설명
|-
| <code>vm.swappiness = 0</code> || 스왑 사용안함<ref>커널 버전 3.5 이상에서 스왑 사용안함. 커널 버전 3.5 이하에서는 최소화([[OOM]] 회피를 위해서만 스왑 사용)</ref>
|-
| <code>vm.swappiness = 1</code> || 스왑 사용 최소화
|-
| <code>vm.swappiness = 60</code> || 기본값
|-
| <code>vm.swappiness = 100</code> || 적극적으로 스왑 사용
|}
:→ 메모리 여유가 충분할 때 성능향상을 위해 <code>vm.swappiness = 10</code> 정도를 권고하는 경우가 있음


==확인==
==확인==
<source lang='dos'>
<source lang='console'>
[root@jmnote ~]# sysctl vm.swappiness
[root@zetawiki ~]# sysctl vm.swappiness
vm.swappiness = 60
vm.swappiness = 60
</source>
</source>
<source lang='dos'>
<source lang='console'>
[root@jmnote ~]# sysctl -a | grep swappiness
[root@zetawiki ~]# sysctl -a | grep swappiness
vm.swappiness = 60
vm.swappiness = 60
</source>
</source>
<source lang='dos'>
<source lang='console'>
[root@jmnote ~]# cat /proc/sys/vm/swappiness
[root@zetawiki ~]# cat /proc/sys/vm/swappiness
60
60
</source>
</source>
26번째 줄: 39번째 줄:
==변경==
==변경==
;즉시 변경 (재부팅시 초기화됨)
;즉시 변경 (재부팅시 초기화됨)
즉시 변경하는 방법은 아래처럼 2가지가 있으나, [[/etc/sysctl.conf]]에 등록되지 않으면 재부팅 후 원상복구된다.
즉시 변경하는 방법은 아래와 같이 3가지가 있으나, [[/etc/sysctl.conf]]에 등록되지 않으면 재부팅 후 원상복구된다.
<source lang lang='dos'>
<source lang lang='console'>
[root@jmnote ~]# sysctl vm.swappiness=40
[root@zetawiki ~]# sysctl vm.swappiness=40
vm.swappiness = 40
</source>
<source lang lang='console'>
[root@zetawiki ~]# sysctl -w vm.swappiness=40
vm.swappiness = 40
vm.swappiness = 40
</source>
</source>
<source lang='dos'>
<source lang='console'>
[root@jmnote ~]# echo 40 > /proc/sys/vm/swappiness
[root@zetawiki ~]# echo 40 > /proc/sys/vm/swappiness
[root@jmnote ~]# sysctl vm.swappiness
[root@zetawiki ~]# sysctl vm.swappiness
vm.swappiness = 40
vm.swappiness = 40
</source>
</source>
48번째 줄: 65번째 줄:
==같이 보기==
==같이 보기==
*[[리눅스 스왑 메모리 확인]]
*[[리눅스 스왑 메모리 확인]]
*[[스왑 메모리]]
*[[페이지 캐시]]
*[[페이지 캐시]]
*[[리눅스 sysctl]]
*[[/etc/sysctl.conf]]
*[[/etc/sysctl.conf]]


==주석==
==참고==
<references/>
 
==참고 자료==
*http://en.wikipedia.org/wiki/Swappiness
*http://en.wikipedia.org/wiki/Swappiness
*http://kldp.org/node/93067 (실 메모리가 남는데도 스왑 메모리를 사용합니다)
*http://kldp.org/node/93067 (실 메모리가 남는데도 스왑 메모리를 사용합니다)
61번째 줄: 77번째 줄:
[[분류: 리눅스]]
[[분류: 리눅스]]
[[분류: 메모리]]
[[분류: 메모리]]
[[분류: sysctl]]
[[분류: 스왑 공간]]

2018년 6월 3일 (일) 14:13 기준 최신판

1 개요[ | ]

swappiness
vm.swappiness
스왑 활용도, 스와핑 활용도, 스와피니스
  • 리눅스 커널 속성 중 하나
  • 스왑메모리 활용 수준 조절
  • 스왑 사용의 적극성 수준

2 값 설명[ | ]

  • 값의 범위: 0 ~ 100 (기본값: 60)
설명
vm.swappiness = 0 스왑 사용안함[1]
vm.swappiness = 1 스왑 사용 최소화
vm.swappiness = 60 기본값
vm.swappiness = 100 적극적으로 스왑 사용
→ 메모리 여유가 충분할 때 성능향상을 위해 vm.swappiness = 10 정도를 권고하는 경우가 있음

3 확인[ | ]

[root@zetawiki ~]# sysctl vm.swappiness
vm.swappiness = 60
[root@zetawiki ~]# sysctl -a | grep swappiness
vm.swappiness = 60
[root@zetawiki ~]# cat /proc/sys/vm/swappiness
60

4 변경[ | ]

즉시 변경 (재부팅시 초기화됨)

즉시 변경하는 방법은 아래와 같이 3가지가 있으나, /etc/sysctl.conf에 등록되지 않으면 재부팅 후 원상복구된다.

[root@zetawiki ~]# sysctl vm.swappiness=40
vm.swappiness = 40
[root@zetawiki ~]# sysctl -w vm.swappiness=40
vm.swappiness = 40
[root@zetawiki ~]# echo 40 > /proc/sys/vm/swappiness
[root@zetawiki ~]# sysctl vm.swappiness
vm.swappiness = 40
영구 적용 (재부팅시에 적용됨)

/etc/sysctl.conf 기본값에는 vm.swappiness 설정이 없으므로 새로 추가해주어야 한다.[2]

vi /etc/sysctl.conf
vm.swappiness = 40

5 같이 보기[ | ]

6 참고[ | ]

  1. 커널 버전 3.5 이상에서 스왑 사용안함. 커널 버전 3.5 이하에서는 최소화(OOM 회피를 위해서만 스왑 사용)
  2. 이미 있다면 수정...
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}