ETTrace est un Open
MaisonMaison > Blog > ETTrace est un Open

ETTrace est un Open

Nov 30, 2023

Accueil InfoQ Actualités ETTrace est un profileur Open Source pour iOS visant à simplifier l'optimisation des performances

07 juin 2023 2 minutes de lecture

par

Sergio de Simone

Récemment open source par Emerge Tools, fabricant de plusieurs outils d'analyse pour les applications iOS, ETTrace vise à simplifier le profilage des performances iOS en fournissant des visualisations intuitives et un fonctionnement simple.

ETTrace fait face à la forte concurrence du profileur de tuiles intégré Xcode, qui est la solution standard de facto pour l'optimisation des performances des applications iOS. Pourtant, selon Noah Martin, ingénieur d'Emerge Tools, il y a beaucoup à améliorer dans Xcode Time Profiler :

Chez Emerge, j'ai parlé à de nombreux ingénieurs travaillant sur de grandes applications et les commentaires sont tous les mêmes : Time Profiler peut être instable et lent. Même en obtenant les captures d'écran de cet article, j'ai rencontré plusieurs blocages et j'ai dû forcer l'arrêt. La symbolisation est souvent un problème, les traces étant générées et n'affichant que les adresses mais pas les noms de fonction.

Au contraire, affirme-t-il, ETTrace utilise un graphique de flamme pour faciliter l'identification des goulots d'étranglement des performances et fournit un outil de ligne de commande facile à utiliser qui établira le profil de l'application exécutée localement. L'intégration d'ETTrace dans une application iOS est aussi simple que de lier un framework Objective-C et d'exécuter ettrace sur la ligne de commande pour démarrer et arrêter le profilage lorsque vous le souhaitez. ETTrace prend également en charge la possibilité de démarrer le traçage juste après le lancement de l'application en définissant la clé Info.plist ETTraceRunAtStartup sur OUI.

Le framework est capable d'enregistrer la pile d'applications à intervalles fixes dans un fichier de trace, qui est ensuite utilisé pour créer une visualisation. ETTrace échantillonne uniquement le thread principal, qui est la partie la plus sensible au temps d'une application iOS car il a la responsabilité de rendre l'interface utilisateur et ne doit jamais bloquer. Les traces peuvent ensuite être téléchargées sur une page publique du site Web d'Emerge Tools pour créer un Flame Graph. Vous pouvez également différencier deux traces pour comparer deux exécutions différentes de votre application et inspecter, par exemple, comment une fonction s'est améliorée ou a régressé.

Un autre avantage d'ETTrace, dit Martin, est qu'il peut être intégré dans un pipeline CI à l'aide d'Emerge Tools Performance Analysis, qui fournit des fonctionnalités de test de performance. En tant qu'étude de cas, il mentionne le travail effectué en tant que Doordash pour réduire le temps de lancement de leur application iOS de 60 % en identifiant et en supprimant les goulots d'étranglement associés aux tests de conformité au protocole Swift.

Un graphique Flame est un moyen de visualiser des données hiérarchiques, ce qui facilite l'identification des chemins de code les plus fréquemment utilisés. Chaque nœud, c'est-à-dire une fonction, est représenté par un cadre dont la largeur représente une mesure relative du temps CPU utilisé par cette fonction.

ETTrace peut être téléchargé depuis GitHub.

Codez, déployez et mettez à l'échelle Java à votre façon. Microsoft Azure prend en charge votre charge de travail avec de nombreux choix, que vous travailliez sur une application Java, un serveur d'applications ou un framework. Apprendre encore plus.

Écrire pour InfoQ a ouvert de nombreuses portes et augmenté les opportunités de carrière pour moi. J'ai pu m'engager profondément avec des experts et des leaders d'opinion pour en savoir plus sur les sujets que j'ai abordés. Et je peux également diffuser mes apprentissages à la communauté technologique au sens large et comprendre comment les technologies sont utilisées dans le monde réel.

J'ai découvert le programme de contributeur d'InfoQ plus tôt cette année et je l'apprécie depuis ! En plus de me fournir une plate-forme pour partager l'apprentissage avec une communauté mondiale de développeurs de logiciels, le système d'évaluation par les pairs d'InfoQ a considérablement amélioré mon écriture . Si vous cherchez un endroit pour partager votre expertise logicielle, commencez à contribuer à InfoQ.

J'ai commencé à écrire des nouvelles pour la file d'attente InfoQ .NET afin de me tenir au courant de la technologie, mais j'en ai retiré tellement plus. J'ai rencontré des gens compétents, obtenu une visibilité mondiale et amélioré mes compétences en écriture.

Devenir éditeur pour InfoQ a été l'une des meilleures décisions de ma carrière . Cela m'a mis au défi et m'a aidé à grandir de tant de façons . Nous aimerions avoir plus de monderejoins notre équipe.

InfoQ recherche un rédacteur en chef à temps plein pour rejoindre l'équipe internationale et toujours distante de C4Media. Rejoignez-nous pour couvrir les technologies les plus innovantes de notre époque, collaborer avec les praticiens du logiciel les plus brillants au monde et aider plus de 1,6 million d'équipes de développement à adopter de nouvelles technologies et pratiques qui repoussent les limites de ce que les logiciels et les équipes peuvent offrir !

Un résumé du contenu de la semaine dernière sur InfoQ envoyé tous les mardis. Rejoignez une communauté de plus de 250 000 développeurs seniors. Voir un exemple

Nous protégeons votre vie privée.

Vous devez enregistrer un compte InfoQ ou vous connecter ou vous connecter pour publier des commentaires. Mais il y a tellement plus derrière l'inscription.

Tirez le meilleur parti de l'expérience InfoQ.

HTML autorisé : a,b,br,blockquote,i,li,pre,u,ul,p

HTML autorisé : a,b,br,blockquote,i,li,pre,u,ul,p

HTML autorisé : a,b,br,blockquote,i,li,pre,u,ul,p

Rejoignez une communauté d'experts. Sergio De Simone a ouvert de nombreuses portes et augmenté les opportunités de carrière Le système d'évaluation par les pairs de Vivian Hu InfoQ a considérablement amélioré mon écriture Oghenevwede Emeni a obtenu une visibilité mondiale et a amélioré mes compétences en écriture façons rejoindre notre équipe Thomas Betts Rédacteur en chef à temps plein L'InfoQ Tirez le meilleur parti de l'expérience InfoQ.