Exécution native de code GPU dans le contexte d’une simulation SystemC/TLM 2.0

Publié le : 10 janvier 2019

Dans le cadre de la conception de systèmes numériques, le prototypage virtuel est devenu une nécessité, rendant possible le développement et la validation du logiciel avant la disponibilité de la plateforme matérielle. Le LCE (Laboratoire de Calcul et Environnement de Conception) propose sa propre solution de prototypage virtuel appelée SESAM. Grâce à une riche bibliothèque de composants et des méthodes innovantes d’accélération, SESAM permet de créer des prototypes virtuels de plateformes complexes et d’exécuter du code invité à des vitesses record. SESAM modélise plusieurs interfaces externes : SPI, I2C, PCI-Express, afin de rendre possible la simulation de plusieurs sous-systèmes connectés au sein d’une même simulation SystemC.
Beaucoup d’architectures modernes adoptent un processeur graphique, ou GP-GPU (General Purpose Graphics Processing Unit) pour effectuer du calcul massivement parallèle. Le GPU est le plus souvent accessible via le bus PCI-Express, utilisé pour le transfert de données et de code exécutable vers la mémoire du GPU. Le but de ce stage est d’émuler l’exécution d’un code CPU/GPU en exécutant la partie CPU sur le modèle de processeur dans SESAM (e.g. ARM), et le code GPU sur un GPU physique connecté à la machine hôte. Il s’agira de modéliser dans SESAM un endpoint PCI-E qui transforme les requêtes TLM vers de vraies requêtes destinées au GPU physique. Le stagiaire sera donc confronté aux aspects les plus bas-niveau de la programmation GP-GPU et des transactions PCI-E. Les résultats de ce stage sont susceptibles de donner lieu à une publication dans une conférence internationale.
Le candidat recherché est en dernière année de master recherche ou diplôme ingénieur (bac+5). Des connaissances solides en architecture des ordinateurs, langages C++ et C bas niveau sont requises. Toute expérience en programmation GPGPU (CUDA, OpenCL) sera appréciée. Le candidat idéal pour ce poste est curieux, aime apprendre de nouvelles choses et n’hésite pas à proposer des idées originales pour relever les nouveaux défis.

En naviguant sur notre site, vous acceptez que des cookies soient utilisés pour vous proposer des contenus et services adaptés à vos centres d’intérêts. En savoir plus
X