Marek Lemańczyk
|
1075ab1ea1
|
Fuse GPU hit detection with divisor evaluation
|
2025-10-24 01:23:31 +02:00 |
|
Marek Lemańczyk
|
40d3b4b3ac
|
Fuse GPU by-divisor candidate filtering into one kernel
|
2025-10-24 01:23:25 +02:00 |
|
Marek Lemańczyk
|
ab1a069e57
|
Optimize GPU divisor heuristics pipeline
|
2025-10-24 00:29:26 +02:00 |
|
mlemanczyk
|
0d7df2e45b
|
Unnecessary memory zeroing commented out. TODOs added for the remainders.
|
2025-10-23 19:42:03 +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 |
|
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 |
|