---
title: "Scaling Decision Optimization to 100 Million Variables and Beyond with mPDLP in NVIDIA cuOpt"
description: "Supply chain and energy grid planning problems now exceed the memory and time limits of single-GPU solvers. NVIDIA cuOpt introduces mPDLP, a multi-GPU primal-dual hybrid gradient solver that distributes linear programming problems across NVLink-connected GPUs. The algorithm’s hot loop is a sparse matrix-vector multiplication, a memory-bound operation that benefits from the increased bandwidth of multiple GPUs. Min-cut partitioning reduces communication overhead by keeping tightly connected dependencies on the same GPU, enabling up to 6x lower peak memory per GPU. On the benchmark problem zib03 with over 104 million nonzeros, mPDLP achieved a solve rate nearly 10x faster than the previous year, and partners Kinaxis and PSR demonstrated 3.3x and 5x speedups on real-world models."
---

# Scaling Decision Optimization to 100 Million Variables and Beyond with mPDLP in NVIDIA cuOpt

[NVIDIA](https://yomu.fyi/company/nvidia-developer-blog) · Tanya Lenz · Oct 7, 2026

**Type:** Announcement

## Summary

Supply chain and energy grid planning problems now exceed the memory and time limits of single-GPU solvers. NVIDIA cuOpt introduces mPDLP, a multi-GPU primal-dual hybrid gradient solver that distributes linear programming problems across NVLink-connected GPUs. The algorithm’s hot loop is a sparse matrix-vector multiplication, a memory-bound operation that benefits from the increased bandwidth of multiple GPUs. Min-cut partitioning reduces communication overhead by keeping tightly connected dependencies on the same GPU, enabling up to 6x lower peak memory per GPU. On the benchmark problem zib03 with over 104 million nonzeros, mPDLP achieved a solve rate nearly 10x faster than the previous year, and partners Kinaxis and PSR demonstrated 3.3x and 5x speedups on real-world models.

## Context

Large-scale linear programming problems in supply chain and energy grid planning exceed the memory and time limits of single-GPU solvers, creating bottlenecks for business decisions.

## Approach / What changed

cuOpt mPDLP is a multi-GPU primal-dual hybrid gradient solver that distributes LP problems across NVLink-connected GPUs using min-cut partitioning to reduce communication overhead, achieving up to 6x lower peak memory per GPU and faster solve times.

## Takeaways

- mPDLP uses min-cut partitioning to jointly consider consecutive SpMVs, reducing cross-GPU communication compared to 2D partitioning.
- On large problems (nnz > 10^7), mPDLP achieves speedups of 1.2x to 2.5x over D-PDLP.
- Partners Kinaxis and PSR achieved 3.3x and 5x speedups on real-world models with over 135 million and 185 million variables respectively.

## FAQ

### How does mPDLP reduce communication overhead?

mPDLP uses min-cut partitioning to keep tightly connected dependencies on the same GPU, minimizing data exchange across consecutive sparse matrix-vector multiplications.

### What hardware is required for mPDLP?

mPDLP requires multiple NVLink-connected GPUs, such as NVIDIA H100 or B200, and uses NCCL for communication.

### When does mPDLP outperform single-GPU PDLP?

mPDLP delivers speedups only on large problems where communication overhead is negligible compared to compute time; on smaller problems, synchronization costs outweigh parallelism benefits.

**Tags:** [GPU](https://yomu.fyi/topic/gpu), [Linear Programming](https://yomu.fyi/topic/linear-programming), [Multi-GPU](https://yomu.fyi/topic/multi-gpu), [NVIDIA](https://yomu.fyi/topic/nvidia), [Optimization](https://yomu.fyi/topic/optimization)

- Source: [NVIDIA](https://developer.nvidia.com/blog/scaling-decision-optimization-to-100-million-variables-and-beyond-with-mpdlp-in-nvidia-cuopt)
- Source URL: https://developer.nvidia.com/blog/scaling-decision-optimization-to-100-million-variables-and-beyond-with-mpdlp-in-nvidia-cuopt
- Ingested by Yomu: 2026-10-07T18:00:13.972Z

[Read original post](https://developer.nvidia.com/blog/scaling-decision-optimization-to-100-million-variables-and-beyond-with-mpdlp-in-nvidia-cuopt)
