On the Virtues of Generic Programming for Symbolic Computation
- Cite this paper as:
- Li X., Maza M.M., Schost É. (2007) On the Virtues of Generic Programming for Symbolic Computation. In: Shi Y., van Albada G.D., Dongarra J., Sloot P.M.A. (eds) Computational Science – ICCS 2007. ICCS 2007. Lecture Notes in Computer Science, vol 4488. Springer, Berlin, Heidelberg
The purpose of this study is to measure the impact of C level code polynomial arithmetic on the performances of AXIOM high-level algorithms, such as polynomial factorization. More precisely, given a high-level AXIOMpackage P parametrized by a univariate polynomial domain U, we have compared the performances of P when applied to different U’s, including an AXIOM wrapper for our C level code.
Our experiments show that when P relies on U for its univariate polynomial computations, our specialized C level code can provide a significant speed-up. For instance, the improved implementation of square-free factorization in AXIOM is 7 times faster than the one in Maple and very close to the one in MAGMA. On the contrary, when P does not rely much on the operations of U and implements its private univariate polynomial operation, then P cannot benefit from our highly optimized C level code. Consequently, code which is poorly generic reduces the speed-up opportunities when applied to highly efficient and specialized
KeywordsGeneric programming fast arithmetic efficient implementation high performance polynomials
Unable to display preview. Download preview PDF.