#10532: Faster multiplication for multivariate power series
-----------------------------------+----------------------------------------
Reporter: niles | Owner: malb
Type: enhancement | Status: needs_info
Priority: major | Milestone:
Component: commutative algebra | Keywords: multivariate power series
multiplication Karatsuba
Author: pernici | Upstream: N/A
Reviewer: Niles Johnson | Merged:
Work_issues: |
-----------------------------------+----------------------------------------
Comment(by pernici):
The attached patch trac_1956_faster_MPowerSeries_mul2.patch
is applied after
trac_1956_multi_power_series_new_4.patch,
trac_1956_uni_multi_ps_2.patch,
trac_1956_multi_ps_cleanup.patch
For multivariate series Karatsuba multiplication is slower than generic
multiplication also in the case of `prec=infinity`
{{{
sage: R.<x,y,z,w> = QQ[[]]
sage: p = 1 + x/2 + y/3 + z/4
sage: %timeit p^20
times in ms; K=K_threshold
p^5 p^10 p^20 p^40
generic 0.31 1.62 28.5 1070
Karatsuba K=8 0.56 5.7 172 1900
Karatsuba K=64 0.56 5.7 167 1080
}}}
The attached patch uses generic multiplication for any precision;
it has been made independent from ticket #10480, which deals mainly
with the truncated Karatsuba multiplication, which is fast only
for univariate series.
`_mul_trunc_generic`, coming from do_trunc_classical by lftabera,
has a lot of code in common with `_mul_generic` and maybe it should be
merged
with it; also, it would be nice to do the `_square_generic` optimization
for finite `prec`.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10532#comment:6>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.