Thomas Koehler et l'optimisation de programmes
Thomas Koehler a rejoint en 2024 le Laboratoire des sciences de l’ingénieur, de l’informatique et de l’imagerie (ICube - CNRS/Université de Strasbourg) en tant que chargé de recherche CNRS.
Quel est votre domaine de recherche ?
Thomas Koehler : Les récentes avancées dans des domaines tels que le traitement d'images, la simulation physique ou l'apprentissage automatique nécessitent une puissance de calcul massive pour produire de meilleurs résultats. Pour exécuter ces calculs tout en respectant les contraintes du monde réel, il faut optimiser les programmes afin de les rendre plus rapides et de réduire leur consommation de mémoire et d'énergie. Cependant, l'optimisation des programmes est un défi. L'optimisation manuelle prend du temps et est sujette aux erreurs. L'optimisation automatique est actuellement incapable d'atteindre à la fois la performance et la généralité.
L'objectif de mes recherches est de permettre aux programmeurs d'optimiser leurs programmes en toute sécurité, de manière interactive et à travers les couches d'abstraction. J'envisage un assistant d'optimisation qui s'adapte à l'évolution des logiciels et du matériel, qui comprend une boucle de rétroaction interactive efficace et qui est capable de raisonner sur l'exactitude numérique des nombres de précision finie.
Qu’avez-vous fait avant d’entrer au CNRS ? Pourquoi avoir choisi le CNRS ?
T. K. : Avant de rejoindre le CNRS, j'étais chercheur postdoctoral dans la même équipe du laboratoire ICube, ICPS. J'ai obtenu mon doctorat à la School of Computing Science de l'université de Glasgow, en Écosse. J'ai obtenu mon master à Sorbonne Université à Paris.
Depuis mon doctorat, j'ai eu de nombreuses opportunités d'emploi en recherche et développement dans l'industrie, car il y a une forte demande d'experts en optimisation de programmes et en compilateurs. J'ai décidé de rejoindre le CNRS car je préfère contribuer à une communauté de recherche ouverte plutôt qu'à des produits industriels fermés. De plus, j'aime l'idée de former la prochaine génération de jeunes chercheurs tout en favorisant un environnement et une culture de recherche sains, tout comme mes directeurs de thèse l'ont fait pour moi. Le CNRS, par sa culture, sa liberté de recherche et son esprit interdisciplinaire, semble être l'endroit idéal pour combiner plaisir, impact, travail d'équipe et développement individuel.
Qu’est-ce que qui vous a amené à faire des sciences informatiques ?
T. K. : C'est l'art des jeux vidéo qui m'a d'abord attiré vers l'informatique. Je voulais comprendre comment un ordinateur est programmé pour orchestrer efficacement des tâches complexes telles que la reproduction du son, le rendu des graphiques, l'animation des IA et la simulation de la physique, le tout en temps réel et au service d'une expérience unique. J'ai commencé à essayer de comprendre et de programmer des moteurs de jeu au lycée, jusqu'à ce que mes intérêts s'éloignent des jeux vidéo, d'abord vers l'optimisation des pipelines de traitement d'images, puis vers les langages de programmation, les compilateurs et l'informatique de manière plus générale.