피드로 돌아가기
A Cluster Stall Looks Healthy on Every Host. The Cause Is in the Pattern Across Hosts.
Dev.toDev.to
Infrastructure

Cross-rank 쿼리로 290ms Straggler를 탐지하는 GPU Observability 설계

A Cluster Stall Looks Healthy on Every Host. The Cause Is in the Pattern Across Hosts.

Ingero Team2026년 5월 6일11advanced

Context

분산 학습 중 ncclAllReduce Barrier로 인한 Token throughput 4배 급감 발생. Per-host 모니터링으로는 CUDA Kernel 실행 상태만 확인 가능하여 특정 Rank의 진입 지연을 식별하지 못하는 한계 존재.

Technical Solution

  • Host 경계를 넘는 Relational Query 수행을 위해 모든 노드의 OTLP 스트림을 단일 DuckDB로 Fan-in 하는 구조 설계
  • eBPF uprobe를 통한 libcudart.so 및 libnccl.so 호출 추적 및 일관된 Timestamp 기반의 Event 수집
  • Cluster-wide 분석을 위해 Cluster ID, Node ID, Rank 등 Resource Attribute를 보존하는 통합 스키마 적용
  • AI Agent가 직접 SQL Join을 수행할 수 있도록 MCP(Model Context Protocol) 서버 인터페이스 제공
  • WAL 손상 방지를 위한 flock(2) 적용 및 Bearer-token 기반의 OTLP Listener 보안 강화

Impact

  • 2,000개 이벤트 유실 없는 수집 및 80개 Causal-chain 마커의 완전한 보존 검증
  • 개별 호스트 트레이스에서 발견 불가능했던 290ms 진입 지연 및 14단계 주기 Memory-fragmentation 패턴 식별

Key Takeaway

분산 시스템의 병목 진단 시 단일 노드의 Health Check보다 노드 간 이벤트의 상관관계를 분석하는 Cross-host Join 관점의 데이터 모델링이 필수적임.


- GPU 클러스터 성능 저하 시 nvidia-smi의 GPU Utilization 수치보다 Barrier 진입/종료 시점의 편차를 우선 분석할 것 - 분산 추적 시스템 설계 시 각 노드의 로그를 단순 집계하는 수준을 넘어, SQL Join이 가능한 구조적 저장소(Analytical DB)를 확보할 것 - eBPF 기반의 Low-overhead(<2%) 수집 체계를 통해 커널 레벨의 스케줄링 이벤트와 CUDA Call Stack을 연동하여 분석할 것

원문 읽기