Clarify residue stepper usage and update TODO tracker
This commit is contained in:
1 parent
da6ea25729
commit
33f9b51593
3 files changed
+3
-20
No files matched your search
@@ -26,7 +26,7 @@ public class MersenneNumberResidueGpuTester(bool useGpuOrder)
|
||||
UInt128 kStart = 1UL;
|
||||
UInt128 limit = maxK + UInt128.One;
|
||||
byte last = lastIsSeven ? (byte)1 : (byte)0;
|
||||
var kernel = gpuLease.Pow2ModKernel; // Pow2ModKernel already executes the windowed pow2 ladder from GpuPow2ModBenchmarks.
|
||||
var kernel = gpuLease.Pow2ModKernel;
|
||||
twoP.Mod10_8_5_3(out ulong step10, out ulong step8, out ulong step5, out ulong step3);
|
||||
step10 = step10.Mod10();
|
||||
|
||||
|
||||
@@ -18,6 +18,8 @@ public class MersenneResidueStepper
|
||||
p = p0;
|
||||
|
||||
// Inputs are already reduced in production; keep the old modulo guard commented for debugging reference.
|
||||
// TODO: Confirm whether GPU execution ever constructs this stepper; if so, split the CPU/GPU initialization so
|
||||
// the accelerator path retains the modulo reductions that prevent divergence.
|
||||
// M_mod = M_mod_m_at_p0 % m;
|
||||
// pow2_mod = (M_mod + 1) % m;
|
||||
M_mod = M_mod_m_at_p0;
|
||||
|
||||
Reference in new issue
Block a user