10P by xguru 19시간전 | ★ favorite | 댓글 2개
  • Google이 주도해 차세대 시스템 트레이싱 스택을 목표로 설계·개발한 오픈소스 플랫폼
  • 복잡한 시스템의 실행 흐름을 트레이싱 기반으로 관측하여 성능·기능 문제의 원인을 분석
  • Android 운영체제Chromium 브라우저의 기본 트레이싱 시스템으로 채택된 프로덕션급 안정성과 성능
  • 고성능 트레이싱 데몬을 통해 여러 프로세스·스레드의 이벤트를 하나의 통합 트레이스로 수집
  • 저오버헤드 C++17 SDK를 제공해 사용자 공간 애플리케이션의 타이밍·상태 변화를 정밀하게 계측
  • OS 수준 프로브를 통해 Android·Linux의 스케줄링, CPU 주파수, 메모리, 콜스택 등 시스템 전반의 컨텍스트 수집
  • 브라우저 기반 UI로 대용량 트레이스를 타임라인 중심으로 시각화하고 인터랙티브하게 탐색
    • 별도 설치 없이 주요 브라우저에서 실행 가능하며, 다양한 외부 트레이스 포맷도 열람 지원
  • SQL 기반 분석 엔진을 내장해 트레이스를 데이터처럼 질의하고 맞춤형 메트릭을 추출 가능
  • 공식 문서는 perfetto.dev에서 제공되며, 입문자부터 숙련자까지 단계별로 가이드 구성
  • Google 오픈소스 커뮤니티 가이드라인을 준수하는 개방형 프로젝트

Perfetto를 사용하는 이유

  • Android 앱·플랫폼 개발자는 앱 시작 지연, 프레임 드롭, ANR 등 성능 문제의 근본 원인을 구조적으로 분석 가능
  • C/C++ 개발자는 Tracing SDK를 활용해 애플리케이션 실행 경로를 계측하고 병목 구간을 정밀하게 식별
  • Linux 커널·시스템 개발자ftrace 기반 커널 이벤트를 시각화하여 스케줄링, 시스템콜, 인터럽트 동작을 분석
  • Chromium 개발자chrome://tracing의 백엔드로 Perfetto를 사용해 브라우저·V8·Blink 내부 동작을 디버깅
  • 성능 엔지니어 및 SRE는 Linux perf, macOS Instruments, Chrome JSON trace 등 다양한 포맷을 SQL로 통합 분석 가능

얼마 전에 올라온 Meta, Valve의 Steam Deck용으로 설계된 Linux 스케줄러를 대규모 서버에 | GeekNews 글에서도 perfetto를 사용한 프로파일링 자료를 보여줍니다.

다른 글에서 종종 많이 보이는데, 긱뉴스에는 제대로 소개안한듯 해서 늦게라도 올려봤습니다 ;)

내가 가장 좋아하는 추적 도구 모음: eBPF, QEMU, Perfetto