Velvet Star Monitor

Standout celebrity highlights with iconic style.

updates

Accessing Anaconda Channels from Mamba

Writer Andrew Mclaughlin

I am building my Python environment around micromamba.
I was wondering how can I use the Anaconda channels to download packages as described in conda channels: .

By default micromamba is configured to work with conda-forge yet I'd like to access the numpy and scipy packages of Anaconda (Which are compiled using MKL).

Motivation

I am asking since when I install from conda-forge by looking at the configuration of numpy I get:

python -c "import numpy as np; np.show_config()"
blas_info: libraries = ['cblas', 'blas', 'cblas', 'blas', 'cblas', 'blas'] library_dirs = ['C:/Applications/Python\\Library\\lib'] include_dirs = ['C:/Applications/Python\\Library\\include'] language = f77 define_macros = [('HAVE_CBLAS', None)]
blas_opt_info: define_macros = [('NO_ATLAS_INFO', 1), ('HAVE_CBLAS', None)] libraries = ['cblas', 'blas', 'cblas', 'blas', 'cblas', 'blas'] library_dirs = ['C:/Applications/Python\\Library\\lib'] include_dirs = ['C:/Applications/Python\\Library\\include'] language = f77
lapack_info: libraries = ['lapack', 'blas', 'lapack', 'blas'] library_dirs = ['C:/Applications/Python\\Library\\lib'] language = f77
lapack_opt_info: libraries = ['lapack', 'blas', 'lapack', 'blas', 'cblas', 'blas', 'cblas', 'blas', 'cblas', 'blas'] library_dirs = ['C:/Applications/Python\\Library\\lib'] language = f77 define_macros = [('NO_ATLAS_INFO', 1), ('HAVE_CBLAS', None)] include_dirs = ['C:/Applications/Python\\Library\\include']
Supported SIMD extensions in this NumPy install: baseline = SSE,SSE2,SSE3 found = SSSE3,SSE41,POPCNT,SSE42,AVX,F16C,FMA3,AVX2,AVX512F,AVX512CD,AVX512_SKX,AVX512_CLX not found = AVX512_CNL

Which doesn't seem to be linked to MKL.

1 Answer

You don't need to use the Anaconda builds to use MKL. Conda Forge uses a different strategy for integrating BLAS/LAPACK implementations, which can mask the info shown from np.show_config() (some details here). Adding the specification

'blas=*=*mkl'

to your package specifications (either in YAML or in conda install) will ensure Conda Forge NumPy, etc. will use MKL.

Otherwise, one can switch to using Anaconda packages by adding the anaconda channel, as in this answer1. Just be aware that channel mixing can be messy. Personally, I would just stick to Conda Forge.


[1]: While I previously recommended using anaconda channel in the other answer, I have since read up more the Conda Forge strategy.

4

Your Answer

Sign up or log in

Sign up using Google Sign up using Facebook Sign up using Email and Password

Post as a guest

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.