11.6. 투명한 대규모 페이지 관리
THP(Transparent Huge Page)는 Red Hat Enterprise Linux 10에서 기본적으로 활성화됩니다. 그러나 런타임 구성, TuneD 프로필, 커널 명령줄 매개변수 또는 systemd 장치 파일을 사용하여 투명한 대규모 페이지를 madvise 로 활성화, 비활성화 또는 설정할 수 있습니다.
11.6.1. 런타임 구성을 사용하여 투명한 대규모 페이지 관리 링크 복사링크가 클립보드에 복사되었습니다!
THP(투명한 대규모 페이지)를 런타임 시 관리하여 메모리 사용량을 최적화할 수 있습니다. 시스템 재부팅 시 런타임 구성이 지속되지 않습니다.
절차
THP 상태를 확인합니다.
cat /sys/kernel/mm/transparent_hugepage/enabled
$ cat /sys/kernel/mm/transparent_hugepage/enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP를 구성합니다.
THP 활성화:
echo always > /sys/kernel/mm/transparent_hugepage/enabled
$ echo always > /sys/kernel/mm/transparent_hugepage/enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP 비활성화:
echo never > /sys/kernel/mm/transparent_hugepage/enabled
$ echo never > /sys/kernel/mm/transparent_hugepage/enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP를
madvise로 설정 :echo madvise > /sys/kernel/mm/transparent_hugepage/enabled
$ echo madvise > /sys/kernel/mm/transparent_hugepage/enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow 애플리케이션이 필요한 것보다 많은 메모리 리소스를 할당하지 못하도록 하려면 시스템 전체의 투명한 대규모 페이지를 비활성화하고
madvise시스템 호출을 통해 명시적으로 요청하는 애플리케이션에 대해서만 활성화합니다.참고경우에 따라 수명이 짧은 할당에 짧은 대기 시간을 제공하는 것이 수명이 긴 할당을 통해 최상의 성능을 달성하는 것보다 우선 순위가 높습니다. 이러한 경우 THP를 활성화한 상태로 두는 동안 직접 압축 기능을 비활성화할 수 있습니다.
직접 압축은 대규모 페이지 할당 중에 동기식 메모리 압축입니다. 직접 압축 기능을 비활성화하면 메모리 저장이 보장되지 않지만 자주 페이지 오류 발생 시 대기 시간이 증가할 위험이 증가할 수 있습니다. 또한 직접 압축 기능을 비활성화하면
madvise에 강조 표시된 VMI(가상 메모리 영역)의 동기 압축을 수행할 수 있습니다. THP에서 워크로드가 상당한 이점을 얻을 경우 성능이 저하됩니다. 직접 압축 비활성화:$ echo never > /sys/kernel/mm/transparent_hugepage/defrag
자세한 내용은 시스템의
madvise(2)매뉴얼 페이지를 참조하십시오.
11.6.2. TuneD 프로필을 사용하여 투명한 대규모 페이지 관리 링크 복사링크가 클립보드에 복사되었습니다!
TuneD 프로필을 사용하여 THP(투명한 대규모 페이지)를 관리할 수 있습니다. tuned.conf 파일은 TuneD 프로필 구성을 제공합니다. 이 구성은 시스템 재부팅 시 지속됩니다.
사전 요구 사항
-
tuned패키지가 설치되어 있습니다. -
tuned서비스가 활성화되어 있습니다.
절차
활성 프로필 파일을 동일한 디렉터리에 복사합니다.
sudo cp -R /usr/lib/tuned/my_profile /usr/lib/tuned/my_copied_profile
$ sudo cp -R /usr/lib/tuned/my_profile /usr/lib/tuned/my_copied_profileCopy to Clipboard Copied! Toggle word wrap Toggle overflow tune.conf파일을 편집합니다.sudo vi /usr/lib/tuned/my_copied_profile/tuned.conf
$ sudo vi /usr/lib/tuned/my_copied_profile/tuned.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP를 활성화하려면 다음 행을 추가합니다.
[bootloader] cmdline = transparent_hugepage=always
[bootloader] cmdline = transparent_hugepage=alwaysCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP를 비활성화하려면 다음 행을 추가합니다.
[bootloader] cmdline = transparent_hugepage=never
[bootloader] cmdline = transparent_hugepage=neverCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP를
madvise로 설정하려면 다음 행을 추가합니다.[bootloader] cmdline = transparent_hugepage=madvise
[bootloader] cmdline = transparent_hugepage=madviseCopy to Clipboard Copied! Toggle word wrap Toggle overflow
TuneD서비스를 다시 시작합니다.sudo systemctl restart tuned
$ sudo systemctl restart tunedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 새 프로필을 활성 상태로 설정합니다.
sudo tuned-adm profile my_copied_profile
$ sudo tuned-adm profile my_copied_profileCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
새 프로필이 활성화되었는지 확인합니다.
sudo tuned-adm active
$ sudo tuned-adm activeCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP의 필수 모드가 설정되었는지 확인합니다.
cat /sys/kernel/mm/transparent_hugepage/enabled
$ cat /sys/kernel/mm/transparent_hugepage/enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow
11.6.3. 커널 명령줄 매개변수를 사용하여 투명한 대규모 페이지 관리 링크 복사링크가 클립보드에 복사되었습니다!
커널 매개변수를 수정하여 부팅 시 THP(투명한 대규모 페이지)를 관리할 수 있습니다. 이 구성은 시스템 재부팅 시 지속됩니다.
사전 요구 사항
- 시스템에 대한 root 권한이 있습니다.
절차
현재 커널 명령행 매개변수를 가져옵니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 커널 매개 변수를 추가하여 THP를 구성합니다.
THP를 활성화하려면 다음을 수행합니다.
grubby --args="transparent_hugepage=always" --update-kernel=DEFAULT
# grubby --args="transparent_hugepage=always" --update-kernel=DEFAULTCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP를 비활성화하려면 다음을 수행합니다.
grubby --args="transparent_hugepage=never" --update-kernel=DEFAULT
# grubby --args="transparent_hugepage=never" --update-kernel=DEFAULTCopy to Clipboard Copied! Toggle word wrap Toggle overflow THP를
madvise로 설정하려면 다음을 수행합니다.grubby --args="transparent_hugepage=madvise" --update-kernel=DEFAULT
# grubby --args="transparent_hugepage=madvise" --update-kernel=DEFAULTCopy to Clipboard Copied! Toggle word wrap Toggle overflow
변경 사항을 적용하려면 시스템을 재부팅합니다.
reboot
# rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
THP 상태를 확인하려면 다음 파일을 확인하십시오.
cat /sys/kernel/mm/transparent_hugepage/enabled always madvise [never]
# cat /sys/kernel/mm/transparent_hugepage/enabled always madvise [never]Copy to Clipboard Copied! Toggle word wrap Toggle overflow grep AnonHugePages: /proc/meminfo
# grep AnonHugePages: /proc/meminfo AnonHugePages: 0 kBCopy to Clipboard Copied! Toggle word wrap Toggle overflow grep nr_anon_transparent_hugepages /proc/vmstat
# grep nr_anon_transparent_hugepages /proc/vmstat nr_anon_transparent_hugepages 0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.6.4. systemd 장치 파일을 사용하여 투명한 대규모 페이지 관리 링크 복사링크가 클립보드에 복사되었습니다!
systemd 장치 파일을 사용하여 시스템 시작 시 THP(투명한 대규모 페이지)를 관리할 수 있습니다. systemd 서비스를 생성하면 시스템 재부팅 시 일관된 THP 구성을 얻을 수 있습니다.
사전 요구 사항
- 시스템에 대한 root 권한이 있습니다.
절차
-
THP를
madvise로 활성화, 비활성화 및 설정하는 새로운 systemd 서비스 파일을 생성합니다. 예를 들어/etc/systemd/system/disable-thp.service. 새 systemd 서비스 파일에 다음 내용을 추가하여 THP를 구성합니다.
THP를 활성화하려면 <
new_thp_file>.service파일에 다음 내용을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow THP를 비활성화하려면 <
new_thp_file>.service파일에 다음 내용을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow THP를
madvise로 설정하려면 <new_thp_file>.service파일에 다음 내용을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
서비스를 활성화하고 시작합니다.
systemctl enable <new_thp_file>.service
# systemctl enable <new_thp_file>.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl start <new_thp_file>.service
# systemctl start <new_thp_file>.serviceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
THP 상태를 확인하려면 다음 파일을 확인하십시오.
cat /sys/kernel/mm/transparent_hugepage/enabled
$ cat /sys/kernel/mm/transparent_hugepage/enabledCopy to Clipboard Copied! Toggle word wrap Toggle overflow