MersenneNumberTesterTemplate made dependent on the calculation method to eliminate unnecessary branching.

This commit is contained in:
mlemanczyk committed 2025-12-19 20:01:45 +01:00
1 parent c9a421a1b4
commit c5c42b0c19
5 files changed
+631 -396

No files matched your search

@@ -13,7 +13,7 @@ public class MersenneNumberTesterTests
[InlineData(136_000_005UL)]
public void IsMersennePrime_detects_small_prime_divisors_for_large_exponents(ulong p)
{
var tester = new MersenneNumberTesterCpu();
var tester = new MersenneNumberTesterForIncrementalCalculationMethodForCpu();
var gpu = PrimeOrderCalculatorAccelerator.Rent(1);
try
{
@@ -29,7 +29,7 @@ public class MersenneNumberTesterTests
[InlineData(125UL)]
public void WarmUpOrdersCpu_populates_cache_without_affecting_results(ulong p)
{
var tester = new MersenneNumberTesterCpu(useOrderCache: true, useGpuOrder: true);
var tester = new MersenneNumberTesterForIncrementalCalculationMethodForCpu(useOrderCache: true, useGpuOrder: true);
tester.WarmUpOrders(p, 1_000UL);
var gpu = PrimeOrderCalculatorAccelerator.Rent(1);
try
@@ -46,7 +46,7 @@ public class MersenneNumberTesterTests
[InlineData(125UL)]
public void WarmUpOrdersGpu_populates_cache_without_affecting_results(ulong p)
{
var tester = new MersenneNumberTesterGpu(useOrderCache: true, useGpuOrder: true);
var tester = new MersenneNumberTesterForIncrementalCalculationMethodForGpu(useOrderCache: true, useGpuOrder: true);
tester.WarmUpOrders(p, 1_000UL);
var gpu = PrimeOrderCalculatorAccelerator.Rent(1);
try