{"diffoscope-json-version": 1, "source1": "/srv/reproducible-results/rbuild-debian/tmp.xFxMiiF7pP/b1/fflas-ffpack_2.5.0~rc1-1_amd64.changes", "source2": "/srv/reproducible-results/rbuild-debian/tmp.xFxMiiF7pP/b2/fflas-ffpack_2.5.0~rc1-1_amd64.changes", "unified_diff": null, "details": [{"source1": "Files", "source2": "Files", "unified_diff": "@@ -1,5 +1,5 @@\n \n 1da85c11ce804bfe4151fd2fcbbc8a72 231664 math optional fflas-ffpack-common_2.5.0~rc1-1_all.deb\n- ce2903a0e78091830245d20f656dbd03 608412 doc optional fflas-ffpack-dev-doc_2.5.0~rc1-1_all.deb\n+ 15ad641c9e301ddd1c0bf6abbb7bde3a 608392 doc optional fflas-ffpack-dev-doc_2.5.0~rc1-1_all.deb\n 61dcccc3725c602a1e1005eab703e865 187372 doc optional fflas-ffpack-user-doc_2.5.0~rc1-1_all.deb\n dc32a7360949551bb3b52cd3b5d2dde2 17836 math optional fflas-ffpack_2.5.0~rc1-1_amd64.deb\n"}, {"source1": "fflas-ffpack-dev-doc_2.5.0~rc1-1_all.deb", "source2": "fflas-ffpack-dev-doc_2.5.0~rc1-1_all.deb", "unified_diff": null, "details": [{"source1": "file list", "source2": "file list", "unified_diff": "@@ -1,3 +1,3 @@\n -rw-r--r-- 0 0 0 4 2021-12-06 03:41:46.000000 debian-binary\n--rw-r--r-- 0 0 0 28812 2021-12-06 03:41:46.000000 control.tar.xz\n--rw-r--r-- 0 0 0 579408 2021-12-06 03:41:46.000000 data.tar.xz\n+-rw-r--r-- 0 0 0 28820 2021-12-06 03:41:46.000000 control.tar.xz\n+-rw-r--r-- 0 0 0 579380 2021-12-06 03:41:46.000000 data.tar.xz\n"}, {"source1": "control.tar.xz", "source2": "control.tar.xz", "unified_diff": null, "details": [{"source1": "control.tar", "source2": "control.tar", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "unified_diff": null, "details": [{"source1": "./md5sums", "source2": "./md5sums", "comments": ["Files differ"], "unified_diff": null}]}]}]}, {"source1": "data.tar.xz", "source2": "data.tar.xz", "unified_diff": null, "details": [{"source1": "data.tar", "source2": "data.tar", "unified_diff": null, "details": [{"source1": "./usr/share/doc/fflas-ffpack/fflas-ffpack-dev-html/bib.html", "source2": "./usr/share/doc/fflas-ffpack/fflas-ffpack-dev-html/bib.html", "unified_diff": "@@ -39,46 +39,46 @@\n \n
\n
\n
Bibliography
\n
\n
\n
\n+
Global FFLAS::Protected::TRSMBound (const Givaro::ModularBalanced< Element > &F)
\n+
    \n+
  • Dumas Giorgi Pernet 06, arXiv:cs/0601133
  • \n+
\n+
\n
Global FFPACK::LeadingSubmatrixRankProfiles (const size_t M, const size_t N, const size_t R, const size_t LSm, const size_t LSn, const size_t *P, const size_t *Q, size_t *RRP, size_t *CRP)
\n
    \n
  • Dumas J-G., Pernet C., and Sultan Z. Simultaneous computation of the row and column rank profiles , ISSAC'13.
  • \n
\n
\n
Global FFPACK::LUdivine (const Field &F, const FFLAS::FFLAS_DIAG Diag, const FFLAS::FFLAS_TRANSPOSE trans, const size_t M, const size_t N, typename Field::Element_ptr A, const size_t lda, size_t *P, size_t *Qt, const FFPACK_LU_TAG LuTag=FfpackSlabRecursive, const size_t cutoff=__FFLASFFPACK_LUDIVINE_THRESHOLD)
\n
    \n
  • Jeannerod C-P, Pernet, C. and Storjohann, A. Rank-profile revealing Gaussian elimination and the CUP matrix decomposition , J. of Symbolic Comp., 2013
  • \n
  • Pernet C, Brassel M LUdivine, une divine factorisation LU, 2002
  • \n
\n
\n+
Class ftrsmLeftUpperNoTransNonUnit< Element >
\n+
    \n+
  • Dumas, Giorgi, Pernet 06, arXiv:cs/0601133.
  • \n+
\n+
\n
Global FFPACK::PLUQ (const Field &F, const FFLAS::FFLAS_DIAG Diag, const size_t M, const size_t N, typename Field::Element_ptr A, const size_t lda, size_t *P, size_t *Q)
\n
    \n
  • Dumas J-G., Pernet C., and Sultan Z. Simultaneous computation of the row and column rank profiles , ISSAC'13, 2013
  • \n
\n
\n-
Global FFLAS::Protected::TRSMBound (const Givaro::ModularBalanced< Element > &F)
\n-
    \n-
  • Dumas Giorgi Pernet 06, arXiv:cs/0601133
  • \n-
\n-
\n
Global FFPACK::productBruhatxTS (const Field &Fi, size_t N, size_t s, size_t r, size_t t, const size_t *P, const size_t *Q, typename Field::ConstElement_ptr Xu, size_t ldu, size_t NbBlocksU, const size_t *Ku, const size_t *Tu, const size_t *MU, typename Field::ConstElement_ptr Xl, size_t ldl, size_t NbBlocksL, const size_t *Kl, const size_t *Tl, const size_t *ML, typename Field::Element_ptr B, size_t ldb, const typename Field::Element beta, typename Field::Element_ptr D, size_t ldd)
\n
Pernet C. and Storjohann A. Time and space efficient generators for quasiseparable matrices , JSC (85), 2018, doi:10.1016/j.jsc.2017.07.010
\n
Global FFPACK::Protected::GaussJordan (const Field &F, const size_t M, const size_t N, typename Field::Element_ptr A, const size_t lda, const size_t colbeg, const size_t rowbeg, const size_t colsize, size_t *P, size_t *Q, const FFPACK::FFPACK_LU_TAG LuTag)
\n
    \n
  • Algorithm 2.8 of A. Storjohann Thesis 2000,
  • \n-
  • Algorithm 11 of Jeannerod C-P., Pernet, C. and Storjohann, A. Rank-profile revealing Gaussian elimination and the CUP matrix decomposition , J. of Symbolic Comp., 2013
  • \n-
\n-
\n-
Class ftrsmLeftUpperNoTransNonUnit< Element >
\n-
    \n-
  • Dumas, Giorgi, Pernet 06, arXiv:cs/0601133.
  • \n+
  • Algorithm 11 of Jeannerod C-P., Pernet, C. and Storjohann, A. Rank-profile revealing Gaussian elimination and the CUP matrix decomposition , J. of Symbolic Comp., 2013
  • \n
\n
\n
\n
\n
\n \n
\n"}, {"source1": "./usr/share/doc/fflas-ffpack/fflas-ffpack-dev-html/bug.html", "source2": "./usr/share/doc/fflas-ffpack/fflas-ffpack-dev-html/bug.html", "unified_diff": "@@ -49,27 +49,27 @@\n

this is fassign

\n

this is fassign

\n
\n
Global FFLAS::details::pack_rhs (int64_t *XX, const int64_t *X, size_t ldx, size_t rows, size_t cols)
\n

this is fassign

\n

this is fassign

\n
\n-
Global FFLAS::fconvert (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, FFLAS_ELT *X, const size_t incX, const FFLAS_ELT *Y, const size_t incY)
\n-
use cblas_(d)scal when possible
\n-
Global FFLAS::fconvert (const Field &F, const size_t n, OtherElement_ptr X, const size_t incX, typename Field::ConstElement_ptr Y, const size_t incY)
\n-
use cblas_(d)scal when possible
\n
Global FFLAS::fgemm_compressed (const Field &F, int m, int n, int k, const typename Field::Element *A, int lda, const typename Field::Element *B, int ldb, typename Field::Element *C, int ldc)
\n-

don't zero all, just the \"border\"

\n+

don't zero all, just the \"border\"

\n

don't zero all, just the \"border\"

\n-

don't zero all, just the \"border\"

\n+

don't zero all, just the \"border\"

\n
\n-
Global FFLAS::finit (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, const FFLAS_ELT *Y, const size_t incY, FFLAS_ELT *X, const size_t incX)
\n-
use cblas_(d)scal when possible
\n+
Global FFLAS::fconvert (const Field &F, const size_t n, OtherElement_ptr X, const size_t incX, typename Field::ConstElement_ptr Y, const size_t incY)
\n+
use cblas_(d)scal when possible
\n+
Global FFLAS::fconvert (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, FFLAS_ELT *X, const size_t incX, const FFLAS_ELT *Y, const size_t incY)
\n+
use cblas_(d)scal when possible
\n
Global FFLAS::finit (const Field &F, const size_t n, const OtherElement_ptr Y, const size_t incY, typename Field::Element_ptr X, const size_t incX)
\n
use cblas_(d)scal when possible
\n+
Global FFLAS::finit (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, const FFLAS_ELT *Y, const size_t incY, FFLAS_ELT *X, const size_t incX)
\n+
use cblas_(d)scal when possible
\n
Global FFLAS::fneg (const Field &F, const size_t n, typename Field::ConstElement_ptr Y, const size_t incY, typename Field::Element_ptr X, const size_t incX)
\n
use cblas_(d)scal when possible
\n
Global FFLAS::fneg (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, const FFLAS_ELT *Y, const size_t incY, FFLAS_ELT *X, const size_t incX)
\n
use cblas_(d)scal when possible
\n
Global FFLAS::fnegin (const Field &F, const size_t n, typename Field::Element_ptr X, const size_t incX)
\n
use cblas_(d)scal when possible
\n
Global FFLAS::fnegin (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, FFLAS_ELT *X, const size_t incX)
\n@@ -80,40 +80,40 @@\n
use cblas_(d)scal when possible
\n
Global FFLAS::fscal (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, const FFLAS_ELT alpha, const FFLAS_ELT *X, const size_t incX, FFLAS_ELT *Y, const size_t incY)
\n
use cblas_(d)scal when possible
\n
Global FFLAS::fscalin (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t n, const FFLAS_ELT alpha, FFLAS_ELT *X, const size_t incX)
\n
use cblas_(d)scal when possible
\n
Global FFLAS::fsquare (const Field &F, const FFLAS_TRANSPOSE ta, const size_t n, const typename Field::Element alpha, typename Field::ConstElement_ptr A, const size_t lda, const typename Field::Element beta, typename Field::Element_ptr C, const size_t ldc)
\n
why double ?
\n-
Global FFLAS::fswap (const Field &F, const size_t N, typename Field::Element_ptr X, const size_t incX, typename Field::Element_ptr Y, const size_t incY)
\n-
use cblas_dswap when double
\n
Global FFLAS::fswap (const FFLAS_FIELD< FFLAS_ELT > &F, const size_t N, FFLAS_ELT *X, const size_t incX, FFLAS_ELT *Y, const size_t incY)
\n
use cblas_dswap when double
\n-
Global FFLAS::ftrsm (const Field &F, const FFLAS_SIDE Side, const FFLAS_UPLO Uplo, const FFLAS_TRANSPOSE TransA, const FFLAS_DIAG Diag, const size_t M, const size_t N, const typename Field::Element alpha, typename Field::ConstElement_ptr A, const size_t lda, typename Field::Element_ptr B, const size_t ldb)
\n-
\"$\\alpha$\" must be non zero.
\n+
Global FFLAS::fswap (const Field &F, const size_t N, typename Field::Element_ptr X, const size_t incX, typename Field::Element_ptr Y, const size_t incY)
\n+
use cblas_dswap when double
\n
Global FFLAS::ftrsm (const FFLAS_FIELD< FFLAS_ELT > &F, const FFLAS_SIDE Side, const FFLAS_UPLO Uplo, const FFLAS_TRANSPOSE TransA, const FFLAS_DIAG Diag, const size_t M, const size_t N, const FFLAS_ELT alpha, const FFLAS_ELT *A, const size_t lda, FFLAS_ELT *B, const size_t ldb)
\n
\"$\\alpha$\" must be non zero.
\n-
Global FFPACK::Invert2 (const Field &F, const size_t M, typename Field::Element_ptr A, const size_t lda, typename Field::Element_ptr X, const size_t ldx, int &nullity)
\n-
not tested.
\n-
Global printvect (std::ostream &o, vector< T > &vect)
\n-
does not belong here
\n+
Global FFLAS::ftrsm (const Field &F, const FFLAS_SIDE Side, const FFLAS_UPLO Uplo, const FFLAS_TRANSPOSE TransA, const FFLAS_DIAG Diag, const size_t M, const size_t N, const typename Field::Element alpha, typename Field::ConstElement_ptr A, const size_t lda, typename Field::Element_ptr B, const size_t ldb)
\n+
\"$\\alpha$\" must be non zero.
\n
Global FFPACK::buildMatrix (const Field &F, typename Field::ConstElement_ptr E, typename Field::ConstElement_ptr C, const size_t lda, const size_t *B, const size_t *T, const size_t me, const size_t mc, const size_t lambda, const size_t mu)
\n
is this :
\n+
Global FFPACK::Invert2 (const Field &F, const size_t M, typename Field::Element_ptr A, const size_t lda, typename Field::Element_ptr X, const size_t ldx, int &nullity)
\n+
not tested.
\n
Global launch_fger_dispatch (const Field &F, const size_t nn, const typename Field::Element alpha, const size_t iters, RandIter &G)
\n

test for incx equal

\n

test for transpo

\n
\n
Global launch_MM_dispatch (const Field &F, const int mm, const int nn, const int kk, const typename Field::Element alpha, const typename Field::Element beta, const size_t iters, RandIter &G)
\n

test for ldX equal

\n

test for transpo

\n
\n
Global launch_MM_dispatch (const Field &F, const int mm, const int nn, const int kk, const typename Field::Element alpha, const typename Field::Element beta, const size_t iters, const int nbw, const bool par, RandIter &G)
\n

test for ldX equal

\n-

test for transpo

\n+

test for transpo

\n
\n+
Global printvect (std::ostream &o, vector< T > &vect)
\n+
does not belong here
\n \n \n \n \n
\n Generated on Mon Dec 6 2021 03:41:46 for FflasFfpack by \"doxygen\"/ 1.9.1\n
\n"}, {"source1": "./usr/share/doc/fflas-ffpack/fflas-ffpack-dev-html/todo.html", "source2": "./usr/share/doc/fflas-ffpack/fflas-ffpack-dev-html/todo.html", "unified_diff": "@@ -64,38 +64,38 @@\n
Global FFLAS::Protected::MatF2MatFl_Triangular (const Field &F, Givaro::FloatDomain::Element_ptr S, const size_t lds, typename Field::ConstElement_ptr const E, const size_t lde, const size_t m, const size_t n)
\n

do finit(...,FFLAS_TRANS,FFLAS_DIAG)

\n

do fconvert(...,FFLAS_TRANS,FFLAS_DIAG)

\n
\n
Global FFPACK::LUdivine (const Field &F, const FFLAS::FFLAS_DIAG Diag, const FFLAS::FFLAS_TRANSPOSE trans, const size_t M, const size_t N, typename Field::Element_ptr A, const size_t lda, size_t *P, size_t *Q, const FFPACK::FFPACK_LU_TAG LuTag, const size_t cutoff)
\n
std::swap ?
\n
Global FFPACK::Protected::RandomKrylovPrecond (const PolRing &PR, std::list< typename PolRing::Element > &completedFactors, const size_t N, typename PolRing::Domain_t::Element_ptr A, const size_t lda, size_t &Nb, typename PolRing::Domain_t::Element_ptr &B, size_t &ldb, typename PolRing::Domain_t::RandIter &g, const size_t degree=__FFLASFFPACK_ARITHPROG_THRESHOLD)
\n-

swap to save space ??

\n-

don't assing K2 c*noc x N but only mas (c,noc) x N and store each one after the other
\n-

\n+

don't assing K2 c*noc x N but only mas (c,noc) x N and store each one after the other
\n+

\n+

swap to save space ??

\n
\n
Module field
\n
biblio
\n
Global launch_fger_dispatch (const Field &F, const size_t nn, const typename Field::Element alpha, const size_t iters, RandIter &G)
\n
does nbw actually do nbw recursive calls and then call blas (check ?) ?
\n-
Global launch_MM_dispatch (const Field &F, const int mm, const int nn, const int kk, const typename Field::Element alpha, const typename Field::Element beta, const size_t iters, RandIter &G)
\n-
does nbw actually do nbw recursive calls and then call blas (check ?) ?
\n
Global launch_MM_dispatch (const Field &F, const int mm, const int nn, const int kk, const typename Field::Element alpha, const typename Field::Element beta, const size_t iters, const int nbw, const bool par, RandIter &G)
\n
does nbw actually do nbw recursive calls and then call blas (check ?) ?
\n+
Global launch_MM_dispatch (const Field &F, const int mm, const int nn, const int kk, const typename Field::Element alpha, const typename Field::Element beta, const size_t iters, RandIter &G)
\n+
does nbw actually do nbw recursive calls and then call blas (check ?) ?
\n+
Global test_redcolechelon (Field &F, size_t m, size_t n, size_t r, size_t iters, FFPACK::FFPACK_LU_TAG LuTag, RandIter &G, bool par)
\n+
check lda
\n+
Global test_redrowechelon (Field &F, size_t m, size_t n, size_t r, size_t iters, FFPACK::FFPACK_LU_TAG LuTag, RandIter &G, bool par)
\n+
check lda
\n
Module MMalgos
\n
biblio
\n
Module simd
\n
biblio
\n
Global test_colechelon (Field &F, size_t m, size_t n, size_t r, size_t iters, FFPACK::FFPACK_LU_TAG LuTag, RandIter &G, bool par)
\n
check lda
\n
Global test_det (Field &F, size_t n, int iter, RandIter &G)
\n
test with stride
\n-
Global test_redcolechelon (Field &F, size_t m, size_t n, size_t r, size_t iters, FFPACK::FFPACK_LU_TAG LuTag, RandIter &G, bool par)
\n-
check lda
\n-
Global test_redrowechelon (Field &F, size_t m, size_t n, size_t r, size_t iters, FFPACK::FFPACK_LU_TAG LuTag, RandIter &G, bool par)
\n-
check lda
\n
Global test_rowechelon (Field &F, size_t m, size_t n, size_t r, size_t iters, FFPACK::FFPACK_LU_TAG LuTag, RandIter &G, bool par)
\n
check lda
\n \n \n \n \n
\n"}]}]}]}]}