Size: 1525
Comment:
|
Size: 2302
Comment:
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
=== People === * '''Martin Albrecht''' * Ciaran Mullan |
|
Line 39: | Line 44: |
'''1000 x 1000 revision 1''' | ==== 1000 x 1000 revision 1 ==== |
Line 50: | Line 55: |
==== 1000 x 1000 revision 2 ==== || n || M4rie mul || Magma mul || M4rie elim || Magma elim || || 2 || 0.06 || 0.02 || 0.04 || 0.05 || || 3 || 0.08 || 0.06 || 0.05 || 0.07 || || 4 || 0.08 || 0.11 || 0.06 || 0.08 || || 5 || 0.17 || 1.79 || 0.12 || 0.98 || || 6 || 0.21 || 1.82 || 0.15 || 0.98 || || 7 || 0.29 || 1.85 || 0.23 || 0.98 || || 8 || 0.43 || 2.51 || 0.37 || 1.29 || || 9 || 5.04 || 6.45 || 3.01 || 2.42 || || 10 || 11.95 || 6.45 || 8.11 || 2.39 || |
Linear algebra over small extensions of GF(2).
=== People ===
Martin Albrecht
- Ciaran Mullan
Library
The library is here: http://bitbucket.org/malb/m4rie
Get in contact with Martin Albrecht to get commit rights.
Sage Patch
A patch for Sage is here: https://bitbucket.org/malb/m4rie/downloads/m4rie_for_sage.patch
Todo
Implement simple functions in m4rie
Examples: stacking, augmenting, printing
Write C test code
Write C documentation
Implement methods of Sage class
Write documentation for Sage class
Improve performance of Travolta-Gaussian elimination
- use more than one table
Improve performance of Travolta multiplication
- get inspiration from M4RM
Implement Strassen multiplication
Preliminary Bench***market***ing
1000 x 1000 revision 1
n |
M4rie mul |
Magma mul |
M4rie elim |
Magma elim |
2 |
0.06 |
0.02 |
1.28 |
0.06 |
3 |
0.08 |
0.05 |
1.32 |
0.07 |
4 |
0.09 |
0.11 |
1.33 |
0.08 |
5 |
0.17 |
1.79 |
1.35 |
0.96 |
6 |
0.21 |
1.83 |
1.39 |
0.97 |
7 |
0.29 |
1.84 |
1.45 |
1.00 |
8 |
0.42 |
2.50 |
1.57 |
1.29 |
9 |
4.72 |
6.44 |
3.90 |
2.41 |
10 |
11.54 |
6.43 |
8.94 |
2.40 |
1000 x 1000 revision 2
n |
M4rie mul |
Magma mul |
M4rie elim |
Magma elim |
2 |
0.06 |
0.02 |
0.04 |
0.05 |
3 |
0.08 |
0.06 |
0.05 |
0.07 |
4 |
0.08 |
0.11 |
0.06 |
0.08 |
5 |
0.17 |
1.79 |
0.12 |
0.98 |
6 |
0.21 |
1.82 |
0.15 |
0.98 |
7 |
0.29 |
1.85 |
0.23 |
0.98 |
8 |
0.43 |
2.51 |
0.37 |
1.29 |
9 |
5.04 |
6.45 |
3.01 |
2.42 |
10 |
11.95 |
6.45 |
8.11 |
2.39 |