summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorPauli Virtanen <pav@iki.fi>2019-12-07 23:48:29 +0200
committerPauli Virtanen <pav@iki.fi>2019-12-14 14:14:37 +0200
commitb7f42ea0616812518e04e9e25d89476145c7552c (patch)
tree855502a50142bfa1fadf2a896e0f411506b9d6e3 /doc
parent669cd13c692cfe8476e24dad3d42bbbd94547727 (diff)
downloadnumpy-b7f42ea0616812518e04e9e25d89476145c7552c.tar.gz
DOC: document 64-bit BLAS/LAPACK build-time variables
Diffstat (limited to 'doc')
-rw-r--r--doc/source/user/building.rst40
1 files changed, 27 insertions, 13 deletions
diff --git a/doc/source/user/building.rst b/doc/source/user/building.rst
index 8e2b5c03b..8e9744a87 100644
--- a/doc/source/user/building.rst
+++ b/doc/source/user/building.rst
@@ -195,23 +195,37 @@ or::
BLAS=None LAPACK=None ATLAS=None python setup.py build
-64-bit BLAS and LAPACK with symbol suffix
-~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+64-bit BLAS and LAPACK
+~~~~~~~~~~~~~~~~~~~~~~
+
+You can tell Numpy to use 64-bit BLAS/LAPACK libraries by setting the
+environment variable::
+
+ NPY_USE_BLAS_ILP64=1
+
+when building Numpy. The following 64-bit BLAS/LAPACK libraries are
+supported:
+
+1. OpenBLAS ILP64 with ``64_`` symbol suffix (``openblas64_``)
+2. OpenBLAS ILP64 without symbol suffix (``openblas_ilp64``)
+
+The order in which they are preferred is determined by
+``NPY_BLAS_ILP64_ORDER`` and ``NPY_LAPACK_ILP64_ORDER`` environment
+variables, similarly as above.
+
+.. note::
-Numpy also supports 64-bit OpenBLAS with ``64_`` symbol suffix. Such
-library is obtained by compiling OpenBLAS with settings::
+ Using non-symbol-suffixed 64-bit BLAS/LAPACK in a program that also
+ uses 32-bit BLAS/LAPACK can cause crashes under certain conditions
+ (e.g. with embedded Python interpreters on Linux).
- make INTERFACE64=1 SYMBOLSUFFIX=64_
+ The 64-bit OpenBLAS with ``64_`` symbol suffix is obtained by
+ compiling OpenBLAS with settings::
-To make Numpy use it, set ``NPY_USE_BLAS64_=1`` environment variable
-when building Numpy. You may also need to configure the
-``[openblas64_]`` section in ``site.cfg``.
+ make INTERFACE64=1 SYMBOLSUFFIX=64_
-The symbol suffix avoids symbol name clashes between 32-bit and 64-bit
-BLAS/LAPACK libraries, meaning that you can link to both in the same
-program. This avoids potential issues when using 64-bit BLAS/LAPACK in
-Numpy while simultaneously using other Python software that uses the
-32-bit versions.
+ The symbol suffix avoids the symbol name clashes between 32-bit and
+ 64-bit BLAS/LAPACK libraries.
Supplying additional compiler flags