Date of Award
2010
Degree Type
Thesis
Degree Name
Master of Science
Program
Computer Science
Supervisor
Dr. Marc Moreno Maza
Abstract
In scientific computing, it is often required to evaluate a polynomial expression (or a matrix depending on some variables) at many points which are not known in advance or with coordinates containing “symbolic expressions”. In these circumstances, standard evaluation schemes, such as those based on Fast Fourier Transforms do not apply. Given a polynomial f expressed as the sum of its terms, we propose an algorithm which generates a representation of f optimizing the process of evaluating f at some points. In addition, this evaluation of f can be done efficiently in terms of data locality and parallelism. We have implemented our algorithm in the Cilk++ concurrency platform and our implementation achieves nearly linear speedup on 16 cores with large enough input. For some large polynomials, the generated schedule can be evaluated at least 10 times faster than the schedules produced by other available software solutions. Moreover, our code can handle much larger input polynomials.
Recommended Citation
Li, Liyun, "Efficient Evaluation of Large Polynomials" (2010). Digitized Theses. 4481.
https://ir.lib.uwo.ca/digitizedtheses/4481