경험 기반 솔직한 접근
메모리 관리와 NUMA 아키텍처에 대해 학교 수업과 토이 프로젝트를 통해 기초를 공부했습니다. NUMA(Non-Uniform Memory Access)에서 각 CPU는 자신과 가까운 메모리에 빠르게 접근하고, 원거리 메모리 접근은 레이턴시가 높아집니다.
프로세스를 특정 NUMA 노드에 바인딩(numactl)하면 메모리 접근 비용을 줄일 수 있습니다. 또 perf 툴로 NUMA 관련 이벤트를 분석해 원거리 접근이 많은 병목 구간을 파악하는 방법도 배웠습니다. 메모리 풀 관리와 jemalloc 같은 얼로케이터 선택이 서버 성능에 미치는 영향도 공부했습니다.
메모리 최적화는 측정이 먼저이고, 추측으로 튜닝하면 오히려 역효과가 날 수 있습니다.