@InProceedings{wright19alcob, author="Wright, Christopher and Krishnamoorty, Sriram and Kulkarni, Milind", editor="Holmes, Ian and Mart{\'i}n-Vide, Carlos and Vega-Rodr{\'i}guez, Miguel A.", title="MULKSG: MULtiple K Simultaneous Graph Assembly", booktitle="Algorithms for Computational Biology", year="2019", publisher="Springer International Publishing", address="Cham", pages="125--136", abstract="This work shows how to parallelize multi K de Bruijn graph genome assembly simultaneously, removing the bottleneck of iterative multi K assembly. The expected execution time on a single node with 40 cores is variable, with the average execution time for the entire pipeline over 16 datasets tested being 1613 s for SPAdes vs. 1581 s for MULKSG, with the MULKSG graph creation and traversal averaging 15{\%} faster than SPAdes. We implement a multi-node implementation for the graph creation and traversal portions of the assembly, showing the speedups in Fig. 4. We show that when implemented correctly with correction phases performed per graph in parallel, the expected outcome is very close to the original method, in some cases having less errors while keeping the same NGA50 and genome coverage {\%}. We show this works in practice, implementing with the popular genome assembler SPAdes. Further, this algorithmic change gets rid of the single node sequential bottleneck on multi K genome assembly, allowing for the use of parallel error correction, graph building, graph correction, and graph traversal. We implement a parallel version of the assembly and show the statistics are the same as when run on a single node. The code is open source and can be found at https://github.com/cwright7101/mulksg.", isbn="978-3-030-18174-1" }