Engineer F/M. Compiler Optimization for AI

Type de contrat : Fixed-term contract

Contrat renouvelable : Oui

Niveau de diplôme exigé : Graduate degree or equivalent

Fonction : Temporary scientific engineer

A propos du centre ou de la direction fonctionnelle

The Centre Inria de l’Université de Grenoble groups together almost 600 people in 24 research teams and 9 research support departments.

Staff is present on three campuses in Grenoble, in close collaboration with other research and higher education institutions (Université Grenoble Alpes, CNRS, CEA, INRAE, …), but also with key economic players in the area.

The Centre Inria de l’Université Grenoble Alpes is active in the fields of high-performance computing, verification and embedded systems, modeling of the environment at multiple levels, and data science and artificial intelligence. The center is a top-level scientific institute with an extensive network of international collaborations in Europe and the rest of the world.

 

 

Contexte et atouts du poste

CORSE is a joint research group in the LIG laboratory that regroups several expertise that stand at the interface between software and hardware: those are domain specific application/library tuning, compiler optimization, run-time systems, and debugging/monitoring. Our domains of application include performance (both speed and energy consumption), reliability, and teaching of computer science. An important activity concerns the optimization of machine learning applications for specific high-performance embedded architectures.

The position is funded by the DeepGreen project. The goal of CORSE in this project is to advance research in compiler optimization, including compiler infrastructure and scheduling heuristics, specifically for deep learning codes. More specificaly, we contribute to the development of the Aidge infrastructure by providing operator and subgraph optimization, the emission of optimized C code for CPUs, and the development of "schedule" languages for distributed memory architectures. We also contribute to MLIR using Python bindings to create graph, operator, and transformation description languages.

We are looking for a motivated computer engineer to join our team and contribute, under our direction, to the software development associated with these projects. The ideal candidate will have programming skills in C++ and Python and be willing to acquire more advanced skills through practice.

Mission confiée

The aim of the position is to contribute to the development of tools that help the programmer to obtain highly optimized code of deep learning applications. This work may includes various tasks:

  • Contribute to the development of a backend for the Aidge infrastructure aimed at code optimization for CPUs.
  • Develop programming interfaces for code analysis (static analysis, hardware counters, etc.).
  • Participate in the development of "schedule" languages for distributed architectures.
  • Work on projects using MLIR and Python bindings.
  • Participate in the development of a prototype for iterative and interactive compilation

 

Principales activités

The main activities include:

  • Contributions to MLIR-based compiler infrastructure
  • Development of programming interfaces
  • Technical support to PhD students

Compétences

Desired skills:

  1. C++, Python programming
  2. Continuous integration, GIT
  3. Experience with deep learning infrastructures.
  4. Compilation infrastructure, MLIR
  5. Compilation optimization, code transformation, tiling
  6. Knowledge of hardware architectures, hardware counter manipulation libraries, and top-down analysis (TMA)
  7. Strong communication skills (teamwork) and the ability to thrive in a research environment with flexible development directives
 

Avantages

  • Subsidized meals
  • Partial reimbursement of public transport costs
  • Leave: 7 weeks of annual leave + 10 extra days off due to RTT (statutory reduction in working hours) + possibility of exceptional leave (sick children, moving home, etc.)
  • Possibility of teleworking (90 days / year) and flexible organization of working hours
  • Social, cultural and sports events and activities
  • Access to vocational training
  • Social security coverage under conditions

Rémunération

Gross salary : from 2 692 euros before deduction of tax incomes depending on laboral experiences and degrees.