Clara Parabricks v4.4.0

在 AWS 上使用 Parabricks 对 Complete Genomics 的全基因组和全外显子组数据进行基准测试

这是一个使用 Complete Genomics 测序仪的数据对 Parabricks 生殖系工作流程进行基准测试的快速入门指南。Parabricks 是一个用于基因组学二级分析的 GPU 加速工具包。在本指南中,我们将展示 Parabricks 如何在使用来自 Complete Genomics 的 DNBSEQ-T7 和 DNBSEQ-G400 测序仪的数据在云端以快速且经济高效的方式运行。

基因组文件(如 FASTQ 和 BAM 文件)很容易达到每个数百 GB 的大小。当运行涉及数十万个此类文件的研究时,很容易达到 TB 级的数据量,并且处理所有这些数据的成本变得非常高昂。当在云端运行时,这一点尤其明显,因为用户按小时付费,因此每一分钟的计算都很重要。我们处理数据的速度越快,成本就越低。

本示例随附的代码可以在 GitHub 上找到。

软件

这些基准测试是使用 Parabricks 4.0.1-1 版本执行的,该版本作为 Docker 容器在 NVIDIA GPU 云 (NGC) 上公开提供,可通过运行以下命令获得

复制
已复制!
            

docker pull nvcr.io/nvidia/clara/clara-parabricks:4.0.1-1

其他软件先决条件包括

表 1. 软件先决条件

软件

版本

用途

bwa 0.7.18 索引参考基因组
seqtk 1.4 下采样 FASTQ

为了最大限度地提高 Parabricks 的性能,最好所有文件读取和写入都在机器上的快速 SSD 上进行。要查找 SSD 的路径,请运行

复制
已复制!
            

lsblk

导出挂载点作为环境变量 NVME_DRIVE,以便此存储库中的脚本知道从哪里下载和运行数据

复制
已复制!
            

export NVME_DRIVE=/opt/dlami/nvme

硬件

对于 Parabricks,我们推荐两种 GPU 类别:高性能 GPU(A100、H100、L40S)和低成本 GPU(A10、L4)。这些基准测试已使用 AWS 上的 L40S 实例和 L4 实例进行了验证,但任何类似配置的机器都可以工作。请务必查看 Parabricks 文档以了解最低要求。以下是我们验证中使用的确切配置

表 2. 本指南中引用的实例的 AWS 实例详细信息。列出的价格来自 2024 年 10 月。有关当前价格,请参阅 AWS 文档

配置

L4

L40S

实例类型 g6.24xlarge g6e.24xlarge
操作系统 Ubuntu Ubuntu
AMI 深度学习 Nvidia 驱动程序 深度学习 Nvidia 驱动程序
GPU 数量 4 4
vCPU 数量 96 96
CPU 内存 384 GB 768 GB
按需每小时成本* $6.68 $15.07

对于这些基准测试,我们将使用来自 DNBSEQ-T7DNBSEQ-G400 Complete Genomics 测序仪的 NA12878 全基因组 (WGS) 数据。所有数据,包括 FASTQ、参考基因组和其他辅助文件,都公开托管,可以使用以下命令下载

复制
已复制!
            

download.sh

预处理

公开存在的数据几乎可以直接用于我们的基准测试。为了进行同类比较,我们希望两个 WGS 样本都具有相同的覆盖率。T7 WGS 数据的覆盖率为 46 倍,G400 WGS 数据的覆盖率为 30 倍。为了解决这个问题,我们将 T7 WGS 数据下采样 65%。为了实现这一点,我们可以运行

复制
已复制!
            

downsample.sh 0.65

这将重命名 E100030471QC960_L01_48_1.fq.gz 为 E100030471QC960_L01_48_1.30x.fq.gz,然后数据就可以通过基准测试运行了。

下表总结了每个样本的最终覆盖率、读取次数和文件大小

表 3. 输入文件的元数据。

T7

G400

30 倍 30 倍
6.58 亿 9.55 亿
72 GB 69 GB

查看 benchmarks 文件夹将显示可用的基准测试脚本

复制
已复制!
            

benchmarks/ ├── L4 │ ├── deepvariant.sh │ └── germline.sh └── L40S ├── deepvariant.sh └── germline.sh

对于每组硬件,都有一个 germline(生殖系)和一个 deepvariant 脚本。这种分离是由于每种配置使用不同的优化标志。要了解有关这些优化的更多信息,请查看 Parabricks 文档 。germline 脚本运行 Parabricks 生殖系流程,该流程对 FASTQ 文件进行比对并运行 HaplotypeCaller。deepvariant 脚本运行 Parabricks deepvariant 变异调用器。

benchmark.sh 脚本接受一个参数,用于指定硬件类型,该参数与 benchmarks 文件夹中的文件夹名称匹配。例如,要运行 L4 基准测试,我们可以运行

复制
已复制!
            

./benchmarks L4

类似地,要运行 L40S 基准测试,我们可以运行

复制
已复制!
            

