Skip to main content

Distributed Prime Sieve in Heterogeneous Computer Clusters

  • Conference paper
  • 2849 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 8582))

Abstract

Prime numbers play a pivotal role in current encryption algorithms and given the rise of cloud computing, the need for larger primes has never been so high. This increase in available computation power can be used to either try to break the encryption or to strength it by finding larger prime numbers. With this in mind, this paper provides an analysis of different sieve implementations that can be used to generate primes to near 264. It starts by analyzing cache friendly sequential sieves with wheel factorization, then expands to multi-core architectures and ends with a cache friendly segmented hybrid implementation of a distributed prime sieve, designed to efficiently use all the available computation resources of heterogeneous computer clusters with variable workload and to scale very well in both the shared and distributed memory versions.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Standard, RSA Cryptography: RSA Public Key Cryptography Standard# 1 v. 2.2. RSA Laboratories (2012)

    Google Scholar 

  2. Lenstra Jr., H.W.: Primality testing algorithms (after Adleman, Rumely and Williams). In: Sminaire Bourbaki, vol. 1980/81 Exposs 561578, pp. 243–257. Springer, Heidelberg (1981)

    Google Scholar 

  3. O’Neill, M.E.: The genuine sieve of Eratosthenes. Journal of Functional Programming 19(1), 95 (2009)

    Article  MATH  Google Scholar 

  4. Atkin, A., Bernstein, D.: Prime sieves using binary quadratic forms. Mathematics of Computation 73(246), 1023–1030 (2004)

    Article  MATH  MathSciNet  Google Scholar 

  5. Aiyar, V.R.: Sundaram’s Sieve for Prime Numbers. The Mathematics Student 2(2), 73 (1934)

    Google Scholar 

  6. Joye, M., Paillier, P., Vaudenay, S.: Efficient generation of prime numbers. In: Paar, C., Koç, Ç.K. (eds.) CHES 2000. LNCS, vol. 1965, pp. 340–354. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  7. Distributed prime sieve C++ implementation (git repository), https://github.com/carlosmccosta/Distributed-Prime-Sieve

  8. Dagum, L., Menon, R.: OpenMP: an industry standard API for shared-memory programming. Computational Science & Engineering 5(1), 46–55 (1998)

    Article  Google Scholar 

  9. Pritchard, P.: Explaining the wheel sieve. Acta Informatica 17(4), 477–485 (1982)

    Article  MATH  MathSciNet  Google Scholar 

  10. Primesieve, http://primesieve.org/

  11. Pritchard, P.: Fast compact prime number sieves (among others). Journal of Algorithms 4(4), 332–344 (1983)

    Article  MATH  MathSciNet  Google Scholar 

  12. Járai, A., Vatai, E.: Cache optimized linear sieve. arXiv preprint arXiv:1111.3297 (2011)

    Google Scholar 

  13. Singleton, R.C.: An efficient prime number generator. Communications of the ACM 12, 563–564 (1969)

    Article  Google Scholar 

  14. Paillard, G. A. L.: A Fully Distributed Prime Numbers Generation using the Wheel Sieve. In: Parallel and Distributed Computing and Networks, pp. 651–656 (2005)

    Google Scholar 

  15. Sorenson, J.: An analysis of two prime number sieves. In: Computer Sciences Department. University of Wisconsin-Madison (1991)

    Google Scholar 

  16. David, J.W.: Parallel Prime Sieve: Finding Prime Numbers. In.: Parallel Computing Seminar Report, Institute of Information & Mathematical Sciences, Massey University at Albany, Auckland, New Zealand (2009)

    Google Scholar 

  17. Cordeiro, M.: Parallelization of the Sieve of Eratosthenes. In: Parallel Programming, Doctoral Program in Informatics Engineering, Engineering Faculty. University of Porto (2012)

    Google Scholar 

  18. Sorenson, J., Parberry, I.: Two Fast Parallel Prime Number Sieves. Information and Computation 114(1), 115–130 (1994)

    Article  MATH  MathSciNet  Google Scholar 

  19. Bokhari, S.H.: Multiprocessing the Sieve of Eratosthenes. Computer Journal 20(4), 50–58 (1987)

    Article  Google Scholar 

  20. Anderson, G.: An Ada Multitasking Solution for the Sieve of Eratosthenes. Ada Lett. 8(5), 71–74 (1988)

    Article  Google Scholar 

  21. Shapiro, E.: The family of concurrent logic programming languages. ACM Computing Surveys (CSUR) 21(3), 413–510 (1989)

    Article  Google Scholar 

  22. Gropp, W., Lusk, E., Skjellum, A.: Using MPI: portable parallel programming with the message-passing interface, vol. 1. MIT press (1999)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Costa, C.M., Sampaio, A.M., Barbosa, J.G. (2014). Distributed Prime Sieve in Heterogeneous Computer Clusters. In: Murgante, B., et al. Computational Science and Its Applications – ICCSA 2014. ICCSA 2014. Lecture Notes in Computer Science, vol 8582. Springer, Cham. https://doi.org/10.1007/978-3-319-09147-1_43

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-09147-1_43

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-09146-4

  • Online ISBN: 978-3-319-09147-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics