Skip to content

DESC installation on Perlmutter doesn't work #1923

@rahulgaur104

Description

@rahulgaur104

I followed the installation instruction verbatim and I get this on Perlmutter.

module load cudatoolkit/12.4
module load cudnn/9.5.0
module load conda

conda create -n desc-env python=3.12
conda activate desc-env
pip install --upgrade "jax[cuda12]"

git clone https://github.com/PlasmaControl/DESC.git
cd DESC
pip install --editable .

To test my installation, I import Equilibrium from my login node

(desc-env) rgaur@login09:/pscratch/sd/r/rgaur/DESC> python3
Python 3.12.11 | packaged by Anaconda, Inc. | (main, Jun  5 2025, 13:09:17) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
Ctrl click to launch VS Code Native REPL
>>> import desc
>>> from desc.equilibrium import Equilibrium
ERROR:2025-09-19 06:12:41,224:jax._src.xla_bridge:444: Jax plugin configuration error: Exception when calling jax_plugins.xla_cuda12.initialize()
Traceback (most recent call last):
  File "/global/homes/r/rgaur/.conda/envs/desc-env/lib/python3.12/site-packages/jax_plugins/xla_cuda12/__init__.py", line 201, in _version_check
    version = get_version()
              ^^^^^^^^^^^^^
RuntimeError: jaxlib/cuda/versions_helpers.cc:81: operation cusparseGetProperty(MAJOR_VERSION, &major) failed: The cuSPARSE library was not found.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/global/homes/r/rgaur/.conda/envs/desc-env/lib/python3.12/site-packages/jax/_src/xla_bridge.py", line 442, in discover_pjrt_plugins
    plugin_module.initialize()
  File "/global/homes/r/rgaur/.conda/envs/desc-env/lib/python3.12/site-packages/jax_plugins/xla_cuda12/__init__.py", line 328, in initialize
    _check_cuda_versions(raise_on_first_error=True)
  File "/global/homes/r/rgaur/.conda/envs/desc-env/lib/python3.12/site-packages/jax_plugins/xla_cuda12/__init__.py", line 266, in _check_cuda_versions
    _version_check("cuSPARSE", cuda_versions.cusparse_get_version,
  File "/global/homes/r/rgaur/.conda/envs/desc-env/lib/python3.12/site-packages/jax_plugins/xla_cuda12/__init__.py", line 205, in _version_check
    raise RuntimeError(err_msg) from e
RuntimeError: Unable to load cuSPARSE. Is it installed?

Adding set_device("gpu") before importing Equilibrium doesn't help either.

Also, by default, this process installated jax = jaxlib = 0.6.2 while jax-cuda12-pjrt = jax-cuda12-plugin = 0.7.2.
Regardless of the version, DESC installation doesn't work on Perlmutter.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions