From 55d1074f50479cb7231a888fe0b4e5624b598bbd Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Thu, 15 Jan 2026 13:20:55 +0100 Subject: [PATCH 1/8] Update GPU instructions --- README.md | 18 +++++++++++-- ...onment-gpu.yml => environment-gpu_cu12.yml | 0 environment-gpu_cu13.yml | 25 +++++++++++++++++++ 3 files changed, 41 insertions(+), 2 deletions(-) rename environment-gpu.yml => environment-gpu_cu12.yml (100%) create mode 100644 environment-gpu_cu13.yml diff --git a/README.md b/README.md index 24c4c2c..c8e5040 100644 --- a/README.md +++ b/README.md @@ -47,10 +47,24 @@ Go to [microsoft.github.io/skala](https://microsoft.github.io/skala) for a more ## Getting started (GPU support) -Install using Pip: + + +### Conda(includes CUDA toolkit, Torch, CuPy) + +CUDA 12 vs 13: pick the one your driver supports (check `nvidia-smi`). + +```bash +cu_version=12 #or 13 depending on your CUDA version +conda create -n skala -f environment-gpu_cu${cu_version}.yml +conda activate skala +pip install --nodeps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version}x>=0.4,<1" microsoft-skala +``` + +### pip (bring your own CUDA runtime): +CUDA 12.6, 12.8, or 13.0: pick the one your driver supports (check `nvidia-smi`). ```bash cu_version=128 #or 126 or 130 depending on your CUDA version -pip install torch cupy --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" +pip install torch cu${cu_version:0:2}x>=1.0,<2" --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" pip install --no-deps "gpu4pyscf-cuda${cu_version:0:2}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version:0:2}x>=0.4,<1" pip install microsoft-skala ``` diff --git a/environment-gpu.yml b/environment-gpu_cu12.yml similarity index 100% rename from environment-gpu.yml rename to environment-gpu_cu12.yml diff --git a/environment-gpu_cu13.yml b/environment-gpu_cu13.yml new file mode 100644 index 0000000..4e5c93f --- /dev/null +++ b/environment-gpu_cu13.yml @@ -0,0 +1,25 @@ +name: skala-gpu +channels: + - conda-forge +dependencies: + - ase + - azure-core + - azure-identity + - dftd3-python + - e3nn + - numpy + - opt_einsum_fx + - pyscf + - python + - pytorch-gpu + - qcelemental + - cuda-toolkit + - cupy + - cutensor + - cuda-version ==13.* + # Testing and development + - pre-commit + - pytest + - pytest-cov + - pip: + - huggingface_hub From 3d4a904464d9861bb73c5f37e99f499a0caa19cd Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Thu, 15 Jan 2026 13:24:39 +0100 Subject: [PATCH 2/8] modify installation instructions --- docs/installation.rst | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/docs/installation.rst b/docs/installation.rst index 7c1e6bf..5418e8c 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -37,12 +37,19 @@ If you prefer to install Skala from the source code, you can clone the repositor mamba activate skala pip install -e . -where `environment-cpu.yml` can be replaced for `environment-gpu.yml` for gpu support (CUDA 12) with gpu4pyscf, in which case gpu4pyscf needs to be separately installed *after creating the environment* via +where `environment-cpu.yml` can be replaced for `environment-gpu_cu12.yml` (CUDA 12) or `environment-gpu_cu13.yml` (CUDA 13) for gpu support with gpu4pyscf, in which case gpu4pyscf needs to be separately installed *after creating the environment* via .. code-block:: bash pip install --no-deps 'gpu4pyscf-cuda12x>=1.0,<2' 'gpu4pyscf-libxc-cuda12x>=0.4,<1' + +or (for CUDA 13) + +.. code-block:: bash + + pip install --no-deps 'gpu4pyscf-cuda13x>=1.0,<2' 'gpu4pyscf-libxc-cuda13x>=0.4,<1' + To install the development dependencies, you can run: .. code-block:: bash From 0ad6f21e2facd16a32d75c54cd44c073ea4ae4d4 Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Mon, 26 Jan 2026 08:40:46 +0000 Subject: [PATCH 3/8] Typo's --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index c8e5040..9be0640 100644 --- a/README.md +++ b/README.md @@ -49,22 +49,22 @@ Go to [microsoft.github.io/skala](https://microsoft.github.io/skala) for a more -### Conda(includes CUDA toolkit, Torch, CuPy) +### Conda (includes CUDA toolkit, Torch, CuPy) CUDA 12 vs 13: pick the one your driver supports (check `nvidia-smi`). ```bash cu_version=12 #or 13 depending on your CUDA version -conda create -n skala -f environment-gpu_cu${cu_version}.yml +conda env create -n skala -f environment-gpu_cu${cu_version}.yml conda activate skala -pip install --nodeps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version}x>=0.4,<1" microsoft-skala +pip install --no-deps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version}x>=0.4,<1" microsoft-skala ``` ### pip (bring your own CUDA runtime): CUDA 12.6, 12.8, or 13.0: pick the one your driver supports (check `nvidia-smi`). ```bash cu_version=128 #or 126 or 130 depending on your CUDA version -pip install torch cu${cu_version:0:2}x>=1.0,<2" --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" +pip install torch "cu${cu_version:0:2}x>=1.0,<2" --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" pip install --no-deps "gpu4pyscf-cuda${cu_version:0:2}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version:0:2}x>=0.4,<1" pip install microsoft-skala ``` From 2103a5f7faab8f8c22b3e29892b8696680f0532f Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Mon, 26 Jan 2026 08:53:55 +0000 Subject: [PATCH 4/8] Go back to a single GPU yml file. --- README.md | 21 ++++++++++------ docs/installation.rst | 2 +- ...onment-gpu_cu12.yml => environment-gpu.yml | 2 +- environment-gpu_cu13.yml | 25 ------------------- 4 files changed, 15 insertions(+), 35 deletions(-) rename environment-gpu_cu12.yml => environment-gpu.yml (93%) delete mode 100644 environment-gpu_cu13.yml diff --git a/README.md b/README.md index 081a100..9dadfe8 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,12 @@ pip install torch --index-url https://download.pytorch.org/whl/cpu # unless you pip install skala ``` +Or using Conda (Mamba): + +```bash +mamba install -c conda-forge skala +``` + Run an SCF calculation with Skala for a hydrogen molecule: ```python @@ -51,22 +57,21 @@ Go to [microsoft.github.io/skala](https://microsoft.github.io/skala) for a more ### Conda (includes CUDA toolkit, Torch, CuPy) -CUDA 12 vs 13: pick the one your driver supports (check `nvidia-smi`). +Supports CUDA version 11, 12 or 13. You can find the most recent CUDA version that is supported on your system using `nvidia-smi`. ```bash -cu_version=12 #or 13 depending on your CUDA version -conda env create -n skala -f environment-gpu_cu${cu_version}.yml -conda activate skala -pip install --no-deps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version}x>=0.4,<1" microsoft-skala +cu_version=13 #or 11 or 12 depending on your CUDA version +mamba env create -n skala -f environment-gpu.yml "cuda_version==${cu_version}.*" skala +mamba activate skala +pip install --no-deps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version}x>=0.4,<1" ``` ### pip (bring your own CUDA runtime): -CUDA 12.6, 12.8, or 13.0: pick the one your driver supports (check `nvidia-smi`). +The most recent pytorch version supports CUDA version 12.6, 12.8 or 13.0. You can find the most recent CUDA version that is supported on your system using `nvidia-smi`. ```bash cu_version=128 #or 126 or 130 depending on your CUDA version -pip install torch "cu${cu_version:0:2}x>=1.0,<2" --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" +pip install torch "cu${cu_version:0:2}x>=1.0,<2" skala --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" pip install --no-deps "gpu4pyscf-cuda${cu_version:0:2}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version:0:2}x>=0.4,<1" -pip install skala ``` Run an SCF calculation with Skala for a hydrogen molecule on GPU: diff --git a/docs/installation.rst b/docs/installation.rst index 5418e8c..a09c7dd 100644 --- a/docs/installation.rst +++ b/docs/installation.rst @@ -37,7 +37,7 @@ If you prefer to install Skala from the source code, you can clone the repositor mamba activate skala pip install -e . -where `environment-cpu.yml` can be replaced for `environment-gpu_cu12.yml` (CUDA 12) or `environment-gpu_cu13.yml` (CUDA 13) for gpu support with gpu4pyscf, in which case gpu4pyscf needs to be separately installed *after creating the environment* via +where `environment-cpu.yml` can be replaced with `environment-gpu.yml` for gpu support (specify CUDA version with `cuda_version=`) with gpu4pyscf, in which case gpu4pyscf needs to be separately installed *after creating the environment* via (for CUDA 12) .. code-block:: bash diff --git a/environment-gpu_cu12.yml b/environment-gpu.yml similarity index 93% rename from environment-gpu_cu12.yml rename to environment-gpu.yml index 02b3d52..3d7e43a 100644 --- a/environment-gpu_cu12.yml +++ b/environment-gpu.yml @@ -17,7 +17,7 @@ dependencies: - cuda-toolkit - cupy - cutensor - - cuda-version ==12.* + - cuda-version # Testing and development - pre-commit - pytest diff --git a/environment-gpu_cu13.yml b/environment-gpu_cu13.yml deleted file mode 100644 index 4e5c93f..0000000 --- a/environment-gpu_cu13.yml +++ /dev/null @@ -1,25 +0,0 @@ -name: skala-gpu -channels: - - conda-forge -dependencies: - - ase - - azure-core - - azure-identity - - dftd3-python - - e3nn - - numpy - - opt_einsum_fx - - pyscf - - python - - pytorch-gpu - - qcelemental - - cuda-toolkit - - cupy - - cutensor - - cuda-version ==13.* - # Testing and development - - pre-commit - - pytest - - pytest-cov - - pip: - - huggingface_hub From af8142e2bf70f04ec97385d34e28d52ecd562d4f Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Mon, 26 Jan 2026 09:06:16 +0000 Subject: [PATCH 5/8] Update README --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9dadfe8..0ded38e 100644 --- a/README.md +++ b/README.md @@ -33,7 +33,7 @@ pip install skala Or using Conda (Mamba): ```bash -mamba install -c conda-forge skala +mamba install -c conda-forge skala "pytorch=*=cpu*" ``` Run an SCF calculation with Skala for a hydrogen molecule: @@ -55,7 +55,7 @@ Go to [microsoft.github.io/skala](https://microsoft.github.io/skala) for a more -### Conda (includes CUDA toolkit, Torch, CuPy) +### Conda (via Mamba,includes CUDA toolkit, Torch, CuPy) Supports CUDA version 11, 12 or 13. You can find the most recent CUDA version that is supported on your system using `nvidia-smi`. From 512bb3cb740519b15bde1da6f0e05ab2a874037e Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Mon, 26 Jan 2026 09:20:41 +0000 Subject: [PATCH 6/8] Fix typo in cuda-version, by default do CUDA 12 --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0ded38e..6d0e640 100644 --- a/README.md +++ b/README.md @@ -60,8 +60,8 @@ Go to [microsoft.github.io/skala](https://microsoft.github.io/skala) for a more Supports CUDA version 11, 12 or 13. You can find the most recent CUDA version that is supported on your system using `nvidia-smi`. ```bash -cu_version=13 #or 11 or 12 depending on your CUDA version -mamba env create -n skala -f environment-gpu.yml "cuda_version==${cu_version}.*" skala +cu_version=12 #or 11 or 13 depending on your CUDA version +mamba env create -n skala -f environment-gpu.yml "cuda-version==${cu_version}.*" skala mamba activate skala pip install --no-deps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version}x>=0.4,<1" ``` From 3dd415dc7edf4a8a8edd04c852f818571153e1c6 Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Mon, 26 Jan 2026 09:40:41 +0000 Subject: [PATCH 7/8] Fix typo in cupy wheel --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6d0e640..6e23224 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,7 @@ pip install --no-deps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cu The most recent pytorch version supports CUDA version 12.6, 12.8 or 13.0. You can find the most recent CUDA version that is supported on your system using `nvidia-smi`. ```bash cu_version=128 #or 126 or 130 depending on your CUDA version -pip install torch "cu${cu_version:0:2}x>=1.0,<2" skala --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" +pip install torch "cupy-cuda${cu_version:0:2}x" skala --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" pip install --no-deps "gpu4pyscf-cuda${cu_version:0:2}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version:0:2}x>=0.4,<1" ``` Run an SCF calculation with Skala for a hydrogen molecule on GPU: From 39f4ce48d41b00995d2187161397632f94f03917 Mon Sep 17 00:00:00 2001 From: Derk Kooi Date: Mon, 26 Jan 2026 17:15:12 +0000 Subject: [PATCH 8/8] Get rid of pip installation instructions for GPU, since they are difficult to make robust. --- README.md | 13 +------------ 1 file changed, 1 insertion(+), 12 deletions(-) diff --git a/README.md b/README.md index 6e23224..190b2b0 100644 --- a/README.md +++ b/README.md @@ -51,11 +51,7 @@ ks.kernel() ``` Go to [microsoft.github.io/skala](https://microsoft.github.io/skala) for a more detailed installation guide and further examples of how to use Skala functional with PySCF and ASE and in [Azure Foundry](https://ai.azure.com/catalog/models/Skala). -## Getting started (GPU support) - - - -### Conda (via Mamba,includes CUDA toolkit, Torch, CuPy) +## Getting started (GPU support via Mamba, includes CUDA toolkit, Torch, CuPy) Supports CUDA version 11, 12 or 13. You can find the most recent CUDA version that is supported on your system using `nvidia-smi`. @@ -66,13 +62,6 @@ mamba activate skala pip install --no-deps "gpu4pyscf-cuda${cu_version}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version}x>=0.4,<1" ``` -### pip (bring your own CUDA runtime): -The most recent pytorch version supports CUDA version 12.6, 12.8 or 13.0. You can find the most recent CUDA version that is supported on your system using `nvidia-smi`. -```bash -cu_version=128 #or 126 or 130 depending on your CUDA version -pip install torch "cupy-cuda${cu_version:0:2}x" skala --extra-index-url "https://download.pytorch.org/whl/cu${cu_version}" -pip install --no-deps "gpu4pyscf-cuda${cu_version:0:2}x>=1.0,<2" "gpu4pyscf-libxc-cuda${cu_version:0:2}x>=0.4,<1" -``` Run an SCF calculation with Skala for a hydrogen molecule on GPU: ```python