Installation update; expand torch and cuda versions#806
Merged
RasmusOrsoe merged 99 commits intographnet-team:mainfrom Jun 23, 2025
Merged
Installation update; expand torch and cuda versions#806RasmusOrsoe merged 99 commits intographnet-team:mainfrom
RasmusOrsoe merged 99 commits intographnet-team:mainfrom
Conversation
Aske-Rosted
approved these changes
Jun 13, 2025
.github/workflows/build.yml
Outdated
| name: Unit tests - macOS | ||
| runs-on: macos-13 | ||
| build-macos-examples: | ||
| # Every macOS test 'costs' 10 minutes of runner time. Minimize! |
Collaborator
There was a problem hiding this comment.
Is multiplied by a factor 10, this makes it sound like a flat cost.
| use_vm: | ||
| description: "Should the installation happen in a virtual environment named venv?" | ||
| required: true | ||
| default: false |
Collaborator
There was a problem hiding this comment.
What's the reason why the default is not true if this is the recommended action?
Collaborator
Author
There was a problem hiding this comment.
It costs upwards of 30 seconds of runner time, so limiting the usage is economical for us. Using it on the icetray runner makes the most sense as the pathing there is a little different.
| The new i3 files will appear as copies of the original i3 files but with | ||
| reconstructions added. Original i3 files are left untouched. | ||
| The new i3 files will appear as copies of the original i3 files but | ||
| with reconstructions added. Original i3 files are left untouched. |
Collaborator
There was a problem hiding this comment.
Maybe also remove the "but"
| import and download pre-converteddatasets for training of deep learning based | ||
| methods in GraphNeT. | ||
| Inheriting subclasses are data-specific implementations that allow the | ||
| user to import and download pre-converteddatasets for training of deep |
This was referenced Jun 23, 2025
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR updates GraphNeT to be compatible with latest PyTorch and CUDA versions.
Instead of a single pytorch version, we now offer three (2.7, 2.6, 2.5) and cuda versions 11.8 and 12.{1,4,6,8} (see installation matrix below). These versions are collectively offered in the python range of 3.9 to 3.11. Once #808 is merged, we can offer the latest python versions too. This PR closes #799 and closes #798.
The most relevant changes are highlighted below.
No requirement files!
Up until now, we've relied on requirement files in the installation procedure, e.g.
pip install -r requirements/torch_cu121.txt -e .[torch,develop]. The purpose of these files was primarily to point at the correct Python wheels. This scheme does not scale well to ranges of pytorch and cuda versions. Instead, the installation procedure has been altered to use the installation matrix to inject the correct wheel links in conjunction with specific entries in setup.py that each represent a particular choice in versions. The setup.py entries has the formtorch-26-cu124for pytorch 2.6.0 with cuda 12.4. (See installation matrix output above).Changes to GitHub Actions
icecubewithin the github action environment. The methodology of setting the environment variables is adjusted to be (hopefully) compatible with future icetray docker images.Changes to Testing
The testing suite on pull requests has been subject to change. Here, the aim has been to balance between testing a wider range of pytorch versions vs. our limited testing abilities on the free tier of github actions. The new testing scheme is shown below
Note that the macOS15 runner tests just a single PyTorch version; this is because macOS runners have a minute multiplier of 10 (!) see here.
Minor Changes
docformatterhas been updated from 1.7.5 to 1.7.7 forpre-commit>=4.0compatibility see here. The new version required updates of docstrings in several modules of the repository, which accounts for the majority of changes in this PR.verboseargument intorch.optim.lr_scheduler.LRSchedulerwas deprecated intorch==2.7.0and has been removed fromgraphnet.training.callbacks.PiecewiseLinearLRnum-workersin training examples has changed to2to improve unit tests, as GitHub runners are limited to 2 cores.