portc

portc Documentation

Parallel Out-of-Core Randomized Tensor-Network Compression.

portc stands for Parallel Out-of-Core Randomized Tensor-Network Compression. It is a pure-Python implementation of Successive Randomized Compression (SRC) (Camaño et al., 2026), a randomized algorithm that contracts and compresses tensor trains in a single sweep. It extends the original MPO-MPS product to MPO-MPO products, plain compression of an MPS or MPO, and whole stacks of trains.

The package has no tensor-network framework dependency: it takes and returns plain lists of per-site NumPy arrays, in the quimb layout (Gray, 2018), and runs on GPUs through CuPy, including multiple GPUs and memory-budgeted out-of-core execution.

New here? Install the package and run the first example in Getting Started, then read Concepts for the algorithm and the array conventions.

How the documentation is organised

User guide — use the library.

  • Getting Started — installation and a first example.
  • Concepts — how SRC works, and the array layout and contraction order every function expects.
  • Features — one-sweep stacks, adaptive truncation, precision and reproducibility, GPU execution and logging.
  • Tutorials — runnable notebooks.

Reference — look up details.

Contributing — work on portc itself.

On this page