pile·
AI / ML·meta-engMeta Engineering·

Meta의 LLM 규모 광고 추천 모델 GEM, 훈련 효율성 2배 달성

Meta의 광고 추천 기반 모델 GEM(Generative Ads Recommendation Model)이 12개월 만에 훈련 FLOPs를 4배 확장하면서도 엔드투엔드 MFU(Model FLOPs Utilization)를 20~25%로 기존 대비 2배 향상시킨 방법을 공개했다. LLM과 추천 시스템이 교차하는 독특한 아키텍처 특성상, 소프트웨어나 하드웨어 어느 한 쪽만의 최적화가 아닌 전 스택 공동 설계가 핵심이었다.

핵심 포인트
  • 광고 추천 특유의 가변 길이 입력(jagged input)이 GPU 패딩 낭비와 어텐션 다양성 문제를 동시에 일으켜 MFU 저하의 근본 원인이었다.
  • 커스텀 Jagged Flash Attention(JFA) 커널로 패딩 낭비 최대 50% 제거, 4세대 발전으로 TFLOPS 40~140% 개선을 달성했다.
  • MXFP8 혼합 초저정밀도 훈련으로 FP16 대비 forward 1.3×, backward 1.5× 가속을 이뤘다.
  • SM-Free 통신(NCCLX 라이브러리)으로 all-gather의 SM 사용량을 24→1로 줄여 QPS를 약 5% 회복했다.
  • Base Batch Shuffling(BBS)으로 크로스랭크 통신 없이 GPU 간 시퀀스 길이 편차를 해소해 4% 효율을 더했다.
  • 커널·정밀도·병렬성·네트워크·메모리를 동시에 최적화하는 공동 설계 철학이 단일 기법보다 훨씬 높은 효율 향상을 가능하게 했다.
상세 정리
  • 아키텍처 특성: GEM은 수조(Trillion) 규모의 희소 임베딩 파라미터와 수십억 밀집 파라미터를 혼합 사용하는 구조로, 기존 LLM 훈련 프레임워크가 그대로 적용되지 않는다.
  • jagged input 문제: 광고 요청마다 시퀀스 길이가 달라 패딩 시 최대 50% 연산이 낭비되고, 다양한 어텐션 패턴(self/cross/pooled multi-head, 비대칭 QKV)이 파이프라인 효율을 저해한다.
  • Jagged Flash Attention(JFA): 가변 길이 텐서에서 직접 동작. -inf 마스킹 대신 뺄셈 방식으로 masking, backward 병렬화에서 atomic 연산 제거, Triton LLE를 통한 warp 특화·지속 커널 스케줄링으로 4세대 발전시켰다.
  • Generalized Dot-Product Attention(GDPA): 비softmax 활성화 함수를 위한 파이프라인 재설계, jagged 텐서용 소프트웨어 타일 스케줄링, SFU 연산을 ALU 근사로 대체해 실 생산 환경에서 합성 벤치마크 대비 2.6배 성능 격차를 해소했다.
  • BlockAttention: 64토큰 고정 블록으로 O(L²)에서 O(L) 복잡도 전환, fused rotary position embedding과 결합해 슬라이딩 윈도우 대비 44% 개선.
  • MXFP8 훈련: GPU 네이티브 저정밀도 활용. softmax 출력 온라인 양자화(기존 연산 재사용), 32×32 블록 단위 warp-level 양자화로 오버헤드를 최소화했다.
  • 양자화 안전망: FSDP all-gather 전 사전 샤드 양자화, 정규화·프로젝션 커널에 양자화 융합, 이상치 분산을 위한 랜덤 Hadamard 변환, 민감 레이어는 혼합정밀도 폴백.
  • 5D 병렬성: 밀집 파라미터는 2D FSDP+Expert Parallelism(EP, intra-node NVLink), 희소 파라미터는 완전 샤딩 2D 모델 병렬성으로 수조 임베딩 메모리 오버헤드를 제거했다. 콜렉티브를 네트워크 티어(NVLink→RoCE 인트라존→RoCE 오버서브)에 맞게 배분.
  • SM-Free 통신: 기존 커뮤니케이션 커널이 SM 24개 점유해 최대 15% 효율 손실. NCCLX로 Copy Engine·RDMA 활용, NVLink SHARP 인네트워크 리덕션으로 SM을 1개로 줄였다.
  • 컴파일러 기반 activation checkpointing: 리전별 메모리 예산 설정으로 재계산 가성비가 높은 곳에 집중. activation을 BF16→FP8로 양자화해 배치 크기 1000+ 샘플 확장.
  • Base Batch Shuffling: 128샘플 서브배치를 시퀀스 길이로 정렬 후 가장 무거운 배치와 가장 가벼운 배치를 교번 병합. 크로스랭크 all-to-all 없이 GPU 간 ~15% 편차를 해소, QPS 개선과 피크 메모리 감소로 4% 효율 향상.
  • 결과: E2E MFU 20~25% 달성(2배 향상), 동기간 훈련 FLOPs 4배 확장.
왜 읽나LLM과 추천 시스템 혼합 아키텍처를 대규모로 훈련하는 ML 인프라 엔지니어에게, 커널·정밀도·병렬성·네트워크·메모리 전 층을 동시에 최적화하는 실전 레퍼런스다.
meta-eng
Meta Engineering 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. AI / ML·stackoverflow-blogStack Overflow Blog·

    에이전틱 SDLC를 QA 엔지니어링 마인드셋으로 구축하기

    Motorola Solutions의 테스트 엔지니어링 선임 매니저 Suneet Malhotra가 Stack Overflow 팟캐스트에 출연해 MCP(Model Context Protocol) 기반 에이전틱 SDLC 파이프라인 구축과 LLM-as-judge 평가 방법론을 소개했다. QA 엔지니어링 관점을 소프트웨어 개발 생애 전반에 적용하고, 설계 단계 직후 스펙을 강화해 결함 비용을 줄이는 'QA shift-left' 접근을 다룬다.

    요약 이어보기
    #llm-agent#mcp#test-automation+2
  2. AI / ML·LINE EngineeringLINE Engineering·

    보안 업무를 위한 AI 에이전트 플랫폼 「SAGE」 개발기 1편: 판단은 사람에게 남기는 설계

    LY Corporation Security Development Division이 보안 업무용 AI 에이전트 플랫폼 SAGE의 개발 과정을 공개했다. "완전 자동화"와 "도입 미루기" 양 극단 사이에서 "판단은 사람에게 남기는 설계"를 핵심 원칙으로 삼고, 3단계 점진적 도입 전략(AI 보조→에이전트 협업→자동화)을 채택했다. 현재는 1단계를 중심으로 파일럿·실운영 중이다.

    요약 이어보기
    #llm-app#opensearch#mcp+2