Marek Lemańczyk
|
c6008a65b4
|
Cache GPU remainder configs and fold constant modulos
|
2025-10-13 22:15:58 +02:00 |
|
Marek Lemańczyk
|
0b43880959
|
Remove IDisposable usage and using declarations
|
2025-10-13 21:55:16 +02:00 |
|
Marek Lemańczyk
|
f2eb6580c4
|
Comment unreachable configuration guards in by-divisor testers
|
2025-10-13 20:41:14 +02:00 |
|
Marek Lemańczyk
|
b0ba6401ca
|
Remove configuration locks from by-divisor testers
|
2025-10-13 20:41:07 +02:00 |
|
Marek Lemańczyk
|
6e89700f80
|
Clarify invariants across GPU divisor helpers
|
2025-10-13 20:41:00 +02:00 |
|
Marek Lemańczyk
|
bccb2f43c9
|
Document unreachable guards in GPU by-divisor pipeline
|
2025-10-13 19:56:47 +02:00 |
|
Marek Lemańczyk
|
a255dc718d
|
Restore snapshot missing-cycle guard
|
2025-10-13 18:21:22 +02:00 |
|
Marek Lemańczyk
|
c81579865c
|
Compute missing small divisor cycles on demand
|
2025-10-13 18:18:57 +02:00 |
|
Marek Lemańczyk
|
c8d6143ab7
|
Simplify by-divisor buffer guards and document prime ordering
|
2025-10-13 18:12:06 +02:00 |
|
Marek Lemańczyk
|
c0b6b29837
|
Document divisor invariants and refresh pow2 tests
|
2025-10-13 17:42:56 +02:00 |
|
Marek Lemańczyk
|
af909e9e2d
|
Simplify prime guards and adopt unified mulmod
|
2025-10-13 16:56:50 +02:00 |
|
Marek Lemańczyk
|
3f5904c340
|
Clarify windowed pow2 invariants and tidy Montgomery pooling
|
2025-10-13 14:30:06 +02:00 |
|
Marek Lemańczyk
|
79695b0c56
|
Switch GPU pow2mod helpers to plain windowed arithmetic
|
2025-10-13 14:21:35 +02:00 |
|
Marek Lemańczyk
|
1916196e89
|
Introduce windowed plain pow2mod helper for CPU checks
|
2025-10-13 14:21:28 +02:00 |
|
Marek Lemańczyk
|
73e27326a2
|
Use plain modular math for single-shot CPU checks
|
2025-10-13 14:21:22 +02:00 |
|
Marek Lemańczyk
|
716ffcb243
|
Route prime-order pow2 kernel through plain modular helper
|
2025-10-13 05:08:34 +02:00 |
|
Marek Lemańczyk
|
f9d51efe94
|
Clarify per-divisor Montgomery recomputation
|
2025-10-13 03:43:23 +02:00 |
|
Marek Lemańczyk
|
b2b71f705a
|
Merge pull request #162 from mlemanczyk/codex/analyze-execution-path-for-gpu-optimization
Batch CPU divisor scanning in reusable batches
|
2025-10-13 01:42:26 +02:00 |
|
Marek Lemańczyk
|
9e06a21718
|
Streamline GPU remainder batching tables
|
2025-10-13 01:35:50 +02:00 |
|
Marek Lemańczyk
|
483584b5d4
|
Add GPU options for by-divisor Montgomery data
|
2025-10-13 01:35:46 +02:00 |
|
Marek Lemańczyk
|
ea29035c55
|
Use GpuUInt128 in by-divisor GPU scan
|
2025-10-13 01:35:40 +02:00 |
|
Marek Lemańczyk
|
cd47b122a5
|
Batch GPU remainder filtering for by-divisor scan
|
2025-10-13 01:35:36 +02:00 |
|
Marek Lemańczyk
|
cfedfd12c8
|
Restore CPU by-divisor flow when GPU deltas disabled
|
2025-10-13 01:35:32 +02:00 |
|
Marek Lemańczyk
|
41e6703926
|
Add dedicated GPU residue evaluator for by-divisor deltas
|
2025-10-13 01:35:26 +02:00 |
|
Marek Lemańczyk
|
0902b18721
|
Add GPU delta routing option for by-divisor mode
|
2025-10-13 01:35:21 +02:00 |
|
mlemanczyk
|
67dcf3ac7b
|
Local variables optimized for reuse and lowered registry pressure.
|
2025-10-12 23:57:58 +02:00 |
|
Marek Lemańczyk
|
681e9a4a5e
|
Batch CPU divisor scanning across reusable buffers
|
2025-10-12 22:46:58 +02:00 |
|
mlemanczyk
|
fcfb6f6434
|
New benchmarks added. Tiny optimization
|
2025-10-12 21:17:21 +02:00 |
|
mlemanczyk
|
8c0320d837
|
Add optimized
|
2025-10-12 20:25:43 +02:00 |
|
mlemanczyk
|
0ff93e1d09
|
MulAdd optimized
|
2025-10-12 20:18:35 +02:00 |
|
mlemanczyk
|
9e5ee36e6e
|
Tiny optimization
|
2025-10-12 19:00:56 +02:00 |
|
Marek Lemańczyk
|
e5486af49d
|
Merge pull request #161 from mlemanczyk/codex/add-benchmarks-for-mutableuint128.multiplyadd
Restore original MultiplyAddInline implementation
|
2025-10-12 18:54:22 +02:00 |
|
Marek Lemańczyk
|
67d9f4be55
|
Restore original MultiplyAddInline logic
|
2025-10-12 18:54:05 +02:00 |
|
mlemanczyk
|
d555e157f6
|
Calculation switched to typical O(N)
|
2025-10-12 18:23:06 +02:00 |
|
Marek Lemańczyk
|
cc50e7376f
|
Restore UInt128 initialization helpers
|
2025-10-12 16:03:10 +02:00 |
|
Marek Lemańczyk
|
86989d0502
|
Replace Pow2Mod kernel with Montgomery binary ladder
|
2025-10-12 05:44:39 +02:00 |
|
mlemanczyk
|
e5dc688865
|
Locking temporarily disabled for testing
|
2025-10-12 05:38:33 +02:00 |
|
mlemanczyk
|
c64e672552
|
Heuristic parameters adjusted to test match thread counts in runs
|
2025-10-12 05:38:05 +02:00 |
|
mlemanczyk
|
a1848e4f0b
|
Compilation errors fixed.
|
2025-10-12 00:39:12 +02:00 |
|
mlemanczyk
|
be4ed3db34
|
Merge branch 'odd-powers-on-gpu' of https://github.com/mlemanczyk/even-perfect-numbers-scanner into odd-powers-on-gpu
|
2025-10-12 00:38:00 +02:00 |
|
mlemanczyk
|
dde01cf8b9
|
Compilation errors fixed.
|
2025-10-12 00:37:57 +02:00 |
|
Marek Lemańczyk
|
9c378db18f
|
Use Parallel.ForEach for grouped by-divisor work items
|
2025-10-12 00:36:20 +02:00 |
|
Marek Lemańczyk
|
421cb8ae7d
|
Group by-divisor CPU workloads per worker
|
2025-10-12 00:00:47 +02:00 |
|
Marek Lemańczyk
|
60c8dbf6d6
|
Make MutableUInt128 a struct and reuse it in Pollard Rho
|
2025-10-11 23:13:17 +02:00 |
|
Marek Lemańczyk
|
9d62278bb3
|
Use stack buffers for CPU exponent lowering and add MutableUInt128
|
2025-10-11 23:13:12 +02:00 |
|
Marek Lemańczyk
|
2da549fe8c
|
Reduce GC in CPU odd power ladder
|
2025-10-11 22:45:46 +02:00 |
|
Marek Lemańczyk
|
6a1925dd47
|
Refine by-divisor prime test time limits
|
2025-10-11 22:28:52 +02:00 |
|
Marek Lemańczyk
|
2801832af9
|
Short-circuit divisor order reduction once the exponent is reached
|
2025-10-11 21:47:39 +02:00 |
|
Marek Lemańczyk
|
ad22329814
|
Avoid pooling small buffers in CPU divisor pipeline
|
2025-10-11 21:17:18 +02:00 |
|
Marek Lemańczyk
|
8e9390bc5e
|
Isolate CPU divisor pools per thread
|
2025-10-11 21:17:12 +02:00 |
|