NVIDIA PARABRICKS

Introduction

Analyzing genomic data is computationally intensive. Time and cost are significant barriers to using genomics data for precision medicine. The NVIDIA Parabricks Genomics Analysis Toolkit breaks down those barriers, providing GPU-accelerated genomic analysis. Data that once took days to analyze can now be done in under an hour.

Why Use Nvidia Parabricks ?

Parabricks is a software suite for performing secondary analysis of next generation sequencing (NGS) DNA data. A major benefit of Parabricks is that it is designed to deliver results at blazing fast speeds by utilizing NVIDIA GPU acceleration.Parabricks can analyze whole human genomes in about 45 minutes, compared to about 30 hours for 30x WGS data. The best part is the output results exactly match the commonly used software. So, it’s fairly simple to verify the accuracy of the output.

Installation

The pbrun command line utility is used to interact with the Parabricks NGC container. pbrun is called from the host to transparently download, provision, and run the NGC Parabricks container. The instructions below will guide you through the setup and usage of pbrun on your local system.

Prepare the installer

To obtain the Parabricks installer, Please follow the instructions to obtain a free license for 90 days located on the NVIDIA Parabricks developer portal. Once you complete the registration, Parabricks installer package download link will be sent to your registered email id, download package onto your local system and copy the package installed to the GPU server using file transfer clients, Use below instruction for further navigate to the directory containing parabricks_installer.tar.gz.

# tar -xzf parabricks.tar.gz
# cd parabricks

Install the Parabricks suite

Execute installer.py to install pbrun on the host system. The most common installations are shown below, for a complete list of installation options see the Parabricks installation guide

Using Docker

This Parabricks 2.5.0 image contains nvidia-container-toolkit , nvidia-docker2 and parabricks 2.5.0 NGC container image, which are the prerequisites packages for parabricks installer.

# sudo ./installer.py --ngc --container docker

Verify the installation by checking the pbrun version.

# pbrun --version
pbrun: v2.5.0

Applications

pbrun: Command line utility used to initiate Parabricks pipelines and run Parabricks standalone tools. This utility is called from the host and will invoke the NGC Parabricks container for computation.

Parabricks pipelines & standalone tools available here

Example

Download input dataset

# wget https://s3.amazonaws.com/parabricks.sample/parabricks_sample.tar.gz
# tar xf parabricks_sample.tar.gz
# ls parabricks_sample

Running

From within the directory containing parabricks_sample the pbrun command will initiate the Parabricks fq2bam application, which will be run from within the NGC Parabricks container downloaded during installation.

 # pbrun fq2bam \
--ref parabricks_sample/Ref/Homo_sapiens_assembly38.fasta \
--in-fq parabricks_sample/Data/sample_1.fq.gz parabricks_sample/Data/sample_2.fq.gz \
--out-bam output.bam