Teaching

Teaching

My main teaching are System and Large Scale Distributed Systems Some material@Toulouse: M1 parallelism Introduction lesson MPI Lesson MPI and MPI Python examples from the Lesson Example of collective operations TD MPI Labs MPI, Files for the labs Homework MPI, Files for the Homework Monitors Lesson 1, Lesson 2 Monitor Exercises: TD1 TD2 TD3 Monitor Labs and Python sheet for labs M1 Systèmes répartis Project: Multi-player fully distributed game lab M2 resource management

Création de code aléatoire et obfusqué par LLVM

Nature du projet Preuve de concept Description du travail demandé Le but de ce projet long de master est de développer un outil de création de code aléatoire en se basant sur LLVM. Cette chaine de compilation génère du code binaire à partir de code assembleur en utilisant une représentation intermédiaire sous forme d’arbre. Plusieurs projets existent pour manipuler ces représentations tels que l’obfuscateur opensource en C : https://tigress.wtf/transformations.html L’objectif ici sera de pouvoir générer des codes ayant des comportement le plus différent possible : mémoire, branchement, calcul flottant, …

Evaluation de la performance de récupération des compteurs de performance hardware dans les processeurs

Nature du projet Preuve de concept Description du travail demandé Les processeurs récents possèdent des compteurs de performance très efficaces. Il s’agit de registre dans le processeur capables par exemple de compte le nombre de calculs entiers, le nombre de cache miss, … L’objectif de ce projet long est double Faire une campagne d’évaluation de performance des différents outils permettant de lire ces valeurs Programmer une bibliothèque permettant facilement et efficacement d’accéder à ces valeurs Environnement technologique Développement noyau linux Développement C Summary in english

Mise à jours de l'application cartOCampus

Nature du projet Développement logiciel Description du travail demandé L’application cartOCampus permet de se repérer sur le campus de l’université Paul Sabatier. Elle utilise une version ancienne du framework de développement Android. L’objectif de ce projet long est de mettre à jours cette application pour une version plus récente du framework. Il s’agira donc de : Mettre à jours l’application Corriger certains petits défauts Si le temps le permet, finir la version multiplateform (flutter) pour que l’application puisse s’exécuter aussi sur IOS Environnement technologique Développement Android et mobile Summary in english

Visualisation de communication entre processus Python

Nature du projet Preuve de concept Description du travail demandé La communication dans une application multi-processus est quelque chose de compliqué. L’objectif de ce projet long est de faire un outil permettant la visualisation des communications mais aussi de l’état des variables internes des différents processus. On s’intéressera au cas des applications python. L’objectif sera dans l’ordre et en fonction de l’avancement du groupe de Proposer une IHM permettant de visualiser les communications par socket et les variables locales Proposer une surcharge de la bibliothèque standard socket python Idem pour les opérations collectives MPI Idem pour les moniteurs de Hoar Environnement technologique Python, IHM Summary in english