-
Notifications
You must be signed in to change notification settings - Fork 3
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
Add coffea 2024 and coffea 0.7.x images #1
Conversation
f87d9c3
to
84e13f9
Compare
Can I suggest a slightly different directory structure?
so that we have a common |
@nsmith- sure! I will try tomorrow before you are awake. Any other suggestions? Maybe we need some other flavor? What should we do with ML libraries? Add additional |
Regarding image dependencies and naming, personally I'm in favor of something like
and potentially other AF variants. @btovar @mapsacosta @mcremone @rpsimeon34 may have opinions as well. |
This does leave up in the air where the ML packages go in the stack. Part of me thinks it should be AF-dependent, so that AFs that support GPUs can ensure they have the correct CUDA versions. |
This may also be of interest to @kondratyevd |
Thanks @nsmith- - at Purdue AF we provide only a single Docker image for users, and manage environments using conda, so probably at the moment this is not super relevant for us, unless I'm missing some important caveats |
can you describe/link that image? That implies users' full conda environments must be shipped to workers? |
The image is here: https://github.com/PurdueAF/purdue-af/blob/master/jupyterhub/docker/cmsaf-alma8/Dockerfile To use conda envs with Dask, users must place their environments into a shared storage volume (Purdue's "Depot" storage is standard work area for local Purdue users, it is mounted to all worker nodes; and we are working on a similar solution for external users). Then, the path to conda env must be specified in Dask Gateway setup. For local Python imports it's similar - user's files should be in shared storage and PYTHONPATH can be modified in Dask Gateway setup to point to the user's analysis framework. |
Thanks for the input @kondratyevd, it is also in line with some discussion I had with Burt about the fact that the user server (notebook/lab) image often needs extensive AF customization and essentially they are only interested in |
Doesn’t this (set of conda files) already mostly provided with just a few optional dependencies? I think our users didn’t have any issues with just |
…eleases: 2024.x.x
c742a37
to
8f46ade
Compare
and build relevant image instead
afee57c
to
57a8ee1
Compare
… 4.x can only be used with Awkward 1.x; you have Awkward 2.6.1
├─ pytorch [1.12.0|1.12.1] would require 40.92 │ └─ python >=3.10,<3.11.0a0 , which can be installed;
d4f8d4f
to
489c723
Compare
489c723
to
4e7609e
Compare
e139352
to
7fd5c48
Compare
@nsmith- @lgray Now only one combination is failing: python 3.11 + coffea 0.7.22 with:
https://github.com/CoffeaTeam/af-images/actions/runs/7918852148/job/21618260586 |
Otherwise, I can disable it for now, and then if everything else is ok, we can finally push these images. |
TypeError: __class__ assignment: 'NanoEventsArray' object layout differs from 'Array'
…able as latest image tag
…repository in dockerhub)
I am going to fix the failing image in the next pull request as well as add other combinations. The goal is to test the first batch of images on coffee-casa already today. |
Thanks @nsmith- for starting point: https://github.com/CoffeaTeam/docker-coffea-base/blob/coffea2023
The goal is to merge https://github.com/CoffeaTeam/docker-coffea-base and https://github.com/CoffeaTeam/docker-coffea-dask repositories and have the possibility to maintain both coffea versions separately (CalVer and legacy 0.7.x) as separate images.
I propose to name
coffeateam/coffea-basev0
as legacy 0.7.x andcoffeateam/coffea-dask
the calver version. I added also two versions of each image, depending on linux distro:coffeateam/coffea-basev0-ubuntu
,coffeateam/coffea-basev0-alma8
andcoffeateam/coffea-dask-ubuntu
,coffeateam/coffea-dask-alma8
.The next step would be to slim the image and add ML learning libraries as separate image (?).