./benchmarks L40S

Parabricks 软件会输出管道中每个步骤的运行时间,这些数字已记录在下表中。运行基准测试后,运行时间将捕获在位于 ${NVME_DIR}/data/logs 的日志文件中。下图是每个 GPU 类型上每个样本的运行时间图。

RuntimesPerSample.png

图 1. fq2bam、haplotypecaller 和 deepvariant 在每个 GPU 类型上每个样本的运行时间。

正如我们所预期的那样,对于每个样本,L40S 实例的运行时间都比 L4 实例的运行时间快。这种差异也反映在成本上,如下面的图表所示

CostPerSample.png

图 2. fq2bam、haplotypecaller 和 deepvariant 在每个 GPU 类型上每个样本的成本。

用于这些图表的精确数字汇总在下表中。

表 4. 完整表格,显示所有样本和所有 GPU 类型的全部运行时间和成本。成本反映了 2024 年 10 月的 AWS 定价。有关当前价格,请参阅 AWS 文档

L4

L40S

T7

G400

T7

G400

运行时间

成本

运行时间

成本

运行时间

成本

运行时间

成本

fq2bam 17 $1.85 16 $1.77 10 $2.39 11 $2.66
haplotypecaller 7 $0.82 7 $0.68 6 $1.44 6 $1.44
deepvariant 13 $1.44 13 $1.41 7 $1.70 6 $1.60

除了运行时间数字外,重要的是检查变异的质量是否与真值集非常匹配。

NA12878 基本事实 VCF 可以在 NIH FTP 上找到。由于此 VCF 是使用 GRCh37 参考基因组运行的,但我们的样本是使用 UCSC hg19 参考基因组运行的,因此我们首先需要进行 liftover,然后才能运行一致性分析。

作为可选步骤,可以使用 liftover.shconcordance.sh 脚本分别完成此操作。

下表是我们使用此工作流程实现的结果

表 5. 来自 DeepVariant 的 T7 样本的一致性结果。

DeepVariant 一致性

类型 过滤器 TRUTH.TP TRUTH.FN QUERY.FP METRIC.召回率 METRIC.精确率 METRIC_F1_Score
INDEL 全部 460832 6052 1389 0.987037 0.997107 0.992047
INDEL 通过 460832 6052 1389 0.987037 0.997107 0.992047
SNP 全部 3213043 38814 6106 0.988064 0.998104 0.993059
SNP 通过 3213043 38814 6106 0.988064 0.998104 0.993059
表 6. 来自 HaplotypeCaller 的 T7 样本的一致性结果。

DeepVariant 一致性

类型 过滤器 TRUTH.TP TRUTH.FN QUERY.FP METRIC.召回率 METRIC.精确率 METRIC_F1_Score
INDEL 全部 460832 6052 1389 0.987037 0.997107 0.992047
INDEL 通过 460832 6052 1389 0.987037 0.997107 0.992047
SNP 全部 3213043 38814 6106 0.988064 0.998104 0.993059
SNP 通过 3213043 38814 6106 0.988064 0.998104 0.993059
表 7. 来自 DeepVariant 的 G400 样本的一致性结果。

DeepVariant 一致性

类型 过滤器 TRUTH.TP TRUTH.FN QUERY.FP METRIC.召回率 METRIC.精确率 METRIC_F1_Score
INDEL 全部 459953 6931 2320 0.985155 0.995165 0.990135
INDEL 通过 459953 6931 2320 0.985155 0.995165 0.990135
SNP 全部 3208100 43757 7435 0.986544 0.997689 0.992085
SNP 通过 3208100 43757 7435 0.986544 0.997689 0.992085
表 8. 来自 HaplotypeCaller 的 G400 样本的一致性结果。

DeepVariant 一致性

类型 过滤器 TRUTH.TP TRUTH.FN QUERY.FP METRIC.召回率 METRIC.精确率 METRIC_F1_Score
INDEL 全部 459224 7660 5812 0.983593 0.987961 0.985772
INDEL 通过 459224 7660 5812 0.983593 0.987961 0.985772
SNP 全部 3199856 52001 47560 0.984009 0.985358 0.984683
SNP 通过 3199856 52001 47560 0.984009 0.985358 0.984683

正如我们对 Parabricks 的期望一样,我们看到精确率和 F1 分数都超过 99%,这证实了变异调用器相对于基本事实是准确的。

在本指南中,我们展示了如何从 Complete Genomics 下载 WGS 数据,在 AWS 上运行比对 (fq2bam) 和变异调用 (haplotypecallerdeepvariant),显示每个样本的运行时间和总成本,最后演示了针对真值集的一致性结果。总而言之,这表明 Parabricks 支持来自 Complete Genomics 测序仪的数据,因为它在这些工具上运行快速且准确。

上一篇 云使用指南
下一篇 在 AWS 上运行 NVIDIA Parabricks
© 版权所有 2025, Nvidia。 上次更新于 2025 年 1 月 13 日。