On the Parallelization of Subproduct Tree Techniques Targeting Many-Core Architectures

  • Sardar Anisul Haque
  • Farnam Mansouri
  • Marc Moreno Maza
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8660)


We propose parallel algorithms for operations on univariate polynomials (multi-point evaluation, interpolation) based on subproduct tree techniques and targeting many-core GPUs. On those architectures, we demonstrate the importance of adaptive algorithms, in particular the combination of parallel plain arithmetic and parallel FFT-based arithmetic. Experimental results illustrate the benefits of our algorithms.


Arithmetic Operation Adaptive Algorithm Global Memory Polynomial System Polynomial Evaluation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Bernstein, D.J.: Fast multiplication and its applications. In: Buhler, J., Stevenhagen, P. (eds.) Algorithmic Number Theory: Lattices, Number Fields, Curves and Cryptography (2008)Google Scholar
  2. 2.
    Bostan, A., Schost, É.: Polynomial evaluation and interpolation on special sets of points. J. Complexity 21(4), 420–446 (2005)Google Scholar
  3. 3.
    Brent, R.P., Gaudry, P., Thomé, E., Zimmermann, P.: Faster multiplication in gf(2)[x]. In: van der Poorten, A.J., Stein, A. (eds.) ANTS-VIII 2008. LNCS, vol. 5011, pp. 153–166. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  4. 4.
    Dahan, X., Moreno Maza, M., Schost, É., Wu, W., Xie, Y.: Lifting techniques for triangular decompositions. In: Proceedings of the 2005 International Symposium on Symbolic and Algebraic Computation, ISSAC 2005, pp. 108–115. ACM, New York (2005)Google Scholar
  5. 5.
    Gathen, J., Gerhard, J.: Modern Computer Algebra. Cambridge University Press (1999)Google Scholar
  6. 6.
    Hanrot, G., Quercia, M., Zimmermann, P.: The middle product algorithm i. Appl. Algebra Eng., Commun. Comput. 14(6), 415–438 (2004)CrossRefzbMATHMathSciNetGoogle Scholar
  7. 7.
    Haque, S.A., Moreno Maza, M.: Plain polynomial arithmetic on GPU. In: J. of Physics: Conf. Series, vol. 385, IOP Publishing (2012)Google Scholar
  8. 8.
    Haque, S.A., Moreno Maza, M., Xie, N.: A many-core machine model for designing algorithms with minimum parallelism overheads. CoRR, abs/1402.0264 (2014)Google Scholar
  9. 9.
    Hart, W.B.: Fast Library for Number Theory: An Introduction. In: Fukuda, K., van der Hoeven, J., Joswig, M., Takayama, N. (eds.) ICMS 2010. LNCS, vol. 6327, pp. 88–91. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  10. 10.
    X. Li, M. Moreno Maza, R. Rasheed, and Éric Schost. The Modpn library: Bringing fast polynomial arithmetic into Maple. J. Symb. Comput., 46(7):841–858, July 2011.Google Scholar
  11. 11.
    Moreno Maza, M., Xie, Y.: Balanced dense polynomial multiplication on multi-cores. Int. J. Found. Comput. Sci. 22(5), 1035–1055 (2011)CrossRefzbMATHMathSciNetGoogle Scholar
  12. 12.
    Montgomery, P.L.: An FFT Extension of the Elliptic Curve Method of Factorization. PhD thesis, University of California Los Angeles, USA (1992)Google Scholar
  13. 13.
    Moreno Maza, M., Pan, W .: Fast polynomial arithmetic on a GPU. In: J. of Physics: Conference Series, vol. 256 (2010)Google Scholar
  14. 14.
    Moreno Maza, M., Pan, W.: Solving bivariate polynomial systems on a GPU. In: J. of Physics: Conference Series, vol. 341 (2011)Google Scholar
  15. 15.
    Murao, H., Fujise, T.: Towards an efficient implementation of a fast algorithm for multipoint polynomial evaluation and its parallel processing. In: Proc. of PASCO, pp. 24–30. ACM (1997)Google Scholar
  16. 16.
    Nickolls, J., Buck, I., Garland, M., Skadron, K.: Scalable parallel programming with CUDA. Queue 6(2), 40–53 (2008)CrossRefGoogle Scholar
  17. 17.
    Tanaka, S., Chou, T., Yang, B.-Y., Cheng, C.-M., Sakurai, K.: Efficient parallel evaluation of multivariate quadratic polynomials on GPUs. In: Lee, D.H., Yung, M. (eds.) WISA 2012. LNCS, vol. 7690, pp. 28–42. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  18. 18.
    Verschelde, J., Yoffe, G.: Evaluating polynomials in several variables and their derivatives on a GPU computing processor. In: Proc. of the 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum, IPDPSW 2012, pp. 1397–1405. IEEE Computer Society (2012)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Sardar Anisul Haque
    • 1
  • Farnam Mansouri
    • 1
  • Marc Moreno Maza
    • 1
  1. 1.University of Western OntarioLondonCanada

Personalised recommendations