Cluster Computing

, Volume 10, Issue 2, pp 167–174

# The performance of synchronous parallel polynomial root extraction on a ring multicomputer

Article

## Abstract

In this paper, a parallel algorithm for computing the roots of a given polynomial of degree n on a ring of processors is proposed. The algorithm implements Durand–Kerner’s method and consists of two phases: initialisation, and iteration. In the initialisation phase all the necessary preparation steps are realised to start the parallel computation. It includes register initialisation and initial approximation of roots requiring 3n−2 communications, 2 exponentiation, one multiplications, 6 divisions, and 4n−3 additions. In the iteration phase, these initial approximated roots are corrected repeatedly and converge to their accurate values. The iteration phase is composed of some iteration steps, each consisting of 3n communications, 4n+3 additions, 3n+1 multiplications, and one division.

### Keywords

Parallel algorithms Polynomial root extraction Iterative techniques Ring architecture Durand–Kerner method

## Preview

### References

1. 1.
Cosnard, M., Fraigniaud, P.: Analysis of asynchronous polynomial root finding methods on a distributed memory multicomputer. IEEE Trans. Parallel Distributed Syst. 5: 639–648 (1994)
2. 2.
Couturier, R., Canalda, P., Spies, F.: Iterative algorithms on network computing: parallel polynomial root extracting. In: Proceedings of IEEE HiPC 2002, 10–12 Dec. 2002, India. LNCS 2552, pp. 283–291 Google Scholar
3. 3.
Eager, D.L., Zahorjan, J., Lazowska, E.D.: Speed versus efficiency in parallel systems. IEEE Trans. Comput. 38: 408–423 (1989)
4. 4.
Oberman, S.: Design issues in high performance floating point arithmetic units. PhD thesis, Stanford Univ. (Nov. 1996) Google Scholar
5. 5.
Zhong, L.: Modular exponentiation algorithm analysis for energy consumption and performance, Technical Report CE-01-ZJL, Department of Electrical Engineering, Princeton University, USA, 2000 Google Scholar
6. 6.
Sarbazi-Azad, H., Ould-Khaoua, M., Mackenzie, L., Akl, S.G.: A parallel algorithm for Lagrange interpolation on the star graph. J. Parallel Distributed Comput. 62: 605–621 (2002)
7. 7.
Sarbazi-Azad, H.: Parallel polynomial root extraction on a ring of processors. In: Proceedings IEEE IPDPS PMEO-PDS Workshop, 12–15 April 2005, USA, p. 555 Google Scholar
8. 8.
Duato, J., Yalamanchili, R., Ni, L.: Interconnection Networks: An Engineering Approach. Morgan Kaufmann, San Francisco (2003) Google Scholar
9. 9.
Aberth, O.: Iteration methods for finding all zeros of a polynomial simultaneously. Math. Comp. 27: 339–344 (1973)
10. 10.
Alt, R.: Computing roots of polynomials on vector processing machines. Appl. Numer. Math. 1(4), 299–308 (1985)
11. 11.
Atanassova, L., Makrelov, I.: Individual and simultaneous determination of the zeros of algebraic polynomials. USSR Comput. Math. Math. Phys. 31(9), 104–107 (1992)
12. 12.
Cosnard, M., Fraigniaud, P.: Finding the roots of a polynomial on an MIMD multicomputer. Parallel Comput. 15, 75–86 (1990)
13. 13.
Freeman, T.L., Bane, M.K.: Asynchronous polynomial zero-finding algorithms. Parallel Comput. 17, 673–681 (1991)
14. 14.
Guggenheimer, H.: Initial approximations in Durand–Kerner’s root finding method. BIT 26, 537–539 (1986)
15. 15.
Hopkins, M.: On a method of Weierstrass for the simultaneous calculation of the roots of a polynomial. Z. Angew. Math. Mech. 74, 295–306 (1994)
16. 16.
Ben-Or, M., Feig, E., Kozen, D., Tiwari, P.: (1986) A fast parallel algorithm for determining all roots of a polynomial with real roots. In: Proceedings of ACM SAC’86, 1986, pp. 340–349 Google Scholar