Meta는 최근 Linux Plumbers 컨퍼런스에서 다음과 같이 공유했습니다.Meta는 Facebook의 대규모 데이터 센터를 위한 보다 효율적인 CPU 스케줄러를 찾고 있을 때 궁극적으로 Steam Deck용으로 개발된 CPU 스케줄러를 선택했습니다.CPU 스케줄러는 어떤 프로그램이 어떤 CPU 코어에서 언제 실행될지 결정하는 컴퓨터 시스템의 핵심 구성 요소입니다.

Linux 시스템은 휴대폰에서 서버에 이르기까지 다양한 장치에서 널리 사용되기 때문에 기본 CPU 스케줄러 설계는 상대적으로 보수적이며 높은 부하에서 낮은 대기 시간 요구 사항을 충족하기 어렵습니다.

Meta는 데이터 센터를 위한 더 나은 스케줄러를 찾는 동안 다양한 엔터프라이즈 Linux 배포판을 테스트했지만 궁극적으로 게임 공간에서 그 답을 찾았습니다.

메타 엔지니어 David Dai와 Ran Newton은 Facebook의 서버 클러스터가 현재 "SCX-LAVD"라는 스케줄러를 대규모로 배포하고 있다고 밝혔습니다.

이 스케줄러는 원래 Steam Deck이 AAA 걸작을 실행할 때 발생할 수 있는 프레임 손실, 끊김 현상 및 입력 지연 문제를 해결하기 위해 Igalia가 Valve의 의뢰로 개발한 것입니다.

핵심 장점은 동적 작업 관리에 있습니다. 작업 동작을 지속적으로 관찰함으로써 어떤 작업이 지연에 더 민감한지 자동으로 예측하고 이러한 작업에 더 이른 "가상 마감 기한"을 할당하여 시스템이 바쁜 경우에도 시간 내에 실행될 수 있도록 합니다.

많은 실제 테스트를 거친 후 Meta는 "매우 낮은 대기 시간" 특성을 추구하는 것이 Facebook의 대규모 웹 요청, 백엔드 메시지 및 캐싱 서비스를 관리해야 하는 요구 사항과 예기치 않게 매우 일치한다는 사실을 발견했습니다.

Meta는 마침내 이 "게임별" 스케줄러를 서버 측에 이식하고 서버의 멀티 코어, 멀티 레벨 캐시 토폴로지에 맞게 최적화하고 자체 비즈니스 로직을 추가했습니다.