Clara Parabricks v4.4.0

NVIDIA Parabricks 入门

硬件要求

  • 任何支持 CUDA 架构 70、75、80、86、89 或 90 且至少具有 16GB GPU RAM 的 NVIDIA GPU。NVIDIA Parabricks 已在以下 NVIDIA GPU 上进行过测试

    • V100

    • T4

    • A10、A30、A40、A100、A6000

    • L4、L40

    • H100、H200

    • Grace Hopper 超级芯片

  • fq2bam 工具默认需要至少 38 GB 的 GPU 内存;--low-memory 选项会将此要求降低到 16 GB 的 GPU 内存,但会降低处理速度。所有其他工具每个 GPU 至少需要 16 GB 的 GPU 内存。

  • 系统要求

    • 一个 2 GPU 系统应至少具有 100GB CPU RAM 和至少 24 个 CPU 线程。

    • 一个 4 GPU 系统应至少具有 196GB CPU RAM 和至少 32 个 CPU 线程。

    • 一个 8 GPU 系统应至少具有 392GB CPU RAM 和至少 48 个 CPU 线程。

注意

Parabricks 在分时虚拟 GPU (vGPU) 上受支持,但在多实例 (MIG) GPU 上不受支持。

软件要求

以下是运行 Parabricks 的软件要求。

  • 版本为 525.60.13 或更高的 NVIDIA 驱动程序。有关向前兼容性的更多详细信息,请查看此处

  • 任何支持 nvidia-docker2 Docker 版本 20.10(或更高版本)的 Linux 操作系统

有关支持的驱动程序配置的更多信息,请参阅此页面

注意

Parabricks 以 Docker 镜像的形式提供。对于 Singularity 用户,请查看此处,了解有关将 Docker 镜像导入到 Singularity 镜像的信息。

验证硬件和软件要求

检查可用的 NVIDIA 硬件和驱动程序

要检查您的 NVIDIA 硬件和驱动程序版本,请使用 nvidia-smi 命令

复制
已复制!
            

$ nvidia-smi +-----------------------------------------------------------------------------+ | NVIDIA-SMI 525.60.13 Driver Version: 525.60.13 CUDA Version: 12.0 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |===============================+======================+======================| | 0 Tesla V100-DGXS... On | 00000000:07:00.0 Off | 0 | | N/A 44C P0 38W / 300W | 74MiB / 16155MiB | 0% Default | | | | N/A | +-----------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=============================================================================| | 0 N/A N/A 3019 G /usr/lib/xorg/Xorg 56MiB | +-----------------------------------------------------------------------------+

这显示了以下重要信息

  • NVIDIA 驱动程序版本为 525.60.13。

  • 支持的 CUDA 驱动程序 API 为 12.0。

  • GPU 具有 16 GB 内存。

检查可用的 CPU RAM 和线程

要查看您的机器中有多少 RAM 和 CPU 线程,您可以运行以下命令

复制
已复制!
            

# To check available memory $ cat /proc/meminfo | grep MemTotal # To check available number of threads $ cat /proc/cpuinfo | grep processor | wc -l

检查 nvidia-docker2 安装

要确保您已安装 nvidia-docker2,请运行此命令

复制
已复制!
            

$ docker run --rm --gpus all nvidia/cuda:12.0.0-base-ubuntu20.04 nvidia-smi

当容器下载完成后,它将运行 nvidia-smi 命令,并显示与上面相同的输出。

检查 Python 版本

要查看您拥有的 Python 版本,请输入以下命令

复制
已复制!
            

$ python3 --version

确保版本至少为 3(3.6.9、3.7 等)。

可以通过运行以下命令获取 NVIDIA Parabricks Docker 镜像

复制
已复制!
            

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

此时,软件已准备好使用。

从命令行

Parabricks 使用 Docker 镜像部署。自定义 Parabricks 运行分为两个部分

  • 自定义 Docker 容器特定选项:这些是在容器名称之前传递给 docker 命令的选项。例如,用户应通过将 -v 选项传递给 Docker,在 Docker 容器中挂载其数据目录。有关更详细的示例,请参阅教程

  • Parabricks 特定选项:这些选项传递给 Parabricks 命令行,以自定义 Parabricks 运行。例如,您可以选择要运行的工具并传递特定于工具的选项。

例如,使用以下命令使用 Docker 容器运行 Parabricks fq2bam (BWA-MEM + GATK) 工具。有关此命令如何工作的更多详细信息,请参阅教程

复制
已复制!
            

$ docker run \ --gpus all \ --rm \ --volume $(pwd):/workdir \ --volume $(pwd):/outputdir \ nvcr.io/nvidia/clara/clara-parabricks:4.4.0-1 \ pbrun fq2bam \ --ref /workdir/parabricks_sample/Ref/Homo_sapiens_assembly38.fasta \ --in-fq /workdir/parabricks_sample/Data/sample_1.fq.gz /workdir/parabricks_sample/Data/sample_2.fq.gz \ --out-bam /outputdir/fq2bam_output.bam

示例数据是免费提供的。有关获取示例数据的说明,以及使用 fq2bamHaplotype Caller 的分步指南,请参阅教程中的获取示例数据部分。

一些有用的 Docker 选项需要考虑

  • --gpus all 让 Docker 容器使用系统上的所有 GPU。可以使用 --gpus "device=<GPU 列表>" 选项限制 Parabricks 容器可用的 GPU。使用 nvidia-smi 查看您有多少个 GPU,以及哪个是哪个。

  • --rm 告诉 Docker 在命令完成后终止镜像。

  • --volume $(pwd):/image/data 将您的当前目录(服务器上的路径)挂载到 Docker 容器中的 /image/data 目录(Docker 容器内的路径)。如果您的数据不在当前目录中,请使用类似于 --volume /path/to/your/data:/image/data 的选项。

  • --workdir 告诉 Docker 从哪个工作目录执行命令(在容器内)。

  • 命令的其余部分是您要运行的 Parabricks 工具,后跟其参数。对于熟悉 v4.0 之前版本的 Parabricks 及其 pbrun 命令的用户,此 Docker 调用取代了 pbrun

使用 Base Command Platform 运行 Parabricks

在单 GPU 实例上启动 BaseCommand 容器的示例命令是

复制
已复制!
            

ngc batch run --name "parabricks-germline" \ --instance dgxa100.80g.1.norm \ --commandline "pbrun germline \ --ref /workspace/parabricks_sample/Ref/Homo_sapiens_assembly38.fasta \ --in-fq /Data/HG002-NA24385-pFDA_S2_L002_R1_001-30x.fastq.gz /Data/HG002-NA24385-pFDA_S2_L002_R2_001-30x.fastq.gz \ --knownSites /workspace/parabricks_sample/Ref/Homo_sapiens_assembly38.known_indels.vcf.gz \ --out-bam output.bam \ --out-variants output.vcf \ --out-recal-file report.txt \ --run-partition \ --no-alt-contigs" \ --result /results \ --image "nvcr.io/nvidia/clara/clara-parabricks:4.4.0-1"

请注意,对于其他 Parabricks 命令(即 fq2bam、HaplotypeCaller、DeepVariant),ngc batch run 命令是相似的。确保为您的工作区或数据集使用正确的路径,其中包含您打算使用的数据。

卸载 NVIDIA Parabricks 与删除 Docker 镜像一样简单。

复制
已复制!
            

$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE ... nvcr.io/nvidia/clara/clara-parabricks 4.4.0-1 516740210042 2 months ago 3.23GB ... $ docker rmi 516740210042

"IMAGE ID" 的确切值将因您的安装而异。

注意

上一步 4.0.0-1 发行说明
下一步 软件概述
© 版权所有 2025,Nvidia。 最后更新于 2025 年 1 月 13 日。