Analyse de performance d'implémentations de l'algorithme NFS (H/F)

Référence : UMR7503-EMMTHO-001

  • Fonction publique : Fonction publique de l'État
  • Employeur : Centre national de la recherche scientifique (CNRS)
  • Localisation : 54506 VANDOEUVRE LES NANCY (France)
Postuler sur le site employeur

Date limite de candidature : 06/08/2026

Partager la page

Veuillez pour partager sur Facebook, Twitter et LinkedIn.

  • Nature de l’emploi Emploi ouvert uniquement aux contractuels
  • Nature du contrat

    CDD d'1 an

  • Expérience souhaitée Non renseigné
  • Rémunération Fourchette indicative pour les contractuels environ 2000 net/mois € brut/an Fourchette indicative pour les fonctionnaires Non renseignée
  • Catégorie Catégorie A (cadre)
  • Management Non renseigné
  • Télétravail possible Non renseigné

Vos missions en quelques mots

Missions :
Comparaison de logiciels : Comparer la base logicielle de Cado-NFS avec les bonnes idées contenues dans les projets concurrents (msieve, lasieve, bwxl, yafu) dans le but d'en tirer le meilleur.

Analyse de changement d'échelle : Analyser comment le code peut être utilisé pour aborder des tailles de problèmes plus importantes, en prenant pour jalon majeur la taille RSA-1024.

Intégration et partage : Intégrer l'ensemble des réalisations dans la base de code publique de Cado-NFS sur la plate-forme GitLab.

Affinage des estimations de calcul : Affiner l'estimation du coût de calcul pour RSA-1024 afin que ce dernier puisse être réalisé exclusivement avec Cado-NFS.

Activités :
Analyse et optimisation du crible : Analyser, réimplémenter et déterminer comment optimiser au mieux les algorithmes non documentés issus de la base de code lasieve pour l'étape de crible.

Mise en place de tests de performance : Établir des tests de régression de performance pour Cado-NFS et discuter de la méthode de présentation des résultats sur la non-régression de performance.

Exploration du potentiel sur GPU : Apporter une contribution aux travaux d'exploration concernant l'apport potentiel des GPU pour toutes les étapes de Cado-NFS (notamment l'étape de crible, la sélection polynomiale et l'algèbre linéaire creuse).

Optimisation HPC (optionnelle) : Selon les envies, approfondir l'adaptation de l'étape d'algèbre linéaire à un environnement HPC pour en maximiser la performance.

Contexte de travail :
Équipe et localisation : Le travail s'effectue au sein de l'équipe Caramba du LORIA à Vandœuvre-lès-Nancy.

Encadrement : Le projet est placé sous l'encadrement d'Emmanuel Thomé.

Durée et calendrier : Le contrat a une durée de 11 mois, avec un début prévu en octobre 2026 (10/2026).

Environnement logiciel : Le projet porte sur Cado-NFS, un logiciel académique conséquent écrit principalement en C++, comprenant environ 300 000 lignes de code.

Ressources matérielles : Accès à des infrastructures de calcul de tailles variées, incluant notamment la plate-forme Grid5000 pour les tests HPC et GPU.

Profil recherché

Competences :
Mathématiques et algorithmique : Disposer de solides connaissances mathématiques et algorithmiques pour être à l'aise avec l'algorithme NFS.

Développement C++ : Posséder une capacité essentielle à comprendre et écrire du code C++20.

Lecture d'assembleur : Être capable de comprendre des routines écrites en assembleur x86-64 lorsque cela est nécessaire, avec l'utilisation possible d'outils dédiés comme Ghidra.

Outils de versioning : Être parfaitement à l'aise avec l'outil Git et la plate-forme GitLab.

Compétences complémentaires : Une bonne connaissance des environnements HPC ainsi que des GPU constitue un plus selon les axes explorés.
Contraintes et risques :
Présentiel : Le travail est attendu principalement en présentiel. Le télétravail reste possible mais uniquement dans le respect des cadres classiques du CNRS.

