Description
This project consists in the creation of a set
of routines, giving similar tools as the set of
classical Basic Linear Algebra
Subroutines(matrix multiplication,
triangular system solve...), but working over
finite fields. In the same way, some
other routines of higher level (such as the one
in LAPACK) are also produced (LQUP
factorization, Rank Det computation,
Characteristic and minimal polynomial
computation...).
The goal is to reach performances as close as possible
to those of classical BLAS over double
or
float
.
At this date, the work is split into two groups:
- FFLAS (a BLAS interface for finite fields)
- FFPACK (a higher level set of
routines based on triangularizations)
Here are two examples of the performances attained
by our package (speed is in Mffops = Millions of
Finite Field operations per second):
Package
|
Exemple
|
Matrices Size
|
Field
|
Time
|
Speed
|
Processor
|
FFLAS |
Multiplication of two
dense matrices |
4000*4000 |
Z101 |
30.11 seconds |
4251.08 Mffops |
Pentium4-2.4 GHz |
FFPACK |
LQUP factorization |
7500*7500 |
Z101 |
103.00 seconds |
2733.00 Mffops |
Pentium4-2.4 GHz |