"Flatten The Pick" Linux 패치, Linux 게이밍 중 더 나은 cgroup 스케줄링을 위해 진전
LINUX KERNEL
Phoronix의 22번째 생일과 우연히 겹친 금요일, Linux 게이밍 중 cgroup 스케줄링 성능에 눈에 띄는 영향을 줄 수 있는 새로운 버전의 스케줄링 패치들이 Linux 커널 메일링 리스트(mailing list)에 게시되었습니다.
이 패치들은 "cgroup_mode" 노브(knob)를 추가하고, 계층 구조 수준의 가중치 불일치(hierarchy level weight mismatch) 문제를 해결하기 위한 새로운 정책을 구현합니다. 또한, cgroup 계층 구조가 동적 가중치 관리(dynamic weight management)를 통해 표현되는 평탄한/단일 실행 큐(flat/single run-queue) 스케줄러를 생성하기 위해 해당 기반을 활용합니다.
금요일에 업데이트된 패치에는 여러 수정 사항이 적용되었으며, 코드는 최신 업스트림(upstream) 상태를 기준으로 리베이스(re-based)되었고, cgroup_mode 태스크가 도입되었으며, 기본 cgroup_mode가 변경되었습니다. 추가적인 스케줄링 태스크를 로드하는 동안 Radeon RX 580 Polaris 그래픽 카드를 장착한 구형 Intel Sandy Bridge 시대 하드웨어에서 게임을 실행했을 때의 Peter Zijlstra의 최신 성능 수치는 다음과 같습니다:
Peter는 최소 프레임 레이트(minimum frame rate)에서 엄청난 개선을 관찰했으며, 평균 FPS(average FPS)도 건강하게 상승했습니다. 평균 및 최대 프레임 타임(frame times) 또한 훨씬 낮아졌습니다.
"flatten the pick"을 위한 v3 패치가 Linux 커널 메일링 리스트에서 검토 중이며, 머지않은 미래에 메인라인 커널(mainline kernel)에 포함되기를 기대하고 있습니다.