Complexité et lisibilité du code historique : L'examen de la base de code lasieve est rendu difficile par sa nature même et par le fait qu'elle contient des algorithmes décrits nulle part ailleurs.

Risques d'effets de bord de performance : Cado-NFS est un édifice logiciel complexe dans lequel une modification en apparence anodine ou positive pour certains paramètres peut provoquer un effet de bord néfaste, voire désastreux, dans d'autres contextes.

Difficulté technique : Le portage sur GPU présente des difficultés variables selon les étapes, le crible étant probablement l'étape la plus difficile à porter sur cette architecture.

Niveau d'études minimum requis

  • Niveau Niveau 6 Licence/diplômes équivalents
  • Spécialisation Informatique, traitement de l'information, réseau de transmission des données

Langues

  • Français Seuil

Qui sommes-nous ?

Le Centre national de la recherche scientifique est un organisme public de recherche pluridisciplinaire placé sous la tutelle du ministère de l’Enseignement supérieur, de la Recherche et de l’Innovation.

C’est l’une des plus importantes institutions publiques au monde : 33 000 femmes et hommes (dont plus de 16 000 chercheurs et plus de 16 000 ingénieurs et techniciens), en partenariat avec les universités et les grandes écoles, y font progresser les connaissances en explorant le vivant, la matière, l’Univers et le fonctionnement des sociétés humaines.

En savoir plus sur l'employeur

À propos de l'offre

  • Le Centre national de la recherche scientifique est l’une des plus importantes institutions publiques au monde : 34 000 femmes et hommes (plus de 1 000 laboratoires et 200 métiers), en partenariat avec les universités et les grandes écoles, y font progresser les connaissances en explorant le vivant, la matière, l’Univers et le fonctionnement des sociétés humaines. Depuis plus de 80 ans, y sont développées des recherches pluri et interdisciplinaires sur tout le territoire national, en Europe et à l’international. Le lien étroit que le CNRS tisse entre ses missions de recherche et le transfert vers la société fait de lui un acteur clé de l’innovation en France et dans le monde. Le partenariat qui le lie avec les entreprises est le socle de sa politique de valorisation et les start-ups issues de ses laboratoires (près de 100 chaque année) témoignent du potentiel économique de ses travaux de recherche.

  • Vacant
  • Experte / Expert en calcul scientifique

Des offres d'emplois recommandées pour vous

  • Technicien-ne en expérimentation sylvicole

    • Localisation : Meurthe et Moselle (54)
    • Fonction publique : Fonction publique de l'État
    • Employeur : Institut National de Recherche pour l'Agriculture, l'Alimentation et l'Environnement (INRAE)
    • En ligne depuis le 15 juillet 2026
  • Doctorat (H/F) Étude de distingueurs structurels et statistiques pour les chiffrements symétriques

    • Localisation : Meurthe et Moselle (54)
    • Fonction publique : Fonction publique de l'État
    • Employeur : CNRS
    • En ligne depuis le 15 juillet 2026
  • Ingénieur de recherche (H/F)

    • Localisation : Meurthe et Moselle (54)
    • Fonction publique : Fonction publique de l'État
    • Employeur : CNRS
    • En ligne depuis le 10 juillet 2026
  • Post-doctorat (H/F) - Piles à combustible PEMFC

    • Localisation : Meurthe et Moselle (54)
    • Fonction publique : Fonction publique de l'État
    • Employeur : CNRS
    • En ligne depuis le 01 juillet 2026
  • Chef d'unité Infectiologie éco-épidémiologie risque faune sauvage

    • Localisation : Meurthe et Moselle (54)
    • Fonction publique : Fonction publique de l'État
    • Employeur : Agence Nationale de Sécurité Sanitaire de l'Alimentation, de l'Environnement et du Travail (ANSES)
    • En ligne depuis le 21 mai 2026
  • Doctorant (H/F) en spectroscopie d'excitation de photoluminescence (PLE) par STM

    • Localisation : Bas Rhin (67)
    • Fonction publique : Fonction publique de l'État
    • Employeur : CNRS
    • En ligne depuis le 17 juillet 2026