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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Standard, RSA Cryptography: RSA Public Key Cryptography Standard# 1 v. 2.2. RSA Laboratories (2012)
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)
O’Neill, M.E.: The genuine sieve of Eratosthenes. Journal of Functional Programming 19(1), 95 (2009)
Atkin, A., Bernstein, D.: Prime sieves using binary quadratic forms. Mathematics of Computation 73(246), 1023–1030 (2004)
Aiyar, V.R.: Sundaram’s Sieve for Prime Numbers. The Mathematics Student 2(2), 73 (1934)
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)
Distributed prime sieve C++ implementation (git repository), https://github.com/carlosmccosta/Distributed-Prime-Sieve
Dagum, L., Menon, R.: OpenMP: an industry standard API for shared-memory programming. Computational Science & Engineering 5(1), 46–55 (1998)
Pritchard, P.: Explaining the wheel sieve. Acta Informatica 17(4), 477–485 (1982)
Primesieve, http://primesieve.org/
Pritchard, P.: Fast compact prime number sieves (among others). Journal of Algorithms 4(4), 332–344 (1983)
Járai, A., Vatai, E.: Cache optimized linear sieve. arXiv preprint arXiv:1111.3297 (2011)
Singleton, R.C.: An efficient prime number generator. Communications of the ACM 12, 563–564 (1969)
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)
Sorenson, J.: An analysis of two prime number sieves. In: Computer Sciences Department. University of Wisconsin-Madison (1991)
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)
Cordeiro, M.: Parallelization of the Sieve of Eratosthenes. In: Parallel Programming, Doctoral Program in Informatics Engineering, Engineering Faculty. University of Porto (2012)
Sorenson, J., Parberry, I.: Two Fast Parallel Prime Number Sieves. Information and Computation 114(1), 115–130 (1994)
Bokhari, S.H.: Multiprocessing the Sieve of Eratosthenes. Computer Journal 20(4), 50–58 (1987)
Anderson, G.: An Ada Multitasking Solution for the Sieve of Eratosthenes. Ada Lett. 8(5), 71–74 (1988)
Shapiro, E.: The family of concurrent logic programming languages. ACM Computing Surveys (CSUR) 21(3), 413–510 (1989)
Gropp, W., Lusk, E., Skjellum, A.: Using MPI: portable parallel programming with the message-passing interface, vol. 1. MIT press (1999)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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)