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 |
|
Marek Lemańczyk
|
cd69c08fb4
|
Remove Montgomery divisor cache
|
2025-10-11 20:50:13 +02:00 |
|
Marek Lemańczyk
|
c4858d2829
|
Dispose GPU execution scope with the kernel lease
|
2025-10-11 18:37:38 +02:00 |
|
Marek Lemańczyk
|
d476748216
|
Remove CPU fallback from GPU context pool
|
2025-10-11 18:31:46 +02:00 |
|
Marek Lemańczyk
|
3c926e4909
|
Cache divisor cycle suppression scopes
|
2025-10-11 17:35:00 +02:00 |
|
Marek Lemańczyk
|
99c98cd017
|
Pool prime factor partial results for divisor factoring
|
2025-10-11 16:39:07 +02:00 |
|
Marek Lemańczyk
|
3c1519874c
|
Enable GPU fallbacks for CPU order calculations
|
2025-10-11 15:58:34 +02:00 |
|
Marek Lemańczyk
|
fa74667f89
|
Respect GPU configuration and reuse order factorization
|
2025-10-11 15:30:04 +02:00 |
|
Marek Lemańczyk
|
4f5ae7b674
|
Exclude VS Code temp files from compilation
|
2025-10-11 14:22:59 +02:00 |
|
mlemanczyk
|
12140bca0a
|
Rented pools made thread static
|
2025-10-11 14:14:28 +02:00 |
|
mlemanczyk
|
1cbf49c8b5
|
Small optimizations
|
2025-10-11 13:37:23 +02:00 |
|
Marek Lemańczyk
|
9181959390
|
Accelerate Montgomery odd power initialization with GPU batches
|
2025-10-10 23:12:49 +02:00 |
|
mlemanczyk
|
5a4a5e4d98
|
Heuristic defaults restored.
|
2025-10-10 22:48:46 +02:00 |
|
mlemanczyk
|
ee2df92a15
|
Performance improvement to decrease startup time.
|
2025-10-10 22:48:28 +02:00 |
|
Marek Lemańczyk
|
c9ae56a5ec
|
Remove default prime order overloads
|
2025-10-10 21:51:41 +02:00 |
|
mlemanczyk
|
64c08f9b49
|
We'll resolve the check when divisor cycle equals p. Tiny cleanup
|
2025-10-09 00:18:48 +02:00 |
|