summaryrefslogtreecommitdiff
path: root/doc/source
diff options
context:
space:
mode:
authorNick R. Papior <nickpapior@gmail.com>2020-09-17 12:29:38 +0200
committerGitHub <noreply@github.com>2020-09-17 12:29:38 +0200
commit233c63a56974de22b846ac989cef1fabe45e7296 (patch)
tree1ec1cd1f4b606603fbf3035422070eb581857e7e /doc/source
parent60a1e10c4593736b188b38e7d7c51aefb213af6a (diff)
downloadnumpy-233c63a56974de22b846ac989cef1fabe45e7296.tar.gz
BLD: enabled negation of library choices in NPY_*_ORDER (#17219)
BLD: enabled negation of library choices in NPY_*_ORDER When users build for a particular order it may be beneficial to disallow certain libraries. In particular a user may not care about which accelerated BLAS library is used, so long as the NetLIB or ATLAS library isn't used. This is now possible with: NPY_BLAS_ORDER='^blas,atlas' or NPY_BLAS_ORDER='!blas,atlas' Since we may envision more BLAS/LAPACK libraries to the pool, this will provide greater flexibility as they enter. A new (local) method is added in system_info.py which removes duplicate code and allows for easier usage across libraries.
Diffstat (limited to 'doc/source')
-rw-r--r--doc/source/user/building.rst21
1 files changed, 21 insertions, 0 deletions
diff --git a/doc/source/user/building.rst b/doc/source/user/building.rst
index 54ece3da3..47399139e 100644
--- a/doc/source/user/building.rst
+++ b/doc/source/user/building.rst
@@ -142,6 +142,16 @@ will prefer to use ATLAS, then BLIS, then OpenBLAS and as a last resort MKL.
If neither of these exists the build will fail (names are compared
lower case).
+Alternatively one may use ``!`` or ``^`` to negate all items::
+
+ NPY_BLAS_ORDER='^blas,atlas' python setup.py build
+
+will allow using anything **but** NetLIB BLAS and ATLAS libraries, the order of the above
+list is retained.
+
+One cannot mix negation and positives, nor have multiple negations, such cases will
+raise an error.
+
LAPACK
~~~~~~
@@ -165,6 +175,17 @@ will prefer to use ATLAS, then OpenBLAS and as a last resort MKL.
If neither of these exists the build will fail (names are compared
lower case).
+Alternatively one may use ``!`` or ``^`` to negate all items::
+
+ NPY_LAPACK_ORDER='^lapack' python setup.py build
+
+will allow using anything **but** the NetLIB LAPACK library, the order of the above
+list is retained.
+
+One cannot mix negation and positives, nor have multiple negations, such cases will
+raise an error.
+
+
.. deprecated:: 1.20
The native libraries on macOS, provided by Accelerate, are not fit for use
in NumPy since they have bugs that cause wrong output under easily reproducible