Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
A.13. numad
numad 는 자동 NUMA 선호도 관리 데몬입니다. NUMA 리소스 할당 및 관리를 동적으로 개선하기 위해 시스템 내에서 NUMA 토폴로지 및 리소스 사용량을 모니터링합니다.
numad 가 활성화되면 해당 동작은 자동 NUMA 분산의 기본 동작을 재정의합니다.
A.13.1. 명령줄에서 numad 사용
numad 를 실행 파일로 사용하려면 다음을 실행합니다.
# numad
numad 가 실행되는 동안 해당 작업은
/var/log/numad.log 에 기록됩니다. 다음 명령을 사용하여 중지될 때까지 실행됩니다.
# numad -i 0
numad 를 중지해도 NUMA 선호도를 개선하기 위해 변경한 사항은 제거되지 않습니다. 시스템에서 변경 사항을 크게 사용하는 경우 numad 를 다시 실행하면 선호도를 조정하여 새로운 조건에서 성능을 향상시킵니다.
numad 관리를 특정 프로세스로 제한하려면 다음 옵션을 사용하여 시작합니다.
# numad -S 0 -p pid
- -p pid
- 이 옵션은 지정된 pid 를 명시적 포함 목록에 추가합니다. 지정된 프로세스는 numad 프로세스 유의 임계값을 충족할 때까지 관리되지 않습니다.
- -S 0
- 이렇게 하면 프로세스 스캔 유형을
0으로 설정하면 numad 관리를 명시적으로 포함된 프로세스로 제한합니다.
사용 가능한 numad 옵션에 대한 자세한 내용은 numad man 페이지를 참조하십시오.
$ man numad
A.13.2. numad를 서비스로 사용
numad 는 서비스로 실행되는 동안 현재 시스템 워크로드에 따라 시스템을 동적으로 조정하려고 합니다. 해당 작업은
/var/log/numad.log 에 기록됩니다.
서비스를 시작하려면 다음을 실행합니다.
# systemctl start numad.service
재부팅 후에도 서비스를 유지하려면 다음을 실행합니다.
# chkconfig numad on
사용 가능한 numad 옵션에 대한 자세한 내용은 numad man 페이지를 참조하십시오.
$ man numad
A.13.3. Pre-Placement Advice
numad 는 다양한 작업 관리 시스템에서 쿼리하여 프로세스에 대한 CPU 및 메모리 리소스의 초기 바인딩에 대한 지원을 제공할 수 있는 사전 배치 조언 서비스를 제공합니다. 이 사전 배치 조언은 numad 가 실행 가능 여부 또는 서비스로 실행되는지 여부에 관계없이 사용할 수 있습니다.
A.13.4. KSM과 numad 사용
NUMA 시스템에서 KSM을 사용 중인 경우 NUMA 노드에서 페이지를 병합하지 않도록
/sys/kernel/mm/ksm/merge_nodes 매개변수 값을 0 으로 변경합니다. 그렇지 않으면 KSM이 노드에서 페이지를 병합할 때 원격 메모리 액세스를 늘립니다. 또한 많은 양의 교차 노드 병합 후 커널 메모리 계산 통계가 결국 서로 충돌할 수 있습니다. 따라서 KSM 데몬이 많은 메모리 페이지를 병합한 후 사용 가능한 메모리의 올바른 양 및 위치에 대해 numad 가 혼동될 수 있습니다. KSM은 시스템에서 메모리를 과다 할당하는 경우에만 유용합니다. 시스템에 사용 가능한 메모리가 충분한 경우 KSM 데몬을 끄고 비활성화하여 더 높은 성능을 얻을 수 있습니다.