pile·
인프라 / DevOps·meta-engMeta Engineering·

오픈소스 커널 스케줄러로 Meta 광고 서비스를 현대화한 방법

Meta 광고 서비스팀이 BPF 기반 확장 가능 커널 스케줄러 sched_ext를 도입해 초당 500만 요청 광고 랭킹 서비스의 지연시간을 대폭 개선한 과정을 다룬다. CPU 풀 분리와 L3 캐시 지역성 개선으로 초기 p99 지연시간 28%를 줄인 뒤, 커널 배포 없이 사용자 공간 변경만으로 추가 60%를 더 줄여 전력 3.28MW 절감과 광고 랭킹 1.1% 향상을 달성했다.

핵심 포인트
  • sched_ext는 BPF 기반 확장 가능 커널 스케줄러로 Linux v6.12에 공식 통합됐다. 사용자 공간 바이너리가 BPF 프로그램을 로드해 커널 재구축 없이 스케줄링 정책을 변경할 수 있다.
  • CPU를 지연시간 민감 요청 경로용 풀과 덜 민감한 작업용 풀로 소프트 분할, 동적 로드에 따라 풀 크기를 조정해 L3 캐시 지역성을 높이고 DRAM 접근을 줄였다.
  • 초기 출시 성과(CFS → sched_ext): p99 지연시간 28% 감소, 전력 3.28MW 절감, 광고 랭킹 1.1% 향상.
  • 사용자 공간 변경만으로 추가 p99 60% 감소, 중요 경로 타임아웃 오류 18% 감소를 달성했다.
  • 스케줄링 정책 변경이 커널 패치 + 수개월 검증에서 수일 내 사용자 공간 배포로 단축됐다.
상세 정리
  • 배경: Meta 광고 서비스는 초당 500만 요청(일일 4,000억 건)을 처리한다. 수 밀리초 지연도 사용자 관련성과 광고주 ROI에 직접 영향을 준다.
  • 문제 계기: 리눅스 커널 업그레이드 과정에서 기존 CFS로 지연시간 악화가 예측됐고, 커스텀 스케줄링 정책이 필요해졌다.
  • sched_ext 선택 이유: BPF로 스케줄러 로직을 사용자 공간 프로그램으로 분리하여 커널 재빌드 없이 재시작만으로 정책을 변경할 수 있다.
  • CPU 풀 분할: 지연시간 민감 요청용 풀과 배치/백그라운드 작업용 풀로 소프트 분리, 동적 로드에 따라 풀 크기를 실시간 조정한다.
  • L3 캐시 최적화: 동일 풀 내 스레드가 같은 L3 캐시 공유 영역을 사용하도록 배치해 DRAM 접근을 줄이고 캐시 히트율을 높였다.
  • BPF 콜백 포인트: 스레드 깨우기(CPU 선택), 큐 배치, 유휴 CPU 선택, 유휴 상태 전환 대응 등 이벤트별 콜백으로 세밀한 제어가 가능하다.
  • 초기 성과: p99 지연시간 28% 감소, 전력 3.28MW 절감, 광고 순위 매김 1.1% 향상.
  • 후속 개선: 사용자 공간 변경만으로 추가 p99 60% 감소, 중요 경로 타임아웃 오류 18% 감소 — 커널 배포 없이 달성.
  • 배포 속도 혁신: 이전에는 커널 패치 + 수개월 검증이 필요했던 정책 변경이 수일 내 배포로 단축됐다.
  • 향후 계획: 광고 서비스가 요청 중요도 컨텍스트를 스케줄러에 신호로 전달, 중요 요청 처리 중인 스레드의 스케줄링 슬라이스를 늘리는 방향을 탐색 중이다.
  • 오픈소스 기여: sched_ext가 Linux v6.12에 업스트림 통합돼 Meta 외 모든 리눅스 생태계에서 활용 가능하다.
왜 읽나대규모 지연시간 민감 서비스에서 리눅스 커널 스케줄러를 BPF로 커스터마이징해 p99를 크게 줄이고 전력을 절감한 Meta의 실전 사례로, 인프라·성능 최적화를 다루는 엔지니어에게 sched_ext 활용법과 CPU 풀 분리 전략을 제공한다.
meta-eng
Meta Engineering 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. 인프라 / DevOps·AWS KoreaAWS Korea Tech·

    Claude Apps Gateway on AWS 자세히 알아보기

    Anthropic의 Claude Code 바이너리에 내장된 LLM 게이트웨이 솔루션 Claude Apps Gateway의 AWS 인프라 배포 방법과 엔터프라이즈 기능을 다룬다. API 키 대신 IdP(Identity Provider) 기반 SSO를 사용해 Okta, Microsoft Entra ID, Keycloak과 연동하며, 그룹별 권한 정책, 예산 관리, OpenTelemetry 기반 관측성을 제공한다.

    #claude#bedrock#opentelemetry+2
  2. 인프라 / DevOps·AWS KoreaAWS Korea Tech·

    금융 클라우드 길라잡이 A to Z Part 2 – 연구개발망 예외와 망분리 개선 로드맵

    2024년 8월 금융위원회의 망분리 개선 로드맵에 따라 허용된 연구개발망(R&D 망)을 AWS 멀티 계정 아키텍처로 구현하는 방법을 다룬다. 물리적 망분리 대신 논리적 분리로 전환되면서 생성형 AI와 SaaS 서비스 사용이 R&D 망에서 허용됐다. 3계층 VPC 설계, AI 도구 통합, 아티팩트 이전 파이프라인 등 실무 구현 사례를 포함한다.

    #aws#network-security#compliance+2