5.3. 새로운 /proc/sys/vm 매개변수
- compaction_proactiveness
이 매개 변수는 커널이 메모리를 백그라운드에서 축소하는 방법을 적극적으로 결정합니다. 매개 변수는 범위 [0, 100]에서 값을 사용하고 기본값은 0입니다. 기본적으로 이 매개 변수를 비활성화하려는 동기는 메모리를 이동하기 위해 500msec마다 kthread에 의해 시스템의 현재 설정 및 예상 동작을 중단하지 않도록 하는 것이었습니다.
여러 다른 프로세스에 속하는 페이지가 이동되므로 압축은 시스템 전체에 미치는 영향이 거의 발생하지 않습니다. 이로 인해 애플리케이션의 대기 시간이 급증할 수도 있습니다. 커널은 사전 압축이 효과적이지 않음을 감지하면 CPU 사이클을 낭비하지 않도록 다양한 복구 방법을 사용합니다.
이 매개변수를 100과 같은 극단 값으로 설정할 때는 주의하십시오. 이로 인해 과도한 백그라운드 압축 활동이 발생할 수 있습니다.
- watermark_boost_factor
이 매개변수는 메모리가 조각화될 때 회수 수준을 제어합니다. 다양한 이동성의 페이지가 페이지 블록 내에서 혼합되는 경우 회수될 영역의 높은 워터마크 비율을 정의합니다. 의 의도는 압축은 나중에 수행할 작업이 줄어들고 SLUB 할당, THP 및 hugetlbfs 페이지와 같은 미래의 높은 순서 할당의 성공 속도를 높이는 것입니다.
seal
_scale_factor
매개변수와 관련하여 단위는 10,000의 배수로 되어 있습니다. 조각화로 인해페이지 블록을 혼합하는
경우 높은 워터마크의 최대 150%를 확보할 수 있음을 의미합니다. 회수 수준은 최근 과거에 발생한 조각화 이벤트 수에 따라 결정됩니다. 이 값이 페이지 블록보다 작으면 페이지 가치가 있는 페이지 블록이 회수됩니다(예: 64비트 x86의 2MB). 상향수인 0은 이 기능을 비활성화합니다.