Dramatic improvements have been made to the efficiency of polynomial arithmetic in Maple over the past few releases. Improvements have been made in:
Multiplication and powering (expand, Expand mod n, Power mod n)
Exact division (divide, Divide mod n)
Factoring (factor, Factor mod n)
Univariate and multivariate polynomials with integer coefficients
Dense and sparse polynomials
Improvements have been achieved through a combination of a new internal polynomial data structure, fast algorithms, and the use of multithreading
and cache locality. Together, these enhancements have lead to typical speedup factors of 10 to 100 or more, both compared to earlier Maple releases
and to the latest release of Mathematica®. In addition, the memory usage of many of these tasks has also been reduced considerably.
Univariate multiplication, dense, degree = 10000
Maple 13: 4.4s
Maple 14: 1.8s
Maple 15: 0.056s
Mathematica 8: 140s
Speedup:
Maple 15/Maple 14:
32 times faster
Maple 15/Mathematica 8: 2500 times faster
Powering, dense, univariate, (degree 100)100
Maple 13: 47s
Maple 14: 5.2s
Maple 15: 0.3s
Mathematica 8: 79s
Speedup:
Maple 15/Maple 14:
17 times faster
Maple 15/Mathematica 8: 260 times faster
Powering, dense, 3 variables, (degree 2)50
Maple 13: 6.5s
Maple 14: 0.61s
Maple 15: 0.13s
Mathematica 8: 64s