Index distribué de k-mer permettant leur comptage et leur localisation

Alban Mancheron (Université de Montpellier)

09/02/2023 10:30 - 12:00
Emplacement: Aurigny Room


Les progrès des 15 dernières années en matière de séquençage d’ADN et d’ARN, associés à la baisse de leurs coûts ont eu comme effet direct une production massive de données à analyser. Ce changement d’échelle du volume de données a induit l’apparition de nouvelles méthodologies et notamment celles basées sur le comptage des k-mers – fragments de longueur k – présents dans les séquences. Ces comptages peuvent être utilisés de différentes manières. Par exemple, rechercher des marqueurs spécifiques de certaines populations ou bien pour discriminer les erreurs de séquençage des variations biologiques…
Afin de compter les occurrences de tous les k-mers provenant de très gros volumes de données, il devient nécessaire de disposer de machines surpuissantes ou d’adapter les méthodes existantes afin de distribuer les calculs. C’est cette seconde option que nous avons choisi en développant une librairie en C++ (intitulée libGkArrays-MPI et distribuée sous la licence libre CeCILL-C), exploitant le parallélisme léger (multithreading) mais également le calcul distribué, permettant de compter les k-mers des séquences décrites dans un ou plusieurs fichiers (fasta, fastq, compressés ou non). Outre le simple comptage, cette librairie permet également de les indexer (donc de pouvoir retrouver leurs séquences d’origine). Sur la base de cette librairie, nous avons également développé un outil (intitulé gkampi et distribué sous licence libre CeCILL) pouvant s’exécuter sur une simple machine comme sur un cluster de calcul en passant par un parc de machines hétérogènes.
L’outil gkampi et la librairie libGkArrays-MPI proposent les même fonctionnalités que les outils standards de comptage (Jellyfish, KMC, …) ; mais ils permettent également également de compter/indexer des k-mers espacés.