Des jeux en graphes aux graphes en grilles, itinéraire d’un utilisateur heureux

Interview de Jorge Peña, doctorant à l’Institut des mathématiques appliquées et utilisateur de la grille de calcul de l’UNIL par Hamid Hussain-Khan, calcul scientifique Ci-UNIL


© higyou – Fotolia.com

Bonjour Jorge, vous êtes en terme de volume un des plus importants utilisateurs des ressources de calcul offertes par le Ci. Au cours de la dernière année, vous avez utilisé plus de 220’000 heures de calcul soit près de 10’000 jours cumulés. Ce temps est réparti entre la grille de calcul de l’UNIL et un petit cluster HPC de 48 cores mis en production en novembre 2010.
Pouvez-vous s’il vous plaît vous présenter en quelques mots ?
Je m’appelle Jorge Peña. Je suis assistant diplômé et doctorant à l’Institut de Mathématiques Appliquées de l’UNIL. D’origine colombienne, je suis en Suisse depuis l’année 2005, d’abord à Lugano pour mes études de master et depuis septembre 2006 à Lausanne pour mon doctorat.

Quel est votre background technique ?
Je suis ingénieur en électronique (UPB, Medellín, Colombia) avec un MAS en « embedded systems design » (USI, Lugano, Suisse).

Comment un ingénieur en électronique se retrouve-t-il à faire son PhD en faculté des SSP ?
J’ai toujours eu des intérêts très divers, des mathématiques aux sciences biologiques jusqu’à la philosophie et la littérature. Après mes études à Lugano j’allais m’inscrire à l’école prédoctorale de l’EPFL pour faire une thèse en intelligence artificielle ou en bio-inspiration. Au même moment, on m’a fait savoir qu’il y avait une place de doctorat à l’IMA lié au projet européen PERPLEXUS (Pervasive computing framework for simulating complex virtually-unbounded systems). Mon profil s’adaptait très bien aux attentes du projet : quelqu’un avec des connaissances en ingénierie et systèmes embarqués voulant faire une thèse multidisciplinaire dans une faculté de sciences sociales !

Pouvez-vous nous décrire brièvement votre projet de recherche et quels en sont les enjeux pour des applications dans notre vie quotidienne ?
Mon projet de recherche vise la modélisation de systèmes sociaux à l’aide des mathématiques et de la simulation informatique. Plus précisément, je m’intéresse à l’influence de la structure des populations sur l’émergence de la coopération dans des sociétés connectées en réseaux. Plutôt que des applications réelles dans notre vie quotidienne, mon projet a pour objectif d’aider à donner des réponses alternatives à la question de pourquoi et comment les êtres humains coopèrent les uns avec les autres quand une telle coopération semble être contraire à la théorie de la sélection naturelle en biologie et à celle du Homo economicus en économie.

Quels outils utilisez-vous pour mener à bien vos recherches ?
J’utilise de la modélisation mathématique (systèmes dynamiques non-linéaires, théorie des probabilités, théorie des graphes) et de la simulation numérique (systèmes multi-agents, automates cellulaires, simulations de Monte Carlo) dans le cadre de la théorie des jeux évolutionnaires et des réseaux complexes.

Comment avez-vous entendu parler de la grille de calcul de l’UNIL ?
Quand cela a été évident que j’allais avoir besoin d’énormément de temps de calcul pour mes simulations et que mon ordinateur personnel ne suffirait pas, j’ai essayé de connecter les ordinateurs Mac de mon institut (une dizaine de machines) en grille, en utilisant X-grid. Cependant, la tâche s’est révélée plus ardue que ce que j’avais imaginé. Au moment où j’ai pensé laisser tomber cette approche, mon collègue de l’IMA, Jean-Pierre Mueller, m’a parlé de GridUNIL. J’ai réalisé que dans ce projet on était en train de faire justement ce que je voulais faire avec les ordis de mon institut, mais à l’échelle de tout le campus et avec beaucoup plus de machines. J’ai alors pris contact avec Hamid Hussain-Khan et on a commencé à travailler au portage de mon application sur la grille de calcul de l’UNIL.

Comment s’est déroulé le portage de votre application scientifique sur une plateforme de calcul distribué? Etait-ce compliqué ?
Pas du tout. Hamid et Andreas Huber, un étudiant de l’ETHZ qui effectuait un stage au Ci, m’ont donné le support nécessaire. J’ai dû changer un peu l’interface de mon simulateur (écrit en R) et Andreas a fourni le reste (des scripts de soumission, de contrôle, etc.). Après une semaine de travail et quelques essais, mes simulations tournaient déjà sur plusieures machines du campus.

Comment accédez-vous à ces ressources de calcul ?
J’ouvre une fenêtre de l’application Terminal et je me connecte via ssh* au serveur de calcul argos. J’y copie la version du simulateur que je veux utiliser, avec la description des paramètres et je lance les scripts de soumission. Quand les simulations sont terminées, je me connecte à nouveau au serveur pour récupérer et analyser les résultats.

(* NdlR: ssh est un protocole de communication sécurisé présent ou installable dans la plupart des systèmes d’exploitation Mac/PC/Linux)

Au cours des prochains mois, vous arriverez au bout de votre thèse, le temps investi pour le portage de votre code était-il rentable ?
Oui. Je prépare actuellement deux articles pour des journaux scientifiques avec les résultats de mes simulations. Je n’aurais jamais pu avoir les résultats nécessaires pour explorer les questions posées si je n’avais pas utilisé une grille de calcul. Disons que le ratio coûts/bénéfices a été, dans ce cas, infime !

Si c’était à refaire, que changeriez-vous ?
Les journées que j’ai passé à essayer d’implémenter quelque chose qu’on avait déjà fait mieux et à une plus grande échelle ailleurs sur le campus. J’espère que d’autres doctorants et chercheurs pourront utiliser la grille de calcul de l’UNIL et profiter du support offert par les gens du Ci.

Jorge, nous vous remercions pour le partage de votre expérience en tant qu’utilisateur des ressources de calcul du Ci et vous souhaitons le meilleur pour la fin de votre thèse.

Bookmark and Share

,