Suivez

la liste

Mission:

La mission s'inscrit dans le cadre d’un partenariat de développement technologique et de transfert de compétences entre l'équipe Inria STORM et la DGA autour du logiciel AFF3CT pour l'expérimentation, la validation et l'exécution de chaînes de communication numériques.

Les objectifs de cette mission les suivants:

  • Apporter une aide technique transversale à l'opération de développement technologique et de transfert de compétences.
  • Assurer la cohérence et l'intégration des développements logiciels de ces missions.
  • Permettre le suivi qualitatif et quantitatif automatisé des performances du logiciel AFF3CT pendant l'opération et au-delà.
  • Mettre en œuvre le transfert de compétences via des supports et des formations.
    Le poste proposé est donc au cœur de cette collaboration entre Inria et la DGA sur le logiciel AFF3CT. Il est par nature multi-disciplinaire avec une composante informatique et une composante en communications numériques, ainsi que des aspects d'encadrement et de pédagogie.

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

  1. Participer à l'encadrement technique au quotidien de l'équipe assignée à l'opération en appui au personnel permanent de l'équipe.
  2. Mettre en place les solutions logicielles d'observation et de contrôle de l'évolution des performances dans le processus d'intégration continue
  3. Mettre en place les solutions logicielles de visualisation temps réel et post mortem des métriques de chaines de communication AFF3CT.
  4. Compléter l'opération de développement technologique par un transfert de compétences par la préparation de matériels de documentation, d'illustration de cas d'usages et de formation.
  5. Assurer une ou plusieurs sessions pratiques de formation à destination des usagers.

Compétences techniques et niveau requis :

Compétences techniques :

  • Expertise en développement C++
  • Maitrise d'un environnement d'intégration continue
  • 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 de la documentation et des supports pédagogiques
  • Être capable d'écrire des rapports d'activité

Contexte :
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 et avec quelle qualité. D'autre part, cela fournit également une aide dans la mise au point de nouveaux modules et le réglage de performances dans AFF3CT, ainsi qu'en termes d'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/