Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit c32fc3c
Showing
212 changed files
with
52,364 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,4 @@ | ||
Jean-Guillaume Dumas <Jean-Guillaume.Dumas@imag.fr> | ||
Pascal Giorgi <pascal.giorgi@univ-perp.fr> | ||
Cl�ment Pernet <Clement.Pernet@imag.fr> | ||
|
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
2011-15-04 v1.4.0 | ||
* Convert project to autotools (à la LinBox et Givaro) | ||
2008-06-05 v1.3.3 | ||
* fix the design of specializations to modular<double> modular<float> | ||
* give a proper name to ModularBalanced | ||
* fix the bugs in the bound computations (Winograd recursion over the | ||
finite field was too deep) | ||
* prepare the interface for integrating compressed representation for | ||
small finite fields | ||
2007-09-28 v1.3.2 | ||
* add routines fgetrs and fgesv (cf LAPACK), for system solving. | ||
supports rectangular, over/underdetermined systems. | ||
2007-08-29 v1.3.1 | ||
* add the benchmark directory, for automatic benchmarking against GOTO | ||
and ATLAS BLAS. Adapted from Pascal Giorgi's benchmark system. | ||
2007-08-28 v1.3.0 | ||
* new version of ftrmm ftrsm: ftrsm based on a multicascade algorithm | ||
reducing the number of modular reductions). Automated generation of each | ||
of the 48 specializations | ||
* several bug fixes | ||
* add regression tests: testeur_fgemm, testeur_lqup and testeur_ftrsm | ||
2007-07-05 v1.2.2 | ||
* add a transposed version of the LQUP decomposition routine | ||
LUdivine | ||
* fix many bugs in LUdivine | ||
* new schedules for Winograd algorithm for matrix multiplication: | ||
2 cases depending whether beta = 0 or not, taken form [Huss | ||
Ledermann & Al. 96] | ||
* add rowEchelon and ReducedRowEchelon routines + associated tests | ||
2007-06-21 v1.2.1 | ||
* add the use of float BLAS, if the field caradinality is small enough | ||
* improve genericity: gemm can be use over any field domain (not | ||
requiring any conversion to a integral representation) | ||
* add a variant of Winograd's algorithm with less temporaries for | ||
the operation C = AxB | ||
* add ColumnEchelon and ReducedColumnEchelon routines, using an | ||
inplace algorithm, based on the LQUP decompositon of LUdivine | ||
* add routines ftrtri (replacing invL), ftrtrm. | ||
* fix bunch of memory leaks in the tests (not yet finished) | ||
2007-03-13 v1.1.2 | ||
* change the genericity system for trsm to detect Field | ||
implementations over double (compatibility with LinBox) | ||
2007-03-11 v1.1.1 | ||
* complete preconditioning phase for the new Charpoly algorithm | ||
* new Charpoly algorithm renamed CharpolyArithProg | ||
* add exception for failure of the LasVegas algrithm | ||
* default charpoly is now: 2 attempts to CharpolyArithProg, then LUKrylov | ||
|
||
2007-02-27 v1.1.0 | ||
* change some naming conventions in the directories | ||
* add a LQUP routine for small dimension (LUdivine_small) and the | ||
cascading with LUdivine | ||
* put the bound computations in the same file | ||
* add dense_generator.C for the generation of random dense | ||
matrices in tests | ||
* add the new algorithm for characteristic polynomial (temporarily | ||
named frobenius) | ||
|
||
2006-08-11 v1.0.1 | ||
* add the field implementation modular-positive.h, especially for | ||
p=2 | ||
* add a the flag 'balanced' to the finite fields modular<double>, | ||
to switch to the apropriate bound computation (fgemm and trsm) | ||
* fix a bug in LUDivine LQUP elimination (initialisation of the | ||
permutation P for N=1 in the terminal case) | ||
* fix a bug in the determination of the number of recursive levels | ||
of Winograd Algorithm. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
If you have blas available : | ||
make ; make install ; | ||
should install FFLAS-FFPACK. | ||
|
||
If you need to compile tests, you'll probably need Givaro too. | ||
|
||
The test directory is under big reconstruction, and so is the benchmark/. | ||
|
||
Any help in documenting, coding is wellcome ! | ||
|
||
-- The FFLAS-FFPACK team. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
# Copyright (c) 2011 FFLAS-FFPACK | ||
# written by BB <bboyer@imag.fr> | ||
# adapted from LinBox configuration | ||
# | ||
# ========LICENCE======== | ||
# This file is part of the library FFLAS-FFPACK. | ||
# | ||
# FFLAS-FFPACK is free software: you can redistribute it and/or modify | ||
# it under the terms of the GNU Lesser General Public | ||
# License as published by the Free Software Foundation; either | ||
# version 2.1 of the License, or (at your option) any later version. | ||
# | ||
# This library is distributed in the hope that it will be useful, | ||
# but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | ||
# Lesser General Public License for more details. | ||
# | ||
# You should have received a copy of the GNU Lesser General Public | ||
# License along with this library; if not, write to the Free Software | ||
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | ||
# ========LICENCE======== | ||
#/ | ||
|
||
|
||
ACLOCAL_AMFLAGS = -I macros | ||
|
||
SUBDIRS=fflas-ffpack tests doc benchmarks macros optimiser | ||
|
||
|
||
# include_HEADERS=fflas-ffpack-config.h | ||
#!@todo add examples dir XXX | ||
|
||
docs:doc/fflas-ffpack-html/index.html | ||
|
||
doc/fflas-ffpack-html/index.html: | ||
(cd doc; make docs) | ||
|
||
docs_dev:doc/fflas-ffpack-dev-html/index.html | ||
|
||
doc/fflas-ffpack-dev-html/index.html: | ||
(cd doc; make docs_dev) | ||
|
||
# examples: | ||
# (cd examples; make examples) | ||
|
||
benchmarks: | ||
(cd benchmarks; make benchmarks) | ||
|
||
uninstall-hook: | ||
(test -d "$(includedir)/fflas-ffpack" && rm -rf \ | ||
"$(mandir)/man1" \ | ||
"$(mandir)" \ | ||
"$(includedir)/fflas-ffpack/fflas" \ | ||
"$(includedir)/fflas-ffpack/fflas/fflas_fgemm" \ | ||
"$(includedir)/fflas-ffpack/ffpack" \ | ||
"$(includedir)/fflas-ffpack/field" \ | ||
"$(includedir)/fflas-ffpack/utils" \ | ||
"$(includedir)/fflas-ffpack/" \ | ||
"$(datarootdir)/" \ | ||
) || true | ||
|
||
.PHONY:examples benchmarks | ||
|
||
bin_SCRIPTS=fflas-ffpack-config | ||
|
||
VERSION=2.0.0 | ||
|
||
# EXTRA_DIST=incremente-versions |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
no news is good news |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
****** FFLAS-FFPACK : Finite Field Linear Algebra Subroutines/Package ****** | ||
|
||
Version 1.3.3 | ||
|
||
PURPOSE: | ||
|
||
The FFLAS-FFPACK library provides functionalities for dense linear algebra | ||
over word size prime finite field. | ||
|
||
INSTALLATION: | ||
|
||
see INSTALL | ||
|
||
AVAILABILITY: from www-ljk.imag.fr/membres/Jean-Guillaume.Dumas/FFLAS/ | ||
|
||
REQUIREMENTS: A BLAS library: for ex. ATLAS (http://math-atlas.sourceforge.net/) | ||
|
||
This library requires the GNU C++ compiler (gcc-3.0 or newer) or any | ||
compiler supporting advanced template features. | ||
|
||
|
||
========================================================== | ||
The FFLAS-FFPACK website is www-ljk.imag.fr/membres/Jean-Guillaume.Dumas/FFLAS/ | ||
|
||
Please address your bug reports, suggestions and comments to | ||
the discussion group http://groups.google.com/group/ffpack-devel | ||
|
||
Last update : June 2008 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,36 @@ | ||
Repenser la structure de fgemm: | ||
* plus de template, moins de tests | ||
* templater DoubleDomain/FLoatDomain? | ||
* plus rapide avec des petites matrices | ||
* Meilleure strategie de calcul des parametres | ||
* Automatic tuning des thresholds Float/Double | ||
|
||
LUdivine | ||
* Automatic tuning des thresholds gauss/LUdivine | ||
* Plus de localite? | ||
|
||
TRSM/TRMM | ||
* Traitement automatique float/double depuis int | ||
* Securiser les bornes t_update: quand winograd intervient | ||
* remplacer BLAS-trsm par le code de reference de ATLAS | ||
|
||
FTRTRI/FTRTRM | ||
* generation automatique du code | ||
* traitement des cas de base (seuil > 1) | ||
|
||
Idee: | ||
1/ Pourquoi templater FFLAS? | ||
--> integration au sein de ATLAS (C et corps definitif) | ||
2/ ameliorer les cas terminaux de ftrsm ftrmm: copier les ATL_reftrsm sur double et float | ||
--> introduire un nouveau seuil dans trsm: celui ou on fait des boucles et pas de la recursivite | ||
2/ Conversion des le debut vers modular double/float (evite les conv multiples) | ||
3/ Implantations non template de fgemm, trsm, .... sur double | ||
4/ Compilation des noyaux | ||
|
||
A discuter en fonction du besoin d'un FFLAS generique | ||
|
||
|
||
Verifier la validite avec modular<int> (sage r�vele des det faux) | ||
|
||
Revoir la structure des bornes dans winograd: trop de reductions | ||
modulaires quand il y a des etapes de wino dans le corps fini. |
Oops, something went wrong.