@@ -195,23 +195,37 @@ or::
195
195
BLAS=None LAPACK=None ATLAS=None python setup.py build
196
196
197
197
198
- 64-bit BLAS and LAPACK with symbol suffix
199
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
198
+ 64-bit BLAS and LAPACK
199
+ ~~~~~~~~~~~~~~~~~~~~~~
200
+
201
+ You can tell Numpy to use 64-bit BLAS/LAPACK libraries by setting the
202
+ environment variable::
203
+
204
+ NPY_USE_BLAS_ILP64=1
205
+
206
+ when building Numpy. The following 64-bit BLAS/LAPACK libraries are
207
+ supported:
208
+
209
+ 1. OpenBLAS ILP64 with ``64_ `` symbol suffix (``openblas64_ ``)
210
+ 2. OpenBLAS ILP64 without symbol suffix (``openblas_ilp64 ``)
211
+
212
+ The order in which they are preferred is determined by
213
+ ``NPY_BLAS_ILP64_ORDER `` and ``NPY_LAPACK_ILP64_ORDER `` environment
214
+ variables, similarly as above.
215
+
216
+ .. note ::
200
217
201
- Numpy also supports 64-bit OpenBLAS with ``64_ `` symbol suffix. Such
202
- library is obtained by compiling OpenBLAS with settings::
218
+ Using non-symbol-suffixed 64-bit BLAS/LAPACK in a program that also
219
+ uses 32-bit BLAS/LAPACK can cause crashes under certain conditions
220
+ (e.g. with embedded Python interpreters on Linux).
203
221
204
- make INTERFACE64=1 SYMBOLSUFFIX=64_
222
+ The 64-bit OpenBLAS with ``64_ `` symbol suffix is obtained by
223
+ compiling OpenBLAS with settings::
205
224
206
- To make Numpy use it, set ``NPY_USE_BLAS64_=1 `` environment variable
207
- when building Numpy. You may also need to configure the
208
- ``[openblas64_] `` section in ``site.cfg ``.
225
+ make INTERFACE64=1 SYMBOLSUFFIX=64_
209
226
210
- The symbol suffix avoids symbol name clashes between 32-bit and 64-bit
211
- BLAS/LAPACK libraries, meaning that you can link to both in the same
212
- program. This avoids potential issues when using 64-bit BLAS/LAPACK in
213
- Numpy while simultaneously using other Python software that uses the
214
- 32-bit versions.
227
+ The symbol suffix avoids the symbol name clashes between 32-bit and
228
+ 64-bit BLAS/LAPACK libraries.
215
229
216
230
217
231
Supplying additional compiler flags
0 commit comments