mlemanczyk
|
f7dbc017a9
|
Modulo operators replaced with steppers, where possible.
|
2025-12-08 20:57:47 +01:00 |
|
mlemanczyk
|
86f20ed083
|
Support for q > 2^64 added in --mersenne=bydivisor mode
|
2025-12-05 23:33:21 +01:00 |
|
mlemanczyk
|
941733905b
|
Hybrid device mode implemented as the current --mersenne=bydivisor CPU execution path. CPU path is now limited to CPU calculations, only.
|
2025-12-01 03:45:39 +01:00 |
|
mlemanczyk
|
b9ca95bf8c
|
PrimeOrderCalculatorAccelerator.Rent is now created outside of the loops and re-used for all calculations.
|
2025-11-24 22:51:53 +01:00 |
|
mlemanczyk
|
801b1be3e3
|
Cleanup
|
2025-11-18 04:22:39 +01:00 |
|
Marek Lemańczyk
|
0e1212aa1c
|
Split MulHigh extensions into CPU and GPU variants
|
2025-10-26 22:42:21 +01:00 |
|
Marek Lemańczyk
|
4831fc84d1
|
Clean up resolved windowed pow2 TODOs on CPU paths
|
2025-10-20 18:36:51 +02:00 |
|
Marek Lemańczyk
|
9540a9935d
|
Restore cycle remainder TODO comments
|
2025-10-20 16:06:46 +02:00 |
|
Marek Lemańczyk
|
ea2476c749
|
Clarify modular helper invariants
|
2025-10-20 11:52:04 +02:00 |
|
Marek Lemańczyk
|
0f51454496
|
Remove cancellation-aware UInt128 ModPow overload
|
2025-10-20 11:48:14 +02:00 |
|
Marek Lemańczyk
|
c892e1c30c
|
Trim unreachable MulMod conditionals
|
2025-10-20 11:48:10 +02:00 |
|
Marek Lemańczyk
|
94323c2e8c
|
Document unreachable MulMod guards
|
2025-10-20 11:48:07 +02:00 |
|
Marek Lemańczyk
|
34240ab3e9
|
Consolidate MulMod helpers across CPU factoring path
|
2025-10-20 11:12:39 +02:00 |
|
mlemanczyk
|
56e413064a
|
Using cleanup
|
2025-10-17 02:40:51 +02:00 |
|
Marek Lemańczyk
|
c9ae56a5ec
|
Remove default prime order overloads
|
2025-10-10 21:51:41 +02:00 |
|
Marek Lemańczyk
|
b6b372bc59
|
TODO moved to the code to concentrate on mirroring heuristic cycle algorithm on GPU
|
2025-10-05 02:17:08 +02:00 |
|
Marek Lemańczyk
|
0bc97937aa
|
Restore GPU-backed UInt128 pow2 Montgomery helper
|
2025-10-05 02:13:31 +02:00 |
|
Marek Lemańczyk
|
b8aa845c5c
|
Clarify cycle stepper reset inlining
|
2025-10-02 13:30:56 +02:00 |
|
Marek Lemańczyk
|
36d316d19c
|
Add TODOs for divisor metadata caching
|
2025-10-01 22:52:21 +02:00 |
|
Marek Lemańczyk
|
ebe3b306b9
|
Refine Mul64 benchmarks with GPU-friendly variant
|
2025-09-30 04:24:40 +02:00 |
|
Marek Lemańczyk
|
615ae29fd6
|
Fix residue tester filters and arithmetic utilities
|
2025-09-24 03:05:34 +02:00 |
|
Marek Lemańczyk
|
6e99ee39e3
|
Extension methods benchmarked. Slower alternatives replaced.
|
2025-09-23 22:01:09 +02:00 |
|
Marek Lemańczyk
|
7d112c347f
|
Accelerate Mersenne modular multiplication paths
|
2025-09-22 23:24:19 +02:00 |
|
Marek Lemańczyk
|
762d205e86
|
Reuse local variables across modulo helpers
|
2025-09-22 19:54:59 +02:00 |
|
Marek Lemańczyk
|
3b8a10a20b
|
Inline single-use modulo helpers
|
2025-09-22 19:54:54 +02:00 |
|
Marek Lemańczyk
|
ca866ffc5b
|
Reapply modulo helpers and inline fast remainders
|
2025-09-22 19:26:07 +02:00 |
|
Marek Lemańczyk
|
ace3fcbf34
|
Rescope loop variables for divisor workflows
|
2025-09-22 15:11:44 +02:00 |
|
Marek Lemańczyk
|
95a0b030f6
|
Add optimized modulo helpers for unsigned integers
|
2025-09-21 10:14:26 +02:00 |
|
Marek Lemańczyk
|
2c2bc62cb2
|
Small refactoring
|
2025-09-21 09:32:01 +02:00 |
|
Marek Lemańczyk
|
412ce4fd50
|
% 10 operations replaces with UInt128/ulong.Mod10 methods
|
2025-09-21 07:42:25 +02:00 |
|
Marek Lemańczyk
|
1499f6abe1
|
Benchmarks extended. Small optimizations.
|
2025-09-21 06:15:14 +02:00 |
|
Marek Lemańczyk
|
72d66e293d
|
Optimize simultaneous remainder calculation
|
2025-09-21 04:12:34 +02:00 |
|
Marek Lemańczyk
|
01277832e6
|
Implement UInt128 exponentiation and apply in Mersenne scan
|
2025-09-10 01:51:37 +02:00 |
|
Marek Lemańczyk
|
2be49020a9
|
Small primes array type changed to uint[] to avoid excessive memory use, especially on GPU
|
2025-09-09 23:58:09 +02:00 |
|
Marek Lemańczyk
|
9f35f6c558
|
Initial commit.
|
2025-09-09 21:15:57 +02:00 |
|