| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
MAINT: linalg: use symbol suffix in fallback lapack_lite
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When building the fallback lapack_lite library for numpy.linalg,
add symbol suffix to the routines when using 64-bit integer indices.
Adjust the lapack_lite generator script to also output a header file
that renames the symbols. Moreover, also rename symbols from f2c.c, to
be sure (because they have short and generic names that may clash).
This avoids a name clash with BLAS/LAPACK names, which can cause
problems in corner cases on platforms where inadvertent symbol
overriding in dynamic libraries can occur.
|
|/
|
|
|
| |
As numpy is Python 3 only, these import statements are now unnecessary
and don't alter runtime behavior.
|
|
|
|
|
| |
Make numpy.__config__.show() to print information about the fallback
lapack_lite library when it is used.
|
|
|
|
|
| |
Build the lapack fallback library (used when no LAPACK installed) with
64-bit integer size when building on a 64-bit platform.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Generalize the ILP64 BLAS/LAPACK symbol name handling to deal with
arbitrary prefix/suffix.
The build-time behavior is changed so that HAVE_BLAS_ILP64 and
BLAS_SYMBOL_SUFFIX/PREFIX defines are added to compile options
as appropriate.
Mainly to make autodetection of BLAS/LAPACK easier for downstream
numpy.distutils users, add get_info aliases 'blas_ilp64_opt',
'blas_ilp64_plain_opt', and 'blas64__opt' for any/no/""&"64_"
prefix&suffix, and the same for lapack. (Due to the way system_info
works, each also gets a separate class.)
In addition to openblas64_ which has a fixed suffix, add the (by default
suffixless) openblas_ilp64, which correspond to the most likely cases to
be present.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, the dlamch function was a manually-edited file, precluding
autogeneration. We fix this by putting the manual edits in a patch file, and
then generating f2c_config.c from install/*.f, which includes dlamch.
While these functions exist in more than once place in lapack 3.0.0, they only
exist in lapack/install in newer versions. A side effect of this is that some
functions have been pulled out of `f2c_blas.c` and `f2c_s_lapack.c` into this
new file.
The edits in the patch were introduced in cadbb5f2ec84cb774023bbe8cbe6f39a93e837d7,
for a reason that is lost to time.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also uses this splitting as an excuse to ditch the _lite suffix, in
favor of a f2c_ prefix for all generated files.
Before:
* `zlapack_lite.c` - Functions for the `complex128` type.
* `dlapack_lite.c` - Every other lapack function
After:
* `f2c_z_lapack.c` - Functions for the `complex128` type.
* `f2c_c_lapack.c` - Functions for the `complex64` type.
* `f2c_d_lapack.c` - Functions for the `float64` type.
* `f2c_s_lapack.c` - Functions for the `float32` type.
* `f2c_lapack.c` - Every other lapack function
|
| |
|
|
|
|
|
|
| |
Compute the sources required to build extensions lapack_lite and
_umath_linalg in a more direct way that doesn't rely on abusing the
'depends' argument to config.add_extension().
|
|
|
|
|
|
|
| |
Run the 2to3 ws_comma fixer on *.py files. Some lines are now too long
and will need to be broken at some point. OTOH, some lines were already
too long and need to be broken at some point. Now seems as good a time
as any to do this with open PRs at a minimum.
|
|
|
|
| |
Now is as good a time as any with open PR's at a low.
|
|
|
|
| |
Also, link umath_linalg against the system BLAS/LAPACK if available.
|
|
|
|
|
|
|
| |
Add `print_function` to all `from __future__ import ...` statements
and use the python3 print function syntax everywhere.
Closes #3078.
|
|
|
|
|
|
|
|
| |
This should be harmless, as we already are division clean. However,
placement of this import takes some care. In the future a script
can be used to append new features without worry, at least until
such time as it exceeds a single line. Having that ability will
make it easier to deal with absolute imports and printing updates.
|
| |
|
| |
|
| |
|
|
|
|
| |
defined symbols) when using optimized lapack.
|
| |
|
|
|
|
| |
unoptimized lapack shipped with numpy [tested] or if optimized lapack library does not have xerbla_ defined [not tested]
|
| |
|
| |
|
| |
|
|
|
|
| |
extraneous whitespace
|
| |
|
|
|