-
Notifications
You must be signed in to change notification settings - Fork 19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Updates to Isambard-3 spack env and purify benchmark #356
Conversation
py-numpy: | ||
externals: | ||
- spec: [email protected] | ||
modules: | ||
- cray-python | ||
prefix: /opt/cray/pe/python/3.11.7 | ||
buildable: false | ||
py-scipy: | ||
externals: | ||
- spec: [email protected] | ||
modules: | ||
- cray-python | ||
prefix: /opt/cray/pe/python/3.11.7 | ||
buildable: false | ||
py-mpi4py: | ||
externals: | ||
- spec: [email protected] | ||
modules: | ||
- cray-python | ||
prefix: /opt/cray/pe/python/3.11.7 | ||
buildable: false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any reason for using buildable: false
for this packages? Also, I believe you want also to append ^ [email protected]
to all these specs, to avoid making it match with other versions of python.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thought buildable: false
guarantees that the external will always get used. Is it too strong requirement? Happy to remove it if you think that's better. Adding the python version to the spec
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
buildable: false
complicates environment resolution quite a bit whenever a package appears in the environment. I'd expect troubles for py-numpy
and py-scipy
because they're somewhat common, py-mpi4py
less so and I'd hope spack links it to the right MPI library anyway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 thanks for explaining. My builds seem fine after removing it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For example, one problem could be the following: for some reason a package in the environment requires a specific version of python and that's not compatible with 3.11.7 (say 3.10 or 3.12), another package needs py-numpy, then you end up in the situation where you can't concretize the environment at all. We do use buildable: false
for MPI, but we do really want to enforce using system MPI libraries only, I don't see that requirement being useful for python and python packages.
Updates purify benchmark to use the latest 5.0 version, adds new benchmarks for the ForwardBackward algorithm and add some sanity checks to parameters.
Adds python packages to isambard-3 spack env
I've commented out external cray-fftw because of the fftw bug that breaks cmake builds. The bug is patched in the spack package so building your own fftw works just fine.