로딩
요청 처리 중입니다...

NUMA BALANCING

 NUMA BALANCING

더 많은 CPU core와 메모리가 필요해지면서 CPU와 메모리를 결합하여 1개의 보드(socket)에 구성하고 이것을 다시 N개를 서버에 장착하여 사용하는 환경을 보통 NUMA Architecture라고 부릅니다. 출처:나무위키 이런 구성은 Node-0 에서 수행 중인 Process가 Node-1의 memory에 접근해야 할 경우 성능지연이 발생할 가능성을 갖고 있습니다.

이런 문제를 최소화시키기 위해 OS는 다음의 전략을 채택합니다. Local에서 수행 중인 Task를 Remote node로 이동시키는 방식 Remote Node의 메모리를 Local Node로 copy하는 방식 OS는 이런 전략의 판단을 위해 주기적으로 PTE에 Page를 unmap시켜서 fault가 나도록 유도하기도 합니다.

아래는 /proc/vmstat이 보여주는 정보입니다. numa_pte_updates 8845709780 numa_huge_pte_updates 47556 numa_hint_faults 82...

# balancing # goldilocks # interleaving # iowait # memory # NUMA # 골디락스

원문 링크 : NUMA BALANCING