4.4. Red Hat Enterprise Linux 6에서 NUMA 기능 강화

Red Hat Enterprise Linux 6에는 오늘날의 고도로 확장 가능한 하드웨어의 잠재력을 사용하기 위해 여러 향상된 기능이 포함되어 있습니다. 다음 부분에서는 Red Hat Enterprise Linux 6에서 제공하는 가장 중요한 NUMA-관련 성능 개선에 대한 높은 수준의 개요를 설명합니다.

4.4.1. 베어 메탈 및 확장성 최적화

4.4.1.1. 토폴로지 인식 기능 향상

다음과 같이 향상된 기능을 통해 Red Hat Enterprise Linux는 낮은 수준의 하드웨어 및 아키텍처 정보를 검색할 수 있으며 시스템의 프로세스를 자동으로 최적화하는 기능을 개선합니다.
토폴로지 검색 강화
이는 운영 체제가 낮은 수준의 하드웨어 정보 (논리 CPU 및 하이퍼 스레드, 코어, 소켓, NUMA 노드, 노드 간 액세스 시간 등) 부팅 시 검색할 수 있게 하며 시스템에서 프로세스를 최적화합니다.
완전 공정 스케줄러 (CFS, Completely Fair Scheduler)
이러한 새로운 스케줄링 모드는 런타임이 유효한 프로세스 간에 동등하게 공유되고 있는지 확인합니다. 이를 토폴로지 검색과 결합하여 프로세스가 동일한 소켓에 있는 CPU로 스케줄되어 고가의 원격 메모리 액세스에 대한 필요를 방지하고 가능한 캐시 내용이 보존되는지를 확인할 수 있습니다.
malloc
malloc은 프로세스에 할당된 메모리 영역이 프로세스가 실행되고 있는 코어에 물리적으로 가능한 가깝도록 최적화되어 있습니다. 이를 통해 메모리 액세스 속도가 높아집니다.
skbuff I/O 버퍼 할당
malloc과 유사하게 이는 장치 인터럽트와 같은 I/O 작업을 처리하는 CPU에 물리적으로 가까운 메모리를 사용하도록 최적화되어 있습니다.
장치 인터럽트 친화도
어떤 CPU가 어떤 인터럽트를 처리하는가에 관한 장치 드라이브에 의해 기록된 정보는 캐시 친화도를 보존하고 소켓 사이의 높은 볼륨간 소켓 통신을 제한하며, 동일한 물리적 소켓 내에 있는 CPU에 인터럽트 처리를 제한하는데 사용될 수 있습니다.

4.4.1.2. 멀티 프로세서 동기화 기능 개선

멀티 프로세서 간 작업을 조정하는 것은 병렬로 실행되고 있는 프로세서가 테이터 무결성을 손상하지 않도록 하기 위해 자주, 시간이 많이 걸리는 작업이 필요합니다. Red Hat Enterprise Linux에는 이러한 분야에서 성능을 향상시키기 위해 다음과 같은 개선된 기능이 포함되어 있습니다:
RCU (Read-Copy-Update) 잠금
일반적으로 잠금의 90%는 읽기 전용 목적으로 취득됩니다. RCU 잠금은 액세스되는 데이터가 수정되지 않을 때 단독 액세스 잠금을 획득할 필요성을 제거합니다. 이러한 잠금 모드는 현재 페이지 캐시 메모리 할당에 사용됩니다. 현재 잠금은 할당 또는 할당 취소 작업에만 사용됩니다.
CPU 당 및 소켓 당 알고리즘
대부분의 알고리즘은 보다 세밀한 잠금을 허용하도록 동일한 소켓에 있는 협력 CPU 간 잠금 조정을 수행하도록 업데이트되었습니다. 수많은 글로벌 스핀락 (spinlock)은 소켓 당 잠금 방법으로 대체되어 업데이트된 메모리 할당자 영역과 관련 메모리 페이지 목록은 작업 할당 또는 할당 취소 작업을 수행할 때 메모리 할당 논리가 보다 효율적으로 메모리 매핑 데이터 구조의 하위 집합을 통과할 수 있습니다.

Red Hat의 최신 제품 문서 번역을 신속하게 제공하기 위해 이 페이지에는 영어 원본을 한국어로 자동 번역한 내용이 포함되어 있을 수 있습니다. [자세한 내용보기]