Enterprise Infrastructure Intelligence ● Certified engineers online · Fast response guaranteed
리눅스/OS

HugePages와 THP(Transparent Huge Pages): 아키텍처와 실무 활용 가이드

Linux 커널에서 메모리 성능을 향상시키기 위해 제공하는 HugePages와 THP의 구조적 차이와 작동 원리를 분석합니다. 각 기술의 장단점과 실무 활용 시 고려사항을 다룹니다.

2026.09.18  ·  25회  · 

HugePages와 THP의 개념적 차이

HugePages(HugeTLB 파일시스템)는 부트 타임에 사전 할당되는 고정 크기 메모리 페이지 풀을 제공합니다. 반면 THP(Transparent Huge Pages)는 런타임에 동적으로 할당되는 투명한 페이지 관리 메커니즘입니다. THP는 애플리케이션 수정 없이 커널이 자동으로 2MB의 대용량 페이지를 일반적인 4KB 페이지 512개 대신 사용합니다.

메모리 관리 아키텍처의 핵심 메커니즘

HugePages 사용 시 커널은 /proc/sys/vm/nr_hugepages를 통해 페이지 풀을 관리하며, 명시적 메모리 예약으로 단편화를 방지합니다. THP는 khugepaged 데몬이 백그라운드에서 연속된 4KB 페이지를 스캔하여 2MB 페이지로 축약(collapse)하는 자동 프로세스를 구현합니다. THP는 추가적으로 multi-size THP(mTHP)를 지원하여 16KB, 32KB, 64KB 같은 중간 크기의 페이지도 할당할 수 있습니다.

TLB 효율성과 성능 영향

TLB(Translation Lookaside Buffer) 미스가 발생할 때 한 개의 TLB 엔트리가 2MB 메모리 영역을 매핑하므로, TLB 미스율이 대폭 감소합니다. HugePages의 경우 이 효과가 애플리케이션 수정이 필요하지만, THP는 madvise(MADV_HUGEPAGE) 시스템 호출을 통해 특정 메모리 영역만 선택적으로 적용할 수 있습니다.

실무 활용 시 주의점

HugePages는 데이터베이스와 같은 예측 가능한 메모리 할당 패턴을 가진 엔터프라이즈 애플리케이션에 권장됩니다. THP는 always, madvise, never 정책으로 설정 가능하며, 메모리 단편화 위험이 높은 시스템에서는 madvise 모드 사용을 권장합니다. 직접 메모리 압축(direct compaction) 비활성화는 페이지 폴트 지연을 낮추지만, THP 기반 워크로드의 성능을 저하시킬 수 있습니다.

WIKIDATA WORKSTATION
AI·렌더링에 최적화된
전문가용 워크스테이션
NVIDIA RTX GPU · 최대 192GB 메모리 · ECC 지원