Modelo de procesamiento paralelo en arquitecturas heterogéneas para la construcción de grafos en el ensamblaje de-Novo de genomas (2018)
En el presente proyecto se diseñó un modelo de procesamiento paralelo masivo sobre arquitecturas heterogéneas para acelerar y facilitar el tratamiento de k-mers en los procesos relacionados a la construcción de grafos en el ensamble genómico de-novo. El modelo incluye 3 principales aportes: una nueva estructura de datos denominadas CISK para representar de forma indexada y compacta los super k-mers y sus minimizer de una lectura y dos patrones de paralelización masiva, uno para obtener los m-mers canónicos de un conjunto de lecturas y otro para realizar la búsqueda de super k-mers basados en semillas tipo minimizer. Durante el proyecto se realizaron 4 procesos de evaluación: - una evaluación preliminar que permitió determinar que el proceso de ensamblaje de-novo es la etapa más compleja y con mayores requerimientos computacionales de un flujo de trabajo típico de lecturas genómicas y trancriptómicas, - una segunda evaluación que evidenció que las tareas asociados al tratamiento de k-mers son procesos que representan cuellos de botella debido a su alta exigencia de memoria, - una tercera evaluación que proyectó a las técnicas de particionamiento en disco basadas en super k-mers por semillas tipo minimizer como candidatas a potencializarlas mediante computación paralela masiva sobre plataformas heterogéneas, - y por último una evaluación al modelo propuesto que mostró sus ventajas obteniendo un speed-up hasta de 6.69x sobre procesos similares en herramientas contadoras de k-mers muy reconocidas que realizan paralelización en CPU. El código de la implementación del modelo se encuentra disponible en el repositorio https://github.com/BioinfUD/K-mersCL. Esta implementación consta de un código host y dos kernels en OpenCL, uno para minimizer canónicos y otro para signature.