Linux 6.14에 통합된 TLB 플러싱 확장성 최적화, AMD/Intel CPU에 혜택

전문: https://www.phoronix.com/news/Linux-6.14-TLB-Flush-Scalable

원저자: Michael Larabel | 작성일: 2025-01-31 21:57
사이트 내 게시일: 2025-01-31 22:19
최근 Linux 6.14에 통합된 TLB 플러싱 확장성 최적화는 AMD와 Intel CPU의 성능을 향상시키기 위해 설계되었으며, 특히 다중 스레드 작업에서 빈번한 컨텍스트 전환이 발생하는 경우에 효과적입니다. 이 최적화는 mm_cpumask를 지연 업데이트하는 데 중점을 두어, 컨텍스트 전환 중의 경합을 줄입니다. 이 변경 사항은 CPU 비트가 이미 설정되어 있지 않은 경우에만 컨텍스트 전환 시 설정되도록 하며, 프로세스가 현재 실행 중이지 않은 CPU에 대해 첫 번째 TLB 플러시 시 CPU 비트를 지웁니다.

실제로, 36코어 AMD Milan 시스템에서 특정 작업 부하에 대해 성능이 약 4.5초에서 4.2초로 개선되었으며, 이는 효율성의 눈에 띄는 향상을 나타냅니다. 또한, 이전에 컨텍스트 전환 중 CPU 시간의 약 17%를 소모했던 cpumask_test_cpu 함수는 CONFIG_DEBUG_VM 아래로 이동하여 최적화되었으며, 이를 통해 프로덕션 커널에 컴파일되지 않도록 하였습니다. 이 변경은 성능 일관성이 중요한 대규모 서버 환경에서 운영을 더욱 간소화할 것으로 기대됩니다.

전반적으로 이러한 최적화는 다중 코어 시스템에서 Linux의 확장성을 개선하는 데 중요한 역할을 하며, 높은 수준의 동시성과 컨텍스트 전환을 요구하는 애플리케이션에 혜택을 주어 AMD와 Intel 아키텍처 모두에 긍정적인 영향을 미칠 것입니다.

* 이 글은 phoronix.com의 기사를 요약한 것입니다. 전체 기사의 내용은 이곳에서 확인하실 수 있습니다.
카테고리: CPU
태그: AMD (1956) 인텔 (1692) Linux (1072) Performance Optimization (204) EPYC (134) kernel development (106) multi-threading (28) TLB (6) Context Switching (4)

댓글

댓글을 쓰기 위해서는 로그인을 해 주세요.