- Plateforme open source conçue et développée sous l’impulsion de Google avec pour objectif une pile de traçage système de nouvelle génération
- Observe le déroulement d’exécution de systèmes complexes à l’aide du traçage afin d’analyser la cause des problèmes de performance et de fonctionnement
- Stabilité et performances de niveau production, adoptées comme système de traçage par défaut de l’OS Android et du navigateur Chromium
- Via un daemon de traçage haute performance, collecte les événements de plusieurs processus et threads dans une trace unifiée
- Fournit un SDK C++17 à faible overhead pour instrumenter avec précision le timing et les changements d’état des applications en espace utilisateur
- Grâce à des sondes au niveau OS, collecte le contexte global des systèmes Android et Linux, notamment l’ordonnancement, la fréquence CPU, la mémoire et les call stacks
- Une UI basée sur le navigateur permet de visualiser de grandes traces autour d’une timeline et de les explorer de manière interactive
- Fonctionne dans les principaux navigateurs sans installation séparée et prend aussi en charge l’ouverture de divers formats de traces externes
- Intègre un moteur d’analyse basé sur SQL permettant d’interroger les traces comme des données et d’en extraire des métriques personnalisées
- La documentation officielle est disponible sur perfetto.dev, avec des guides progressifs allant du niveau débutant au niveau avancé
- Projet ouvert respectant les Google Open Source Community Guidelines
Pourquoi utiliser Perfetto
- Les développeurs d’applications et de plateformes Android peuvent analyser de façon structurée les causes profondes de problèmes de performance comme les lenteurs au démarrage, les pertes de frames ou les ANR
- Les développeurs C/C++ peuvent utiliser le Tracing SDK pour instrumenter les chemins d’exécution de leurs applications et identifier précisément les goulots d’étranglement
- Les développeurs kernel Linux et systèmes peuvent visualiser les événements kernel basés sur
ftrace afin d’analyser l’ordonnancement, les appels système et le comportement des interruptions
- Les développeurs Chromium utilisent Perfetto comme backend de
chrome://tracing pour déboguer le fonctionnement interne du navigateur, de V8 et de Blink
- Les ingénieurs performance et SRE peuvent unifier l’analyse via SQL de formats variés comme Linux perf, macOS Instruments et Chrome JSON trace
Aucun commentaire pour le moment.