Commit Graph
347 Commits
Author SHA1 Message Date
Marek Lemańczyk c697a7e127 Throw when divisor cycle resolution fails 2025-10-23 01:48:11 +02:00
Marek Lemańczyk ff9b0122c0 Restore hit clearing when divisor cycle is missing 2025-10-23 01:48:06 +02:00
Marek Lemańczyk f0b4cdf6e2 Avoid redundant clearing in CPU divisor sessions 2025-10-23 01:48:02 +02:00
Marek Lemańczyk f672ff520c Avoid redundant compaction buffer clearing on GPU 2025-10-23 01:16:58 +02:00
Marek Lemańczyk dda53581c0 Merge pull request #225 from mlemanczyk/codex/analyze-evenperfectbitscanner-for-gpu-optimization
Add GPU candidate generation for divisor scanning
2025-10-23 00:52:59 +02:00
Marek Lemańczyk ea01585892 Convert divisor session results to hits on the GPU 2025-10-23 00:34:17 +02:00
Marek Lemańczyk faab60c2cd Reduce host hit detection overhead 2025-10-22 23:51:19 +02:00
Marek Lemańczyk 4d9158e8f3 Make GPU mask compaction branchless with shared staging 2025-10-22 22:01:39 +02:00
Marek Lemańczyk ea0770a84a Clarify stream kernel bounds assumptions 2025-10-22 21:41:51 +02:00
Marek Lemańczyk 586eb8d303 Document hot-path guards in GPU mask compaction helpers 2025-10-22 18:48:03 +02:00
Marek Lemańczyk add62df697 Compact GPU divisor masks on device 2025-10-22 18:47:55 +02:00
Marek Lemańczyk bae39ad95e Capture GPU next start for divisor batches 2025-10-22 06:43:05 +02:00
Marek Lemańczyk 5b973fb513 Document and streamline GPU candidate kernel guards 2025-10-22 06:43:00 +02:00
Marek Lemańczyk 4d8ea9dccd Use GpuUInt128 in GPU divisor candidate generation 2025-10-22 06:05:22 +02:00
Marek Lemańczyk 6c3efb90c9 Merge pull request #222 from mlemanczyk/codex/refactor-primetester.isprimegpu-for-branch-less-execution
Clarify GPU sieve invariants and trim defensive guards
2025-10-22 05:24:57 +02:00
Marek Lemańczyk bfc5712d81 Add GPU kernel for divisor candidate generation 2025-10-22 05:24:01 +02:00
Marek Lemańczyk 00341fbb8c Simplify GPU by-divisor configuration guards 2025-10-22 03:49:04 +02:00
mlemanczyk 43cd067e09 Formatting 2025-10-22 01:47:40 +02:00
Marek Lemańczyk 24eaec7a21 Refine Montgomery GPU helpers to avoid kernel branching 2025-10-22 01:43:10 +02:00
Marek Lemańczyk f12919e220 Split Pow2 Montgomery GPU kernels by Montgomery conversion 2025-10-22 01:43:02 +02:00
Marek Lemańczyk b08175dadf Simplify Pow2Montgomery GPU executor branching 2025-10-22 01:17:35 +02:00
Marek Lemańczyk f2070a0f64 Document CPU sieve invariants and cache boolean guards 2025-10-22 00:56:17 +02:00
mlemanczyk 865a88fac0 Switched to GPU for prime testing 2025-10-22 00:40:30 +02:00
Marek Lemańczyk fa6f75c158 Document GPU sieve invariants 2025-10-22 00:38:51 +02:00
Marek Lemańczyk 3e7606025d Add dedicated GPU context pool for PrimeTester 2025-10-21 22:34:30 +02:00
Marek Lemańczyk 3afd9399db Isolate residue GPU leases and drop try/finally 2025-10-21 22:01:50 +02:00
mlemanczyk 40ba538587 Switched to range operator from Slice, where applicable. 2025-10-21 21:28:55 +02:00
Marek Lemańczyk 819cb7b00b Guard residue GPU scanning with execution lock 2025-10-21 21:26:53 +02:00
Marek Lemańczyk 5dd9eb636d Inline GPU divisor locking adjustments 2025-10-21 21:19:57 +02:00
Marek Lemańczyk 9bcf1bd9a1 Merge pull request #218 from mlemanczyk/codex/analyze-mersenne=bydivisor-path-for-tracking-remainder-bbul2g
Reuse stack spans across divisor processing loops
2025-10-21 20:54:45 +02:00
Marek Lemańczyk a226ae10cb Stop clearing pooled buffers inside rent helpers 2025-10-21 20:52:21 +02:00
Marek Lemańczyk 7baf3b619f Simplify exception guards in CPU remainder paths 2025-10-21 20:52:14 +02:00
Marek Lemańczyk 6adf78faf6 Streamline CPU remainder buffers 2025-10-21 20:52:09 +02:00
Marek Lemańczyk b418d79fb3 Adopt fixed stack capacities for CPU prime order helpers 2025-10-21 19:46:59 +02:00
Marek Lemańczyk c15405e3b1 Reuse stack buffers when lowering divisor exponents 2025-10-21 18:22:56 +02:00
mlemanczyk 31a0b8d706 Added static IsPrimeGpu 2025-10-21 04:09:26 +02:00
mlemanczyk ea11db6d0f Restored the Dictionary parameter instead of arrays 2025-10-21 04:08:48 +02:00
mlemanczyk 8dc7751084 Switched back to PrimeTester.IsPrimeInternal for teseting 2025-10-21 04:07:49 +02:00
Marek Lemańczyk 8acccce471 Add cycle cache hit tracking instrumentation 2025-10-20 19:28:06 +02:00
Marek Lemańczyk 1a4818c794 Add diagnostics for removed factorization cache 2025-10-20 19:22:02 +02:00
Marek Lemańczyk 28ff9292b8 Remove per-thread factorization cache 2025-10-20 19:08:44 +02:00
Marek Lemańczyk 20f30dc182 Merge pull request #215 from mlemanczyk/codex/analyze-cpu-paths-in-evenperfectbitscanner
Adjust CPU pow2 Montgomery helper for small divisors
2025-10-20 18:41:38 +02:00
Marek Lemańczyk 33f9b51593 Clarify residue stepper usage and update TODO tracker 2025-10-20 18:37:35 +02:00
Marek Lemańczyk da6ea25729 Address windowed pow2 review feedback 2025-10-20 18:37:29 +02:00
Marek Lemańczyk 481d1010e8 Retire outdated windowed pow2 TODOs 2025-10-20 18:37:21 +02:00
Marek Lemańczyk 360a31bd54 Align Lucas-Lehmer GPU helpers with windowed pow2 guidance 2025-10-20 18:37:15 +02:00
Marek Lemańczyk 82e44e3f3f Confirm windowed pow2 usage across GPU kernels 2025-10-20 18:37:08 +02:00
Marek Lemańczyk 7cbc27d6c3 Use adaptive pow2 stepping in residue stepper 2025-10-20 18:36:58 +02:00
Marek Lemańczyk 4831fc84d1 Clean up resolved windowed pow2 TODOs on CPU paths 2025-10-20 18:36:51 +02:00
Marek Lemańczyk 798ae455b1 Adjust CPU Pow2 Montgomery helper for small divisors 2025-10-20 17:03:36 +02:00