Accelerating single-step evaluations through GPU offloading
Single Nucleotide Polymorphism (SNP) genotype datasets used in empirical research are steadily growing in size which has introduced challenges in the calculation of population statistics that are based on large parts of the genome. In other fields, similar computational challenges have been tackled with the help of GPUs. We have developed a range of algorithms for the calculation of SNP genotype matrix operations widely used in empirical studies, which take advantage of modern NVIDIA GPUs. We provide an implementation in the C library miraculix and exemplary interfaces in Julia and Fortran. To ease adaptation, we also supply functions to calculate a number of derivatives, such as the genomic relationship matrix (GRM), linkage disequilibrium (LD) statistics, the genomic BLUP, and principal components analysis. Source code is released under the Apache 2.0 licence and is freely available at GitHub. The library is developed in C, C++ and CUDA.
Authors who publish with this journal agree to the following terms:
- Authors retain copyright and grant the journal right of first publication with the work simultaneously licensed under a Creative Commons Attribution License that allows others to share the work with an acknowledgement of the work's authorship and initial publication in this journal.
- Authors are able to enter into separate, additional contractual arrangements for the non-exclusive distribution of the journal's published version of the work (e.g., post it to an institutional repository or publish it in a book), with an acknowledgement of its initial publication in this journal.
- Authors are permitted and encouraged to post their work online (e.g., in institutional repositories or on their website) prior to and during the submission process, as it can lead to productive exchanges, as well as earlier and greater citation of published work (See The Effect of Open Access).