최근 NVIDIA 엔지니어가 Linux 커널 버전 6.15에서 AMD 통합 및 독립형 GPU 드라이버에 영향을 미친 성능 저하 문제를 해결했습니다. 이 성능 저하는 DMA 바운스 버퍼의 의도치 않은 활성화와 관련이 있으며, 특히 커널 주소 공간 배치 무작위화(KASLR)가 방해받을 때 게임 성능에 부정적인 영향을 미쳤습니다.
문제는 x86 시스템에서 KASLR 엔트로피를 줄이는 커밋에서 발생했으며, 이는 nokaslr와 존 장치 간의 상호작용과 관련된 버그를 노출시켰습니다. 이 버그는 최대 물리 프레임 번호(max_pfn)가 지나치게 높게 설정되도록 하여 GPU 할당에 DMA32 존이 사용되게 만들었고, 이로 인해 게임 시나리오에서 성능이 저하되었습니다. 수정 사항은 장치 전용 메모리가 추가될 때 x86 시스템에서 max_pfn이 증가하지 않도록 방지하여 GPU가 메모리를 올바르게 주소 지정할 수 있도록 합니다.
이 해결책은 스텔라리스와 같은 게임에서 느린 성능을 경험하는 사용자에게 중요합니다. 이 게임에서는 로딩 시간과 입력 반응성이 심각하게 영향을 받았습니다. 수정 사항은 예상 성능 수준을 복원할 뿐만 아니라, 드라이버 개발에서 메모리 관리의 중요성을 강조하며, 특히 여러 구성 요소가 상호작용하는 복잡한 시스템에서 더욱 그렇습니다.
* 이 글은
phoronix.com의 기사를 요약한 것입니다. 전체 기사의 내용은
이곳에서 확인하실 수 있습니다.