L’optimisation des performances d’applications par EZTrace

EZTrace, un logiciel libre d’analyse de performance informatique, est au centre d’un nouveau projet FUI, mené par François Trahay, chercheur à Télécom SudParis. Son objectif ? Mettre l’informatique au service du big data pour résoudre des problèmes bien réels.

La version originale de cet article a été publiée sur le site de Télécom SudParis

« Je sais que des employés d’EDF l’utilisent déjà pour leurs systèmes de prédiction de l’usure des centrales nucléaires », affirme François Trahay, à propos de son logiciel EZTrace. Maître de conférences à Télécom SudParis, il s’est spécialisé dans le « calcul de haute performance » et s’intéresse à la résolution de problèmes physiques et réels par des méthodes informatiques. « Prédire la météo, simuler l’impact d’un séisme ou l’écoulement de l’air sur une aile d’avion sont des calculs très demandeurs en termes de puissance, évoque l’enseignant-chercheur, et ne peuvent pas être réalisés rapidement par un simple ordinateur portable. »

Néanmoins, même les super-calculateurs sont faillibles et leurs performances ne sont pas toujours à la hauteur de leur puissance matérielle. « Quand le problème, donc le calcul, est découpé pour être traité sur dix mille machines au lieu de dix, ces dernières se trouvent obligées de communiquer des informations, explique François Trahay. Plus elles passent de temps à communiquer, plus le calcul est ralenti. » Heureusement, le chercheur a trouvé un moyen d’y remédier : EZTrace.

Mieux visualiser pour mieux optimiser

 

Une autre façon de visualiser des « traces » : chaque cercle correspond à un processus qui change de couleur et de taille de manière animée selon son état (en calcul, en attente ou en communication). (cf. vidéo ci-dessous)

 

Ce logiciel analyse le déroulement des processus de calcul de n’importe quelle application informatique durant son exécution. EZTrace observe chaque calcul, enregistre chaque information partagée entre les processeurs et note chaque temps d’attente. Il réalise ensuite une « trace » informatique de cette exécution et génère un diagramme pour visualiser toutes ses observations schématiquement. Le tout permet de repérer plus facilement les répétitions de comportements inutiles et les dysfonctionnements dans le processus de calcul.  « Le but d’EZTrace est de fournir au développeur un moyen simple pour comprendre pourquoi l’exécution de son application ne va pas assez vite et ce qu’il faudrait modifier dans son code pour optimiser et donc accélérer son exécution ».

Solution informatique, problèmes réels

« Je développe EZTrace depuis la fin de ma thèse, c’est mon bébé, avoue François Trahay. J’y intègre des résultats de mes recherches pour le faire évoluer constamment. » En septembre 2018, l’amélioration d’EZTrace sera au cœur d’un projet FUI de deux ans, en partenariat avec le fournisseur de stockage pour data-centers, DDN (DataDirect Networks), et l’entreprise française de reciblage publicitaire sur Internet, Criteo. « Pour DDN, l’intérêt sera de fournir le logiciel directement avec le matériel de stockage vendu. Quant à Criteo, qui manipule des big data, EZTrace va lui permettre d’améliorer la rapidité de ses calculs et ainsi afficher des publicités plus pertinentes et plus rapidement », remarque l’enseignant-chercheur. « L’idée est de transférer la technologie d’EZTrace, tout en conservant son statut de logiciel libre ».

Data-visualisation du projet EZTrace, réalisée par des étudiants de l’ESAD de Reims, en partenariat avec Télécom SudParis, en 2016 :

François TRAHAY est maître de conférences (département Informatique – équipe Samovar ACMES) à Télécom SudParis. Expert en logiciels et algorithmes,  Il est membre de l’équipe HP2 (High-Performance & Parallelism) qui étudie les performances de systèmes parallèles et distribués.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *