2022-05460 - Ingénieur confirmé F/H – Encadrement et mise en œuvre d'un projet de transfert technologique du logiciel AFF3CT

Type de contrat : CDD

Niveau de diplôme exigé : Bac + 5 ou équivalent

Fonction : Ingénieur scientifique contractuel

A propos du centre ou de la direction fonctionnelle

L'équipe STORM combine ses forces en matière de DSL de haut niveau, de temps d'exécution hétérogènes et d'outils d'analyse des performances pour aider les programmeurs à obtenir la plus grande efficacité des architectures informatiques modernes de manière portable.

Contexte et atouts du poste

La mission s'inscrit dans le cadre d’un partenariat de valorisation et de transfert de l'équipe STORM avec la DGA autour du logiciel AFF3CT de construction de chaînes de communication numériques.

L’ objectif du recrutement est multiple :
1) assurer l'encadrement technique au quotidien de l'équipe assignée à l'opération de transfert; 2) mettre en place les solutions logicielles de monitoring de performances dans le processus d'intégration continue, ainsi que les solutions de visualisation temps réel et post mortem des métriques de chaines de communication AFF3CT; 3) compléter le transfert technologique par un transfert de compétences via la formation et l'accompagnement de choix d’infrastructure. 

Quelques déplacements de l'ordre de un à deux par an sont prévus pour ce poste. Les frais de déplacements seront pris en charge dans la limite du barème en vigueur.

 

Mission confiée

Missions

Sous la direction des chercheurs permanents en charge du développement du logiciel AFF3CT la personne recrutée devra :

  • Coordonner les développements propre au transfert technologique d'AFF3CT assurés par l'équipe technique assignée à l'opération;
  • Développer l'infrastructure de tests de performances en intégration continue des chaînes de communication AFF3CT, et la visualisation temps réel et post-mortem des métriques.
  • Assurer le transfert de compétences via la formation et l'accompagnement de choix d'infrastructure.

Pour une meilleure connaissance du sujet de recherche proposé :

La suite logicielle AFF3CT (https://aff3ct.github.io/) [1] développée conjointement par Inria et le laboratoire IMS, à Bordeaux, définit un ensemble de composants logiciels permettant la construction de chaines de communication numérique pour l'étude, la validation et l'exploitation d'algorithmes de codes correcteurs d’erreur et de radio logicielle (SDR). AFF3CT est directement issu des travaux de recherche d'Inria et de l'IMS et présente donc par nature une certaine hétérogénéité dans le degré de couverture et le caractère expérimental ou de production en ce qui concerne l'implémentation et l'optimisation des divers algorithmes et codes de l'état de l'art en communication numérique. Bien qu’AFF3CT dispose d’outils de collecte, de comparaison et d’affichage de métriques sur la qualité des codes utilisés (BER, FER), il n’y a pas de métrique élaborée portant sur les chaines de SDR. Des interfaces comme gr-Fosphor [2] développé dans GnuRadio, ou Gqrx [3] permettent l’analyse par exemple du spectre. Par ailleurs, des métriques de performance sur des machines multicoeurs


Le but de cette étude sur 2 ans est de doter AFF3CT d’outils de mesure et de visualisation de performances temps réel, puis d’utiliser ces outils pour aider à la formation de nouveaux utilisateurs. Parmi ces métriques collectées en temps réel figurent les métriques applications comme le spectre, le train binaire et les informations de synchronisation. Cela permet d’une part de suivre ce qui est reçu, avec quelle qualité, et également fournit une aide dans la mise au point de nouveaux modules et le réglage de performances dans AFF3CT (et en intégration continue). Nous fournirons également des outils de mesure de performances sur l’architecture multi-coeurs ciblée, pour une analyse temps réel (in situ) et post-mortem. Par ailleurs, l’établissement de temps de références sur différentes machines parallèles a pour objectif la mise en place d’une méthode permettant de dimensionner le choix d’infrastructures de machines parallèles répondant à des usages spécifiques: on peut vouloir savoir le débit d’une configuration donnée, l’efficacité obtenue, ou bien le nombre de coeurs nécessaires afin d’atteindre un débit minimal. Enfin, les outils de visualisation de métriques liées au signal et aux performances donnent un éclairage plus intuitif des phénomènes et vont permettre de plus facilement former de nouveaux utilisateurs. L’expérience récente dans l’équipe Storm pour un outil comme EasyPAP [4] utilisé dans l’enseignement du parallélisme a montré son intérêt pour la compréhension de phénomènes fins sur le parallélisme.

Bibliographie

[1] A. Cassagne, O. Hartmann, M. Léonardon, K. He, C. Leroux, R. Tajan, O. Aumage, D. Barthou, T. Tonnelier, V. Pignoly, B. Le Gal et C. Jego, “AFF3CT: A Fast Forward Error Correction Toolbox!,“ SoftwareX, 2019.
[2] gr-Forphor: https://osmocom.org/projects/sdr/wiki/Fosphor
[3] Gqrx SDR. https://gqrx.dk/
[4] EasyPAP: Alice Lasserre, Raymond Namyst, Pierre-André Wacrenier. EASYPAP: a Framework for Learning Parallel Programming. Journal of Parallel and Distributed Computing, Elsevier, In press, ⟨10.1016/j.jpdc.2021.07.018⟩. ⟨hal-03126887v2⟩. https://gforgeron.gitlab.io/easypap/

 

Principales activités

Principales activités :

  • Encadrement technique de l'équipe de tranfert technologique
  • Développement de l'infrastructure de tests de performances branchement dans le processus d'intégration continue
  • Développement de l'infrastructure de visualisation temps réel et post mortem des métriques AFF3CT
  • Transfert de compétence et accompagnement de l'entité destinatrice du transfert technologique.
  • Préparation et présentation des délivrables du volet afférent de l'opération de transfert.

Activités complémentaires :

  •  Formation des utilisateurs et préparation du matériel de formation

 

Compétences

Compétences techniques et niveau requis :

  • Expertise en développement C++
  • Maitrise d'un environnement de CI
  • Maitrise des outils d'analyse de performance parallèle/vectorielle

Langues : français (courant) et anglais (B2)

Compétences relationnelles :

  • Savoir travailler en équipe
  • Aimer travailler dans une équipe pluridisciplinaire
  • Être à l'écoute des utilisateurs
  • Être capable d'écrire des rapports d'activité

Compétences additionnelles appréciées :

  • Compétences en développement Python

Avantages

  • Restauration subventionnée
  • Transports publics remboursés partiellement
  • Possibilité de télétravail et aménagement du temps de travail
  • Équipements professionnels à disposition (visioconférence, prêts de matériels informatiques, etc.)
  • Prestations sociales, culturelles et sportives (Association de gestion des œuvres sociales d'Inria)
  • Accès à la formation professionnelle
  • Sécurité sociale

Rémunération

Entre 2652€ et 2724€ brut mensuel selon expérience