Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-05 Thread Paul Sandoz
On Sep 5, 2013, at 7:02 AM, Alan Eliasen elia...@mindspring.com wrote: On 09/04/2013 05:26 PM, Brian Burkhalter wrote: I have updated the webrev http://cr.openjdk.java.net/~bpb/7189139/ to add the two-parameter version of isProbablePrime() which was discussed. Naturally a CCC request

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-05 Thread Brian Burkhalter
On Sep 5, 2013, at 7:50 AM, Paul Sandoz wrote: The change to pass in the random number generator appears fine. There's probably no need for a strong random number generator in this case, though. If that is the case why not just leave the method as is and replace SecureRandom with

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-04 Thread Brian Burkhalter
On Sep 3, 2013, at 5:11 PM, Brian Burkhalter wrote: On Sep 3, 2013, at 5:09 PM, Doug Lea wrote: Only adding isProbablePrime seems to be an OK conservative move: no existing usages would be affected, but users would need to somehow be told that they could improve performance by changing

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-04 Thread Joe Darcy
Hello, I don't think the specification of the new method is acceptable in its current form. At a minimum, some guidance should be provided on the properties the supplied random number generator should have to work with the primality tests that are being used. (Offhand, I don't know what

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-04 Thread Alan Eliasen
On 09/04/2013 05:26 PM, Brian Burkhalter wrote: I have updated the webrev http://cr.openjdk.java.net/~bpb/7189139/ to add the two-parameter version of isProbablePrime() which was discussed. Naturally a CCC request would be needed in the event this were to go forward. The change to

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-03 Thread Paul Sandoz
On Sep 3, 2013, at 7:14 AM, Bradford Wetmore bradford.wetm...@oracle.com wrote: Bill also wrote in that email: add the following method to BigInteger public boolean isProbablePrime(int certainty, Random end) , which allows primality testing with arbitrary Random objects. In many cases,

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-03 Thread Brian Burkhalter
So it looks like there are two decisions to be made on this topic: On Sep 3, 2013, at 1:21 AM, Paul Sandoz wrote: add the following method to BigInteger public boolean isProbablePrime(int certainty, Random end) , which allows primality testing with arbitrary Random objects. In many cases,

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-03 Thread Doug Lea
On 09/03/2013 03:06 PM, Brian Burkhalter wrote: So it looks like there are two decisions to be made on this topic: On Sep 3, 2013, at 1:21 AM, Paul Sandoz wrote: add the following method to BigInteger public boolean isProbablePrime(int certainty, Random end) , which allows primality testing

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-03 Thread Brian Burkhalter
On Sep 3, 2013, at 4:46 PM, Doug Lea wrote: I assume you mean to change line 898: if (rnd == null) { rnd = ThreadLocalRandom.current();; // was: getSecureRandom(); } Yes. This seems fine in terms of sufficient RNG quality and better performance. Also in terns of

Re: Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-03 Thread Doug Lea
On 09/03/2013 07:52 PM, Brian Burkhalter wrote: On Sep 3, 2013, at 4:46 PM, Doug Lea wrote: I assume you mean to change line 898: if (rnd == null) { rnd = ThreadLocalRandom.current();; // was: getSecureRandom(); } Yes. This seems fine in terms of sufficient RNG

Various Random things (Was: Java 8 RFC 7189139: BigInteger's staticRandom field can be a source of bottlenecks)

2013-09-02 Thread Bradford Wetmore
Sorry, I haven't been following the Random discussions until now, I haven't been subscribed to core-lib-dev in a while. I was specifically asked to comment on Brian's proposed change. Paul pointed out something Bill Pugh wrote: Right, see here: