> This page is for version v4.8.0 (default).
> For other versions, use one of these documentation indexes:
> - v4.8.0 (default): https://docs.nvidia.com/clara/parabricks/v4.8.0/llms.txt
> - v4.7.1: https://docs.nvidia.com/clara/parabricks/v4.7.1/llms.txt

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.nvidia.com/clara/parabricks/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.nvidia.com/clara/parabricks/_mcp/server.

# applybqsr

Updates the Base Quality Scores using the BQSR report.

This tool recalibrates quality scores in a BAM file using the report generated
by the [bqsr](/clara/parabricks/v4.8.0/tool-reference/tools/bqsr) tool. This should be applied after alignment but before
variant calling to maximize final accuracy in variant calling, as recommended
by GATK best practices.

Note that the **applybqsr** tool will use at most two GPUs.

Refer to the [applybqsr Reference](#options) section for a detailed listing of all available options.

## Quick Start

```sh
# This command assumes all the inputs are in the current working directory and all the outputs go to the same place.
docker run --rm --gpus all --volume $(pwd):/workdir --volume $(pwd):/outputdir \
    --workdir /workdir \
    nvcr.io/nvidia/clara/clara-parabricks:4.8.0-1 \
    pbrun applybqsr \
    --ref /workdir/${REFERENCE_FILE} \
    --in-bam /workdir/${INPUT_BAM} \
    --in-recal-file /workdir/${INPUT_RECAL_FILE}  \
    --out-bam /outputdir/${OUTPUT_BAM}
```

## Compatible GATK4 Command

The command below is the GATK4 counterpart of the Parabricks command above. The output
from these commands will be equivalent to the output from the above command.

```sh
$ gatk ApplyBQSR \
    --java-options -Xmx30g \
    -R <INPUT_DIR>/${REFERENCE_FILE} \
    -I <INPUT_DIR>/${INPUT_BAM} \
    --bqsr-recal-file <INPUT_DIR>/${INPUT_RECAL_FILE} \
    -O <OUTPUT_DIR>/${OUTPUT_BAM}
```

## Options

| Type        | Name                                                        | Required? | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| ----------- | ----------------------------------------------------------- | --------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| I/O         | `--ref REF`                                                 | Yes       | Path to the reference file.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| I/O         | `--in-bam IN_BAM`                                           | Yes       | Path to the input BAM/CRAM file.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| I/O         | `--in-recal-file IN_RECAL_FILE`                             | Yes       | Path to the BQSR report file.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| I/O         | `--interval-file INTERVAL_FILE`                             | No        | Path to an interval file in one of these formats: Picard-style (.interval_list or .picard), GATK-style (.list or .intervals), or BED file (.bed). This option can be used multiple times.                                                                                                                                                                                                                                                                                                                                                                   |
| I/O         | `--out-bam OUT_BAM`                                         | Yes       | Path to the output BAM/CRAM file.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Tool        | `-L INTERVAL, --interval INTERVAL`                          | No        | Interval within which to call applyBQSR from the input reads. All intervals will have a padding of 100 to get read records, and overlapping intervals will be combined. Interval files should be passed using the --interval-file option. This option can be used multiple times (e.g. "-L chr1 -L chr2:10000 -L chr3:20000+ -L chr4:10000-20000").                                                                                                                                                                                                         |
| Tool        | `-ip INTERVAL_PADDING, --interval-padding INTERVAL_PADDING` | No        | Amount of padding (in base pairs) to add to each interval you are including.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Performance | `--num-threads NUM_THREADS`                                 | No        | Number of threads for worker. (default: 8)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| Runtime     | `--verbose`                                                 | No        | Enable verbose output.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Runtime     | `--x3`                                                      | No        | Show full command line arguments.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| Runtime     | `--dry-run`                                                 | No        | Check if the current command is valid.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Runtime     | `--logfile LOGFILE`                                         | No        | Path to the log file. If not specified, messages will only be written to the standard error output.                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| Runtime     | `--tmp-dir TMP_DIR`                                         | No        | Full path to the directory where temporary files will be stored. (default: .)                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| Runtime     | `--with-petagene-dir WITH_PETAGENE_DIR`                     | No        | Full path to the PetaGene installation directory. By default, this should have been installed at /opt/petagene. Use of this option also requires that the PetaLink library has been preloaded by setting the LD_PRELOAD environment variable. Optionally set the PETASUITE_REFPATH and PGCLOUD_CREDPATH environment variables that are used for data and credentials. Optionally set the PetaLinkMode environment variable that is used to further configure PetaLink, notably setting it to "+write" to enable outputting compressed BAM and .fastq files. |
| Runtime     | `--keep-tmp`                                                | No        | Do not delete the directory storing temporary files after completion.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Runtime     | `--no-seccomp-override`                                     | No        | Do not override seccomp options for docker.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| Runtime     | `--version`                                                 | No        | View compatible software versions.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| Runtime     | `--preserve-file-symlinks`                                  | No        | Override default behavior to keep file symlinks intact and *not* resolve the symlink.                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| Runtime     | `--help-json`                                               | No        | Print out help message in JSON format.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Runtime     | `--num-gpus NUM_GPUS`                                       | No        | Number of GPUs to use for a run. (default: 1)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |