#17635: Update Givaro, FFLAS-FFPACK and LinBox
-------------------------------------+-------------------------------------
Reporter: jpflori | Owner:
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-7.1
Component: packages: | Resolution:
standard | Merged in:
Keywords: | Reviewers:
Authors: Clement Pernet | Work issues:
Report Upstream: N/A | Commit:
Branch: | f82a77dc434c9e0c93aac406f239285cc140295a
u/cpernet/givaro_fflasffpack_linbox| Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Comment (by fbissey):
OK, more thoughts about `fflas-ffpack`. By default usage of `sse4.1`,
`avx`, `avx2` and `fma` instructions are enabled if found. This is a
problem when building a binary for redistribution as we cannot guarantee
that the target machine will support any instructions found on the
building machine. We need to be able to disable those for binary build
(`SAGE_FAT_BINARY=yes`?).
Going through `linbox` now. Like `fflas-ffpack`, `openmp` is enabled by
default even without `--enable-openmp` in `spkg-install` but it looks like
it can be disable the standard way to me. `linbox` looks for
{{{
LB_CHECK_IML
LB_CHECK_M4RI
LB_CHECK_M4RIE
LB_CHECK_MPFR
# we nedd mpfr next :
LB_CHECK_FPLLL
LB_CHECK_FLINT
LB_CHECK_NTL
}}}
but none of these are in `linbox`'s dependencies. Are any of those
actually used?
Actually the current version should depend on `ntl` and `iml`
{{{
(sage-sh) fbissey@QCD-nzi3:sage-7.0$ ldd -r
local/lib/liblinboxsage.so.0.0.0
linux-vdso.so.1 (0x00007ffcaf131000)
libgmpxx.so.8 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/libgmpxx.so.8 (0x00007f3f89ea8000)
libgmp.so.16 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/libgmp.so.16 (0x00007f3f89c31000)
libntl.so.19 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/libntl.so.19 (0x00007f3f89810000)
libcblas.so.3 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/libcblas.so.3 (0x00007f3f895ed000)
libatlas.so.3 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/libatlas.so.3 (0x00007f3f88d01000)
liblinbox.so.0 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/liblinbox.so.0 (0x00007f3f88afa000)
libgivaro.so.0 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/libgivaro.so.0 (0x00007f3f8889d000)
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-
gnu/4.9.3/libstdc++.so.6 (0x00007f3f88557000)
libm.so.6 => /lib64/libm.so.6 (0x00007f3f88253000)
libc.so.6 => /lib64/libc.so.6 (0x00007f3f87eb8000)
libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-
gnu/4.9.3/libgcc_s.so.1 (0x00007f3f87ca0000)
libgf2x.so.1 => /home/fbissey/sandbox/git-
fork/sage-7.0/local/lib/libgf2x.so.1 (0x00007f3f87a8a000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f3f8786d000)
/lib64/ld-linux-x86-64.so.2 (0x0000561bc940b000)
undefined symbol: maxMagnMP (local/lib/liblinboxsage.so.0.0.0)
undefined symbol: findRNS (local/lib/liblinboxsage.so.0.0.0)
undefined symbol: RNSbound (local/lib/liblinboxsage.so.0.0.0)
undefined symbol: certSolveMP (local/lib/liblinboxsage.so.0.0.0)
undefined symbol: certSolveRedMP (local/lib/liblinboxsage.so.0.0.0)
undefined symbol: nonsingSolvLlhsMM (local/lib/liblinboxsage.so.0.0.0)
undefined symbol: nonsingSolvRNSMM (local/lib/liblinboxsage.so.0.0.0)
}}}
compared to sage-on-gentoo on the same machine
{{{
ldd -r /usr/lib64/liblinboxsage.so.0.0.0
linux-vdso.so.1 (0x00007ffe013bb000)
libgmpxx.so.4 => /usr/lib64/libgmpxx.so.4 (0x00007f8a84d7a000)
libgmp.so.10 => /usr/lib64/libgmp.so.10 (0x00007f8a84b09000)
libntl-9.6.2.so => /usr/lib64/libntl-9.6.2.so (0x00007f8a846e5000)
libreflapack.so => /usr/lib64/libreflapack.so (0x00007f8a83f03000)
libopenblas_threads.so.0 => /usr/lib64/libopenblas_threads.so.0
(0x00007f8a8396b000)
liblinbox.so.0 => /usr/lib64/liblinbox.so.0 (0x00007f8a83763000)
libgivaro.so.0 => /usr/lib64/libgivaro.so.0 (0x00007f8a83507000)
libiml.so.0 => /usr/lib64/libiml.so.0 (0x00007f8a832e6000)
libstdc++.so.6 => /usr/lib/gcc/x86_64-pc-linux-
gnu/4.9.3/libstdc++.so.6 (0x00007f8a82fd6000)
libm.so.6 => /lib64/libm.so.6 (0x00007f8a82cd2000)
libc.so.6 => /lib64/libc.so.6 (0x00007f8a82937000)
libgcc_s.so.1 => /usr/lib/gcc/x86_64-pc-linux-
gnu/4.9.3/libgcc_s.so.1 (0x00007f8a8271f000)
libgf2x.so.1 => /usr/lib64/libgf2x.so.1 (0x00007f8a82509000)
libgfortran.so.3 => /usr/lib/gcc/x86_64-pc-linux-
gnu/4.9.3/libgfortran.so.3 (0x00007f8a821e0000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f8a81fc4000)
/lib64/ld-linux-x86-64.so.2 (0x00005557ec4cf000)
libquadmath.so.0 => /usr/lib/gcc/x86_64-pc-linux-
gnu/4.9.3/libquadmath.so.0 (0x00007f8a81d85000)
}}}
Where I had to add `LIBS="-liml"` for things to be completely resolved.
--
Ticket URL: <http://trac.sagemath.org/ticket/17635#comment:58>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.