#18777: Remove unneeded BLAS linking for Cython modules
----------------------------------+------------------------
Reporter: jdemeyer | Owner:
Type: enhancement | Status: new
Priority: major | Milestone: sage-6.8
Component: build | Resolution:
Keywords: | Merged in:
Authors: Jeroen Demeyer | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
Dependencies: | Stopgaps:
----------------------------------+------------------------
Description changed by jdemeyer:
Old description:
> Various Cython modules implementing matrices and vectors list
> {{{
> libraries = [BLAS, BLAS2]
> }}}
> in `src/module_list.py`.
>
> However, nothing in Sage directly uses BLAS, it is only used through
> external libraries (linbox, numpy, ...). So it makes no sense to link to
> BLAS and nothing else, which means that this is a mistake.
>
> ------
>
> I checked the commit history and these extensions listing only `BLAS,
> BLAS2` as libraries go back to #3498 and #4206:
> {{{
> commit a8b66cc30d4aca925c1e3a1c0bb69d0f4f62fbb1
> Author: Jason Grout <[email protected]>
> Date: Wed Jul 9 19:54:35 2008 -0500
>
> Switch the RDF and CDF matrices to a numpy 1.2 backend; factor out
> common functionality to matrix_double_dense.pyx.
> }}}
> and
> {{{
> commit b07600d93461c717fc6702e99afd0f2cf2eeb1df
> Author: Jason Grout <[email protected]>
> Date: Tue Nov 11 03:30:38 2008 -0600
>
> Change the RDF/CDF vector backend to numpy, and refactor the code to
> a common parent vector_double_dense. Also change names of the classes to
> vector_real_double_dense and vector_complex_double_dense.
> }}}
>
> It seems that the backends were changed from GSL to Numpy and I guess
> that the BLAS libraries (needed for GSL) were simply kept.
>
> There might also be the mistaken assumption that BLAS was needed for
> numpy. It's true that numpy uses BLAS, but this is done using the
> standard Python `import` mechanism, it's not the usual dynamic linking
> (there is no `-lnumpy` argument needed either).
New description:
Various Cython modules implementing matrices and vectors list
{{{
libraries = [BLAS, BLAS2]
}}}
in `src/module_list.py`.
However, nothing in Sage directly uses BLAS, it is only used through
external libraries (linbox, numpy, ...). So it makes no sense to link to
BLAS and nothing else, which means that this is a mistake.
------
I checked the commit history and these extensions listing only `BLAS,
BLAS2` as libraries go back to #3498 and #4206:
{{{
commit a8b66cc30d4aca925c1e3a1c0bb69d0f4f62fbb1
Author: Jason Grout <[email protected]>
Date: Wed Jul 9 19:54:35 2008 -0500
Switch the RDF and CDF matrices to a numpy 1.2 backend; factor out
common functionality to matrix_double_dense.pyx.
}}}
and
{{{
commit b07600d93461c717fc6702e99afd0f2cf2eeb1df
Author: Jason Grout <[email protected]>
Date: Tue Nov 11 03:30:38 2008 -0600
Change the RDF/CDF vector backend to numpy, and refactor the code to a
common parent vector_double_dense. Also change names of the classes to
vector_real_double_dense and vector_complex_double_dense.
}}}
It seems that the backends were changed from GSL to Numpy and I guess that
the BLAS libraries (needed for GSL) were simply kept.
There might also be the mistaken assumption that BLAS was needed for
numpy. It's true that numpy uses BLAS, but we use numpy using the standard
Python `import` mechanism, it's not the usual dynamic linking (there is no
`-lnumpy` argument needed either).
--
--
Ticket URL: <http://trac.sagemath.org/ticket/18777#comment:1>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.