Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: A different take on finding primes

1 view
Skip to first unread message

Dave Angel

unread,
Nov 15, 2009, 1:22:14 AM11/15/09
to Vincent Davis, pytho...@python.org
Vincent Davis wrote:
> Out of pure curiosity I would like to compare the efficiency of different
> methods of finding primes (need not be consecutive). Let me be clear, given
> 2min, how many primes can you find, they need not be in order or
> consecutive. I have not seen any examples of this. I am assume the solution
> is different depending on the time give, 2min or 2 hours. I assume a sieve
> solution would be best for larger times. When the numbers get really large
> checking to see if they are a prime gets costly.
> So what do you think?
>
> *Vincent Davis
> 720-301-3003 *
> vin...@vincentdavis.net
> my blog <http://vincentdavis.net> |
> LinkedIn<http://www.linkedin.com/in/vincentdavis>
>
>
The sieve can be very efficiently written, but you have to decide
whether to optimize for memory size or for speed. At a minimum for size
you need an object for each prime currently found, and you will be
looking through that list for each new candidate. Incidentally this
approach can be done without any division. If you have memory to burn,
you make a bit array equal in size to the largest prime you expect to
encounter.

There are also good algorithms for deciding whether a number of a
particular form is prime. For example, there's a test for numbers of
the form 2**n + 1.

And don't forget the Miller-Rabin test.

DaveA

Tobiah

unread,
Nov 16, 2009, 1:21:08 PM11/16/09
to

>> Let me
>> be clear, given 2min, how many primes can you find, they need not be in
>> order or consecutive.

Do they have to go from low to high? :( )

Nigel Rowe

unread,
Nov 17, 2009, 8:33:24 PM11/17/09
to
On Tue, 17 Nov 2009 05:21, Tobiah wrote in comp.lang.python
<<oKgMm.17283$ET3....@newsfe17.iad>>:

1) google list of prime numbers
2) see "Prime numbers list" in the results (number 3 in the results)
3) click link that leads to www.prime-numbers.org

I found 455042511 prime numbers in approx 15 seconds.

Is that what you wanted?

--
Nigel Rowe
A pox upon the spammers that make me write my address like..
rho (snail) fisheggs (stop) name

Anh Hai Trinh

unread,
Nov 18, 2009, 4:55:24 AM11/18/09
to
> 1) google list of prime numbers
> 2) see "Prime numbers list" in the results (number 3 in the results)
> 3) click link that leads towww.prime-numbers.org
>
> I found 455042511 prime numbers in approx 15 seconds.

Not bad at all. How about using http://www.sagemath.org/ (written in
Python).

sage: time primes_first_n(10^7);
CPU times: user 4.36 s, sys: 2.43 s, total: 6.79 s
Wall time: 6.88 s

That used 3G of RAM, you could certainly go higher if you have more
memory.

----aht

0 new messages