Switched to .IsPrime which performed best in benchmarks.

This commit is contained in:
mlemanczyk committed 2025-10-26 04:05:00 +01:00
1 parent 6e632ba03a
commit 1ed5afe689
2 files changed
+13 -7

No files matched your search

@@ -1122,8 +1122,9 @@ internal static partial class PrimeOrderCalculator
// continue;
// }
bool isPrime = primeTester.HeuristicIsPrimeGpu(composite);
// bool isPrime = primeTester.HeuristicIsPrimeGpu(composite);
// bool isPrime = PrimeTester.IsPrimeInternal(composite, CancellationToken.None);
bool isPrime = PrimeTester.LegacyIsPrimeInternal(composite, CancellationToken.None);
// bool isPrime = Open.Numeric.Primes.Prime.Numbers.IsPrime(composite);
if (isPrime)
@@ -1184,8 +1185,9 @@ internal static partial class PrimeOrderCalculator
if (!entry.HasKnownPrimality)
{
bool isPrime = primeTester.HeuristicIsPrimeGpu(composite);
// bool isPrime = primeTester.HeuristicIsPrimeGpu(composite);
// bool isPrime = PrimeTester.IsPrimeInternal(composite, CancellationToken.None);
bool isPrime = PrimeTester.LegacyIsPrimeInternal(composite, CancellationToken.None);
// bool isPrime = Open.Numeric.Primes.Prime.Numbers.IsPrime(composite);
entry = entry.WithPrimality(isPrime);
@@ -1216,8 +1218,9 @@ internal static partial class PrimeOrderCalculator
}
else
{
cofactorIsPrime = primeTester.HeuristicIsPrimeGpu(cofactor);
// cofactorIsPrime = primeTester.HeuristicIsPrimeGpu(cofactor);
// cofactorIsPrime = PrimeTester.IsPrimeInternal(cofactor, CancellationToken.None);
cofactorIsPrime = PrimeTester.LegacyIsPrimeInternal(cofactor, CancellationToken.None);
// cofactorIsPrime = Open.Numeric.Primes.Prime.Numbers.IsPrime(cofactor);
}
@@ -1748,8 +1751,9 @@ internal static partial class PrimeOrderCalculator
PrimeTester primeTester = PrimeTester.Exclusive;
bool isPrime = primeTester.HeuristicIsPrimeGpu(value);
// bool isPrime = primeTester.HeuristicIsPrimeGpu(value);
// bool isPrime = PrimeTester.IsPrimeInternal(value, CancellationToken.None);
bool isPrime = PrimeTester.LegacyIsPrimeInternal(value, CancellationToken.None);
// bool isPrime = Open.Numeric.Primes.Prime.Numbers.IsPrime(value);
if (!knownComposite && isPrime)
{
@@ -1760,8 +1764,9 @@ internal static partial class PrimeOrderCalculator
ulong factor = PollardRhoStrict(value);
ulong quotient = value / factor;
isPrime = primeTester.HeuristicIsPrimeGpu(factor);
// isPrime = primeTester.HeuristicIsPrimeGpu(factor);
// isPrime = PrimeTester.IsPrimeInternal(factor, CancellationToken.None);
isPrime = PrimeTester.LegacyIsPrimeInternal(factor, CancellationToken.None);
// isPrime = Open.Numeric.Primes.Prime.Numbers.IsPrime(factor);
if (isPrime)
{
@@ -1791,8 +1796,9 @@ internal static partial class PrimeOrderCalculator
}
else
{
isPrime = primeTester.HeuristicIsPrimeGpu(quotient);
// isPrime = primeTester.HeuristicIsPrimeGpu(quotient);
// isPrime = PrimeTester.IsPrimeInternal(quotient, CancellationToken.None);
isPrime = PrimeTester.LegacyIsPrimeInternal(quotient, CancellationToken.None);
// isPrime = Open.Numeric.Primes.Prime.Numbers.IsPrime(quotient);
}