conda-smithy
conda-smithy copied to clipboard
long rerenders
The autotick bot is hitting rerenders that run over 10 minutes. This is wrong. We don't have an example yet, but the last one was the ambertools feedstock.
arrow-cpp
is not taking 10min but is generally quite heavy on the rerendering lengths if you need an example.
maybe it is time to try to use mamba in conda-smithy?
I am going to start working on "mamba-build" (will be called boa
) this week. If anyone wants to collaborate, let me know!
There are two different performance hotspots in conda-smithy
for the arrow-cpp
rerender:
- Downloading the
repodata.json
and checking whether we use the latest smithy version, heremamba
can help. - Rendering the CI templates, here we call out to
conda_build.api.render
, this is where amamba-build
could help.
Rendering the CI templates also can be done in parallel as we're rendering multiple templates. Still I would first tackle the version check as the return-on-invest is much higher.
Rerendering is also very slow for me when using source.git_url
. This can be fixed by passing dirty=True
to the cond_build.api.render()
but I am not sure what the possible negative impact of that might be.
I'm getting really tired of waiting on the 30 minute ctng-compilers-feedstock rerenders. If no one has looked into using boa for rerender, I might give it a whirl while I'm waiting. I'm thinking by now, there must be a way to just install things and smithy picks up the monekypatched conda-build, right?
I don't think it is purely boa. I think there are optimizations needed in conda build itself.
Would actually suggest trying the new libmamba
Conda solver. Can just add this to condarc
to enable it.
experimental_solver: libmamba
Then would try re-rendering as usual.
It's possible there's more things needed to get that working, but that's probably a good starting point.
here is a draft PR for conda mambarender ...
functionality: https://github.com/mamba-org/boa/pull/271
However, I don't know what and how to print.
Raised a webservice issue about using libmamba
( https://github.com/conda-forge/conda-forge-webservices/issues/502 )
nvcc
takes 40-50 mins to rerender.
Leo, if you have a moment, it would be interesting to try re-rendering with the libmamba
solver to see if that helps ( https://github.com/conda-forge/conda-smithy/issues/1307#issuecomment-1082942123 ) and if the results differ in any notable way.