Skip to navigation

Release 1.9.0

Summary

This release migrates inference onto a unified optimized backend, removes the TensorRT engine build and runtime path in favor of checkpoint-only assets on a PyTorch 26.05 base, routes structure prediction through a serial optimized pipeline, improves how prediction artifacts and custom checkpoints are handled, and increases inference performance and supported sequence lengths across GPUs.

Key Features

  • Optimized backend: Structure and affinity inference now run on a single optimized backend (torch / CUDA-graph path) instead of a separate TensorRT-engine packaging path.

  • Checkpoint-only model assets: The model manifest is simplified to checkpoints and supporting assets (boltz2_conf.ckpt, boltz2_aff.ckpt, ccd.pkl, mols.tar). TensorRT engine build tooling is removed from the container workflow.

  • Single model profile: The 1.9.0 manifest ships one untagged profile (af1349b9f5f9a1a6a0404dea36dcc9499bcb25c9adc112b7cc9a93cae41f3262) used on all supported GPUs. Per-GPU TensorRT profile hashes from 1.8.0 are no longer valid. Leave NIM_MODEL_PROFILE unset, or pin that 1.9.0 profile ID. Refer to Support Matrix.

  • PyTorch 26.05 base: The NIM is rebuilt on the NVIDIA PyTorch 26.05 base image.

  • Serial optimized pipeline: Structure prediction uses a serial optimized pipeline path (no Ray dependency in the NIM container).

  • New optimized kernel backend includes:

    • cuEquivariance 0.11.1
    • NIMTools 1.12.0
    • CUDA Graph acceleration for short sequences (≤512 tokens)
  • Performance increased 3.9–6x on H200 and about 1.7–3.1x on B300, and sequence length limits increased across supported GPUs:

    GPU familyPrevious max sequence lengthNew max sequence lengthRelative to previous
    L40S / A6000 / RTX 6000 Ada16652048123.0%
    A100 / H10025604096160%
    H20025605120200%
    B20030726144200%
    B30030726144200%

    Actual maximum supported sequence length may exceed the values shown above, depending on available GPU VRAM.

    Benchmarks used the following predict configuration:

    {
    "recycling_steps": 10,
    "sampling_steps": 200,
    "diffusion_samples": 25,
    "max_parallel_samples": 25,
    "step_scale": 1.638,
    "output_format": "mmcif",
    "concatenate_msas": false,
    "write_full_pae": true,
    "write_full_pde": true
    }

    For large complexes (sequence length ≥5000), start with max_parallel_samples of 5. This field is the number of diffusion samples processed at the same time. Lower values reduce peak GPU memory; if an out-of-memory error occurs, reduce the value toward 1.

  • PAE/PDE artifact files: When write_full_pae or write_full_pde is enabled, full matrices are written as uncompressed .npz files under $NIM_OUTPUT_PATH/prediction_*/pae/ and $NIM_OUTPUT_PATH/prediction_*/pde/. The pae and pde fields in the JSON response are deprecated and remain null. Aggregate PDE scores (complex_pde_scores, complex_ipde_scores) continue to be returned in the JSON response.

  • Custom / fine-tuned checkpoints: Load same-architecture Boltz-2 weights from a mounted directory using MODEL_PATH, with optional filename overrides NIM_BOLTZ_CONF_CKPT_FILE and NIM_BOLTZ_AFFINITY_CKPT_FILE. Refer to Custom Checkpoints.

  • max_parallel_samples: New optional predict request field (range 1–25). Leave unset to use the optimized backend default. Lower values reduce GPU memory usage at the cost of longer runtime. For large cases (sequence length ≥5000), start with 5 and reduce toward 1 if an out-of-memory error occurs.

  • NIM_MAX_MSA_SEQS: New environment variable to cap MSA sequences retained when parsing request MSAs. Default is 4096; raise it (for example to 8192) to allow deeper MSAs.

  • CUDA memory headroom for confidence: The runtime frees CUDA cache before the confidence module to improve headroom on large complexes.

  • Security: Addressed CVE findings across container dependencies.

Removed Configuration

The following environment variables are no longer supported and have been removed:

  • NIM_REQUIRE_TRT / NIM_FAIL_ON_NO_TRT
  • NIM_BUILD_TRT_ENGINES
  • NIM_BOLTZ_USE_TRT_ENGINES

Notes

  • Mount a host directory at /opt/nim/output (or set NIM_OUTPUT_PATH) when enabling NIM_EXPOSE_CONFIDENCE_SCORES or write_full_pae / write_full_pde, so prediction artifacts land outside the model cache.
  • For best performance, run a warm-up pass with representative sequence lengths before measuring latency or throughput. The first request in a new length range can be slower because of runtime specialization (for example CUDA-graph capture on sequences ≤512 tokens).