Closed ken-lauer closed 3 weeks ago
With @hhslepicka we released a new lapack95 that specifies openblas as the variant for MacOS (PR link).
No luck still:
$ conda create -n bmad-test bmad=20240922 libblas=*=*openblas
Channels:
- conda-forge
Platform: osx-arm64
Collecting package metadata (repodata.json): done
Solving environment: failed
LibMambaUnsatisfiableError: Encountered problems while solving:
- package libblas-3.9.0-1_openblas requires libopenblas >=0.3.12,<0.3.13.0a0, but none of the providers can be installed
Could not solve for environment specs
The following packages are incompatible
├─ bmad 20240922** is installable and it requires
│ └─ libopenblas >=0.3.28,<1.0a0 , which can be installed;
└─ libblas * *openblas is not installable because there are no viable options
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.17,<0.3.18.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.18,<0.3.19.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.20,<0.3.21.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.21,<0.3.22.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.12,<0.3.13.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.15,<0.3.16.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.23,<0.3.24.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.24,<0.3.25.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.25,<0.3.26.0a0 , which conflicts with any installable versions previously reported;
├─ libblas 3.9.0 would require
│ └─ libopenblas >=0.3.26,<0.3.27.0a0 , which conflicts with any installable versions previously reported;
└─ libblas 3.9.0 would require
└─ libopenblas >=0.3.27,<0.3.28.0a0 , which conflicts with any installable versions previously reported.
If I understand this correctly, it's saying bmad wants libopenblas 0.3.28 (which is available on conda-forge), however the latest version of libblas 3.9.0 is only compatible up to 0.3.27.
Is it worth having multiple bmad builds with libopenblas versions?
Should we run_constrain
libopenblas
to <=0.3.27
?
Or even... is this something that should be reported to libblas/libopenblas?
Edit: OK, this is pending upstream in blas-feedstock (https://github.com/conda-forge/blas-feedstock/pull/121)
I'm not sure what the right approach here is.
I also bumped this in blas-feedstock as the other linked PR never ran its CI and is a bit behind: https://github.com/conda-forge/blas-feedstock/pull/124
In my (non-expert) opinion, it seems like openblas shouldn't get a release unless blas-feedstock gets an update around the same time. Somehow those got out of lock-step and have caused this issue.
Maybe:
It looks like after following the knowledge base suggestion in #463, it's building variants for openblas 0.3.27 and 0.3.28:
2024-09-24T17:45:39.0563833Z openblas: 0.3.27-pthreads_h9eca1d5_1 conda-forge
...
2024-09-24T17:19:38.8900447Z openblas: 0.3.28-pthreads_hbcdf1e8_0 conda-forge
This was not the case as of the latest main
branch build (which only did 0.3.28). So I think this may have been the cause. I'll tweak/simplify that PR a bit more and hopefully this issue will be closed today...
It appears to me with the changes in this feedstock (#463) and lapack95, it tends to select openblas
and create a valid environment on MacOS arm64. I'll leave this open for a bit in case others still have issues.
I think we're good now
Solution to issue cannot be found in the documentation.
Issue
The symbol in question comes from lapack95: https://github.com/conda-forge/lapack95-feedstock/issues/7
pytao and any other libraries which use
libtao.dylib
will fail with the following message whenlibblas=*=accelerate
is installed:Our previous workaround was to use libblas instead (
conda install "libblas=*=*_openblas"
), however it appears that this downgrades bmad. It's no longer installable with openblas:Installed packages
Environment info