이 기사는 리눅스 6.13에서 POWER CPU에 대한 지연 선점 지원의 도입에 대해 다룹니다. 이 새로운 모드는 CPU 자원의 관리를 개선하여 성능을 향상시키는 것을 목표로 하며, 특히 코어 수가 많고 메모리 용량이 큰 시스템에서 효과적입니다.
PowerPC를 위한 지연 선점 비트를 정의하는 특정 패치가 구현되었으며, 이는 NEED_RESCHED의 16비트 범위 내에서 비트 9를 활용합니다. 이를 통해 컴파일러는 단일 'andi' 명령어를 발행하여 선점 프로세스를 최적화할 수 있습니다. 다른 아키텍처와 달리 PowerPC는 일반적인 진입/퇴출 메커니즘을 사용하지 않기 때문에 사용자 퇴출 시 지연 검사가 필요합니다. CONFIG_PREEMPTION 설정은 지연, 전체 및 실시간 모드에 대해 정의되어 있어 커널 작업으로의 부드러운 복귀를 촉진합니다.
Power10 시스템에서 수행된 벤치마크 결과, 지연 선점이 적용된 성능은 preempt=none 또는 자발적 선점이 설정된 구성과 유사한 것으로 나타났습니다. 이는 코어 수가 많고 메모리 구성이 복잡한 PowerPC 시스템에서 자주 발생하는 소프트 잠금 문제를 완화할 것으로 기대됩니다. 지연 선점 지원의 도입은 이러한 문제를 완화하여 전체 시스템의 안정성과 성능을 향상시킬 것으로 예상됩니다.
* 이 글은
phoronix.com의 기사를 요약한 것입니다. 전체 기사의 내용은
이곳에서 확인하실 수 있습니다.