Skip to content

Rootstock

Rootstock makes it easy to use machine-learned interatomic potentials (MLIPs) on HPC clusters. Researchers can use multiple MLIPs (MACE, CHGNet, UMA, TensorNet, and others) with ASE or LAMMPS without managing conflicting Python environments.

Rootstock provides an ASE-compatible calculator that runs each MLIP in an isolated, pre-built Python environment. Swapping models is a one-line change, even when MLIPs require different Python or library versions. Rootstock also integrates with LAMMPS through a fix command for any supported MLIP.

Status

Rootstock is early-stage software under active development. It is currently deployed on two HPC clusters:

  • Della — Princeton Research Computing
  • Sophia — Argonne Leadership Computing Facility (ALCF)

We are seeking additional clusters and early users to help shape the tool. If you are interested in deploying Rootstock on your cluster or using it for a specific project, contact Will Engler at willengler@uchicago.edu.

Quick Start

Rootstock is designed for HPC clusters where it has been set up by a system maintainer. The code below runs in your normal Python environment — inside a SLURM job script, an interactive session, or a Jupyter notebook. Rootstock handles MLIP environment isolation automatically.

from ase.build import bulk
from rootstock import RootstockCalculator

atoms = bulk("Cu", "fcc", a=3.6) * (5, 5, 5)

with RootstockCalculator(
    cluster="della",
    model="mace",
    checkpoint="medium",
    device="cuda",
) as calc:
    atoms.calc = calc
    print(atoms.get_potential_energy())
    print(atoms.get_forces())

Changing model="mace" to model="uma" or model="tensornet" swaps the underlying potential.

Next Steps

  • Installation


    Install the lightweight rootstock package in your environment.

    Installation

  • API Reference


    Learn about the RootstockCalculator API and available models.

    API

  • Example Configs


    See example environment configurations from deployed clusters.

    Example Configs

  • Cluster Setup


    Set up Rootstock on a new HPC cluster.

    Cluster Setup