Commit Graph
216 Commits
Author SHA1 Message Date
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
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 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
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 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 de8e769f48 Switch GpuUInt128 internals to in-place shifts 2025-10-20 13:58:16 +02:00
Marek Lemańczyk 50d2e462d7 Use in-place shifts in GpuUInt128.MulMod 2025-10-20 13:58:10 +02:00
Marek Lemańczyk d0c9389bcc Document GpuUInt128 MulMod shift benchmarking 2025-10-20 13:58:04 +02:00
Marek Lemańczyk 1809ba95b3 Inline GpuUInt128 Mul64 helper 2025-10-20 13:30:34 +02:00
Marek Lemańczyk 79e8706644 Restore original guard comments in pow2 helpers 2025-10-19 20:21:09 +02:00
Marek Lemańczyk 8adeb59acc Fix kernel integration compile errors 2025-10-18 18:01:52 +02:00
Marek Lemańczyk 6217ea7888 Document GPU kernel audit progress 2025-10-18 17:42:33 +02:00
mlemanczyk e5d57364b5 GPU limit restored. GpuKernelLease will now return to the pool during Dispose 2025-10-17 08:49:22 +02:00
Marek Lemańczyk 964e748498 Pool GPU kernel leases for reuse 2025-10-17 07:04:11 +02:00
mlemanczyk fddec17b3f Various try-out changes 2025-10-17 06:53:54 +02:00
Marek Lemańczyk 67ad36420a Add GPU kernel for small prime factoring 2025-10-17 05:31:07 +02:00
mlemanczyk 56e413064a Using cleanup 2025-10-17 02:40:51 +02:00
mlemanczyk d3695a3dc3 Pools made thread static. Various small optimizations. "in" parameter added to read-only method parameters 2025-10-15 02:17:13 +02:00
Marek Lemańczyk c9ae56a5ec Remove default prime order overloads 2025-10-10 21:51:41 +02:00
Marek Lemańczyk 85a98eb009 Reduce GPU remainder transfers for divisor filtering 2025-10-08 22:28:36 +02:00
Marek Lemańczyk 6918bd28ff Make by-divisor GPU kernels reuse read-only operands 2025-10-08 18:47:16 +02:00
Marek Lemańczyk cd1debe9d6 Various micro- and medium- optimizations 2025-10-07 22:14:34 +02:00
Marek Lemańczyk 48127845b5 GPU errors won't go silently, so that we can analyze and fix them. 2025-10-07 21:57:27 +02:00
Marek Lemańczyk 31e95e5a8b Merge pull request #120 from mlemanczyk/codex/refactor-cycle-calculation-methods-for-mersenne
Streamline by-divisor cycle equality checks
2025-10-05 21:33:10 +02:00
Marek Lemańczyk 16181903a1 Streamline by-divisor cycle equality checks 2025-10-05 21:32:40 +02:00
Marek Lemańczyk bd8686b86b Unused parameter removed 2025-10-05 19:14:42 +02:00
Marek Lemańczyk 581da24b2f Restore GPU incremental scan logic behind exception 2025-10-05 17:39:31 +02:00
Marek Lemańczyk 20120f5bc0 Fix odd power table updates in GPU heuristics 2025-10-05 16:55:27 +02:00
Marek Lemańczyk 26cc574020 Treat Pollard Rho success as the GPU primality check 2025-10-05 06:26:09 +02:00
Marek Lemańczyk 0bc97937aa Restore GPU-backed UInt128 pow2 Montgomery helper 2025-10-05 02:13:31 +02:00
Marek Lemańczyk 72dd69bd53 Align GPU pow2 heuristics with Montgomery helper 2025-10-04 22:40:27 +02:00
Marek Lemańczyk b2a7190c14 Inline GPU capability checks for pow2 heuristics 2025-10-04 22:40:23 +02:00
Marek Lemańczyk 38df505f4f Implement GPU pow2 heuristics with safe fallbacks 2025-10-04 22:40:12 +02:00
Marek Lemańczyk ea08d3f71f Inline GPU overflow tracking helpers 2025-10-04 22:40:07 +02:00