Week 9: Steady State Implementation and Benchmarking

GSoC 2026
Week 9
QuTiP
HEOM
PETSc
Benchmarking
Author

Chinmay Tangal

Published

July 27, 2026

This week, we focused on implementing the steady state functionality for the PETSc backend and added tests to ensure its correctness, alongside benchmarking its performance on a cluster.

Steady State Implementation and Testing

We integrated the steady-state solver capabilities and developed tests for it. The tests ensure that the PETSc steady-state solver converges correctly and gives results that match the traditional QuTiP solvers. We verify critical properties, such as ensuring that the trace of the steady state density matrix is 1. The test suite also covers deep hierarchies (e.g., Depth 22) to validate stability where traditional solvers typically run out of memory.

Cluster Benchmarking for Steady State

To test the performance of the steady-state solver on large-scale problems, we ran benchmarks on the cluster. We used a configuration that is challenging for traditional solvers: - Spins (N): 2 - Depth: 22 - ADOs: 80,730

The traditional csr solver runs out of memory (OOM) on local machines for this configuration. Below are the execution times for the PETSc solver scaling across multiple MPI ranks on the cluster.

MPI Ranks PETSc Time (s)
4 2112
8 1082
16 547
32 280
64 147

MPI Strong Scaling for Steady State

Analysis

The steady-state solver demonstrates excellent strong scaling on the cluster. Going from 4 ranks to 64 ranks reduces the computation time from over 35 minutes down to roughly 2.5 minutes, showing that PETSc is highly efficient at distributing the sparse matrix factorization and solving the linear system for massive HEOM problems.