Marek Lemańczyk
|
04d4d18f37
|
Rename GPU mul-mod helper
|
2025-10-25 02:20:15 +02:00 |
|
Marek Lemańczyk
|
4b13bc6497
|
Switch GPU powmod host helpers to simplified mul-mod
|
2025-10-25 02:20:09 +02:00 |
|
Marek Lemańczyk
|
03194650c9
|
Add GPU simplified mul-mod helper for host callers
|
2025-10-25 02:20:02 +02:00 |
|
Marek Lemańczyk
|
d0ba08dd24
|
Fix GPU mul mod benchmark kernel initialization
|
2025-10-24 22:08:32 +02:00 |
|
Marek Lemańczyk
|
2888a1f9b3
|
Deprecate MulMod64Gpu and migrate host callers
|
2025-10-24 22:00:41 +02:00 |
|
Marek Lemańczyk
|
ad19096bab
|
Use constant residue initialization in GPU stepper
|
2025-10-24 21:59:51 +02:00 |
|
Marek Lemańczyk
|
4e9d57df4b
|
Unify GPU divisor kernels with stepper path
|
2025-10-24 20:50:52 +02:00 |
|
Marek Lemańczyk
|
868c7a4fd2
|
Tighten GPU divisor heuristics and stepper usage
|
2025-10-24 20:50:46 +02:00 |
|
Marek Lemańczyk
|
fab9ba0413
|
Restore reviewed divisor heuristics
|
2025-10-24 19:50:32 +02:00 |
|
Marek Lemańczyk
|
bbe0c02069
|
Use bit masks for divisor heuristics
|
2025-10-24 19:50:27 +02:00 |
|
Marek Lemańczyk
|
46a2178d65
|
Remove Montgomery data from GPU divisor flow
|
2025-10-24 18:56:28 +02:00 |
|
Marek Lemańczyk
|
69acd3dad9
|
Cache GPU divisor partial data on GPU path
|
2025-10-24 18:56:21 +02:00 |
|
Marek Lemańczyk
|
cc281ab423
|
Refactor GPU powmod helpers into ULongExtensions
|
2025-10-24 17:26:55 +02:00 |
|
Marek Lemańczyk
|
557bc5d06f
|
Use field-based exponent tracking for steppers
|
2025-10-24 17:26:49 +02:00 |
|
Marek Lemańczyk
|
d20362a2fc
|
Switch GPU by-divisor stepper to standard modular arithmetic
|
2025-10-24 09:20:17 +02:00 |
|
Marek Lemańczyk
|
1e5a9128cb
|
Split CPU and GPU exponent steppers
|
2025-10-24 08:49:53 +02:00 |
|
Marek Lemańczyk
|
035956cdb6
|
Replace GPU by-divisor kernel with standard modular exponentiation
|
2025-10-24 08:49:48 +02:00 |
|
Marek Lemańczyk
|
fbd6235316
|
Handle zero-cycle GPU divisor sessions with heuristics
|
2025-10-24 06:40:33 +02:00 |
|
Marek Lemańczyk
|
cf9d143ca2
|
Remove GPU by-divisor snapshot dependency
|
2025-10-24 05:05:21 +02:00 |
|
Marek Lemańczyk
|
8637ee8875
|
Restore GPU divisor heuristics to match cycle cache
|
2025-10-24 05:05:16 +02:00 |
|
Marek Lemańczyk
|
8a258f7536
|
Collapse GPU by-divisor batching to a single launch
|
2025-10-24 01:23:38 +02:00 |
|
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 |
|
Marek Lemańczyk
|
6af0ae900e
|
Merge pull request #227 from mlemanczyk/codex/refactor-exponentremainderstepper-structure
Clarify Pollard-Rho guard and seed CPU stepping upfront
|
2025-10-23 20:15:59 +02:00 |
|
Marek Lemańczyk
|
7feeb08943
|
Clarify Pollard-Rho parity guard and seed CPU batches
|
2025-10-23 19:50:39 +02:00 |
|
mlemanczyk
|
0d7df2e45b
|
Unnecessary memory zeroing commented out. TODOs added for the remainders.
|
2025-10-23 19:42:03 +02:00 |
|
mlemanczyk
|
8e3e990499
|
Throwing exception added in case of invalid modulus to validate if the check ever kicks off
|
2025-10-23 16:43:52 +02:00 |
|
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 |
|