
Research engineer in program compilation and parallelization
Contract type : Fixed-term contract
Level of qualifications required : PhD or equivalent
Fonction : Temporary scientific engineer
Level of experience : From 3 to 5 years
Context
As part of a 5-year national research project, the main role of the engineer recruited will be to contribute to the development of a software platform for dynamic compilation, optimization and parallelization for scientific applications, with the aim of achieving exaflopic performance while focusing on energy efficiency. The originality of the proposed research and engineering work lies in the dynamic aspect, i.e. during the execution of the target application, of program optimization and parallelization analyses and transformations. Such an approach calls for many of the innovations needed to minimize the time and resource costs, and maximize the efficiency, of the strategies developed.
The engineer will collaborate with PhD students and engineers involved in the same national project.
Assignment
Assignments may involve one or more of the following objectives:
- on-the-fly optimization and parallelization of compute kernels, based on dynamic sample analysis at runtime, using a speculative approach.
- dynamic generation of several versions of compute kernels by applying efficient optimization transformations according to execution contexts.
- dynamic generation of parallel tasks according to available hardware and software resources.
A few years ago, the CAMUS team developed a dynamic system dedicated to speculative polyhedral optimization, called Apollo. This dynamic optimization platform was later extended into a multiple version generation system, where several polyhedral optimization scenarios are evaluated. Apollo is implemented in the form of LLVM analysis and optimization passes and a dynamic part in C++. We plan to use Apollo as the basis for our research and development work.
Main activities
- Become familiar with the context of the research work: program analysis, optimization and parallelization techniques, polyhedral model, development of Clang-LLVM compiler passes, parallel task scheduling with OpenMP, performance and energy consumption evaluation.
- Contribute to scientific and technical advances in the implementation of the program parallelization and optimization platform.
- Collaborate with the team of PhD students and engineers involved in the project.
Skills
The candidate must have a doctorate in computer science and significant experience in compiling, parallelizing and optimizing programs. Experience in developing software tools and compilation passes would be a plus (LLVM).
Benefits package
- 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 (after 6 months of employment) and flexible organization of working hours
- Professional equipment available (videoconferencing, loan of computer equipment, etc.)
- Social, cultural and sports events and activities
- Access to vocational training
- Social security coverage
Remuneration
Remuneration will be determined according to degree (with or without thesis) and years of experience:
from €2652.00 to €3353.00 gross per month.
General Information
- Theme/Domain :
Architecture, Languages and Compilation
Software engineering (BAP E) - Town/city : Strasbourg
- Inria Center : CRI Nancy - Grand Est
- Starting date : 2023-09-04
- Duration of contract : 2 years
- Deadline to apply : 2023-09-30
Warning : you must enter your e-mail address in order to save your application to Inria. Applications must be submitted online on the Inria website. Processing of applications sent from other channels is not guaranteed.
Instruction to apply
Defence Security :
This position is likely to be situated in a restricted area (ZRR), as defined in Decree No. 2011-1425 relating to the protection of national scientific and technical potential (PPST).Authorisation to enter an area is granted by the director of the unit, following a favourable Ministerial decision, as defined in the decree of 3 July 2012 relating to the PPST. An unfavourable Ministerial decision in respect of a position situated in a ZRR would result in the cancellation of the appointment.
Recruitment Policy :
As part of its diversity policy, all Inria positions are accessible to people with disabilities.
Contacts
- Inria Team : CAMUS
-
Recruiter :
Clauss Philippe / Philippe.Clauss@inria.fr
The keys to success
The candidate must be ambitious and motivated by research and innovation, and possess qualities of perseverance and determination. He/She must be able to collaborate easily, supervise work and present results.
About Inria
Inria is the French national research institute dedicated to digital science and technology. It employs 2,600 people. Its 200 agile project teams, generally run jointly with academic partners, include more than 3,500 scientists and engineers working to meet the challenges of digital technology, often at the interface with other disciplines. The Institute also employs numerous talents in over forty different professions. 900 research support staff contribute to the preparation and development of scientific and entrepreneurial projects that have a worldwide impact.