|
Size: 1869
Comment: change website; page from 2008
|
← Revision 11 as of 2017-03-21 20:38:07 ⇥
Size: 0
Comment: see [[spkg]]
|
| Deletions are marked like this. | Additions are marked like this. |
| Line 1: | Line 1: |
| = Description = From the Givaro website: "In the joint CNRS-INRIA / INPG-UJF project APACHE, Givaro is a C++ library for arithmetic and algebraic computations. Its main features are implementations of the basic arithmetic of many mathematical entities: Primes fields, Extensions Fields, Finite Fields, Finite Rings, Polynomials, Algebraic numbers, Arbitrary precision integers and rationals (C++ wrappers over gmp) It also provides data-structures and templated classes for the manipulation of basic algebraic objects, such as vectors, matrices (dense, sparse, structured), univariate polynomials (and therefore recursive multivariate). It contains different program modules and is fully compatible with the [[LinBox]] linear algebra library and the Athapascan environment, which permits parallel programming." = Website = http://givaro.forge.imag.fr/ = Integration into SAGE = `GivaroGFq` is the default implementation for finite extension fields of order $\leq 2^{16}$. = Examples and Performance = On [[http://sage.math.washington.edu|sage.math]] and with SAGE 2.5.1 we get the following timings: {{{#!python sage: k.<a> = GF(2^8) sage: type(k) <type 'sage.rings.finite_field_givaro.FiniteField_givaro'> sage: e = a^10 sage: f = a^20 # extract the loop time sage: time for i in xrange(10^6): _ = e CPU times: user 0.24 s, sys: 0.03 s, total: 0.27 s Wall time: 0.27 # the actual task sage: time for i in xrange(10^6): _ = e*f CPU times: user 0.64 s, sys: 0.00 s, total: 0.64 s Wall time: 0.63 }}} To put this in perspective, the same task in MAGMA 2.13-5 on the same machine: {{{ > k<a> := FiniteField(2^8); > e := a^10; > f := a^20; > t:= Cputime(); > for i in [1..1000000] do; r := e; end for; > Cputime(t); 0.190 > t:= Cputime(); > for i in [1..1000000] do; r := e*f; end for; > Cputime(t); 0.280 }}} |
