Marek Lemańczyk
|
76dfe108a9
|
Address feedback on GPU pooling and heuristic factoring
|
2025-11-02 11:22:49 +01:00 |
|
Marek Lemańczyk
|
5339c3c304
|
Use span growth instead of dictionaries in partial factor
|
2025-11-02 11:22:38 +01:00 |
|
mlemanczyk
|
2281d9535e
|
Revert "Merge pull request #251 from mlemanczyk/codex/refactor-prime-checking-on-gpu-n5t2pm"
This reverts commit 936ce239db, reversing
changes made to e14b77e504.
|
2025-11-02 11:22:14 +01:00 |
|
Marek Lemańczyk
|
8c662c5c85
|
Address feedback on GPU pooling and heuristic factoring
|
2025-10-31 21:47:42 +01:00 |
|
Marek Lemańczyk
|
567b92792c
|
Use span growth instead of dictionaries in partial factor
|
2025-10-31 18:52:00 +01:00 |
|
mlemanczyk
|
fc5700f82c
|
IsPrime with cancellation token removed.
|
2025-10-29 22:31:28 +01:00 |
|
mlemanczyk
|
0850227881
|
Switched to heuristic GPU for a better performance than the standard one.
|
2025-10-28 22:15:33 +01:00 |
|
mlemanczyk
|
ab045a62c4
|
Revert "Temporarily enabling heuristic GPU order checks."
This reverts commit 4db06cfe80.
|
2025-10-28 21:04:09 +01:00 |
|
mlemanczyk
|
4db06cfe80
|
Temporarily enabling heuristic GPU order checks.
|
2025-10-28 20:49:41 +01:00 |
|
Marek Lemańczyk
|
bd0727131f
|
Merge pull request #238 from mlemanczyk/codex/optimize-evenperfectbitscanner-loops-kit1so
Hoist prime order thresholds in CPU heuristics
|
2025-10-27 21:31:23 +01:00 |
|
Marek Lemańczyk
|
94a4ed8328
|
Hoist prime order thresholds in CPU heuristics
|
2025-10-27 21:24:43 +01:00 |
|
mlemanczyk
|
d381abe0cc
|
We'll now clear the dictionary after renting, to avoid unnecessary clearing if it's not going to be used anymore.
|
2025-10-27 16:54:49 +01:00 |
|
mlemanczyk
|
50d66a5186
|
Switched to GPU version in some places.
|
2025-10-27 15:30:10 +01:00 |
|
mlemanczyk
|
f2ce40ade9
|
Additional logging added.
|
2025-10-26 20:00:32 +01:00 |
|
Marek Lemańczyk
|
3758524450
|
Extract divisor validator and rename legacy CPU prime helper
|
2025-10-26 18:59:07 +01:00 |
|
Marek Lemańczyk
|
1e5eadac34
|
Refine heuristic prime tester integration
|
2025-10-26 18:15:27 +01:00 |
|
Marek Lemańczyk
|
43c7bafd5d
|
Restore CPU PrimeTester usage and rename fallback helpers
|
2025-10-26 15:19:49 +01:00 |
|
mlemanczyk
|
1ed5afe689
|
Switched to .IsPrime which performed best in benchmarks.
|
2025-10-26 04:05:00 +01:00 |
|
Marek Lemańczyk
|
15c229665d
|
Add heuristic prime sieves for cached divisor sequences
|
2025-10-26 03:21:29 +01: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
|
1e5a9128cb
|
Split CPU and GPU exponent steppers
|
2025-10-24 08:49:53 +02:00 |
|
Marek Lemańczyk
|
7feeb08943
|
Clarify Pollard-Rho parity guard and seed CPU batches
|
2025-10-23 19:50:39 +02:00 |
|
mlemanczyk
|
865a88fac0
|
Switched to GPU for prime testing
|
2025-10-22 00:40:30 +02:00 |
|
mlemanczyk
|
40ba538587
|
Switched to range operator from Slice, where applicable.
|
2025-10-21 21:28:55 +02:00 |
|
Marek Lemańczyk
|
9bcf1bd9a1
|
Merge pull request #218 from mlemanczyk/codex/analyze-mersenne=bydivisor-path-for-tracking-remainder-bbul2g
Reuse stack spans across divisor processing loops
|
2025-10-21 20:54:45 +02:00 |
|
Marek Lemańczyk
|
a226ae10cb
|
Stop clearing pooled buffers inside rent helpers
|
2025-10-21 20:52:21 +02:00 |
|
Marek Lemańczyk
|
7baf3b619f
|
Simplify exception guards in CPU remainder paths
|
2025-10-21 20:52:14 +02:00 |
|
Marek Lemańczyk
|
6adf78faf6
|
Streamline CPU remainder buffers
|
2025-10-21 20:52:09 +02:00 |
|
Marek Lemańczyk
|
b418d79fb3
|
Adopt fixed stack capacities for CPU prime order helpers
|
2025-10-21 19:46:59 +02:00 |
|
Marek Lemańczyk
|
c15405e3b1
|
Reuse stack buffers when lowering divisor exponents
|
2025-10-21 18:22:56 +02:00 |
|
mlemanczyk
|
8dc7751084
|
Switched back to PrimeTester.IsPrimeInternal for teseting
|
2025-10-21 04:07:49 +02:00 |
|
mlemanczyk
|
5d5fb28765
|
Cache removed. It was barely every hit.
|
2025-10-20 16:56:49 +02:00 |
|
Marek Lemańczyk
|
a7ed762428
|
Simplify scheduler configuration and pending composite caching
|
2025-10-20 01:07:02 +02:00 |
|
Marek Lemańczyk
|
d99610098a
|
Store Pollard Rho primality on pending entries
|
2025-10-20 00:41:32 +02:00 |
|
Marek Lemańczyk
|
752c07c57e
|
Persist partial factor primality in pending entries
|
2025-10-20 00:14:36 +02:00 |
|
Marek Lemańczyk
|
e4f6cbbe25
|
Requeue timed-out Pollard Rho composites
|
2025-10-19 23:48:12 +02:00 |
|
Marek Lemańczyk
|
43e2894661
|
Refine partial factor primality caching
|
2025-10-19 23:48:07 +02:00 |
|
Marek Lemańczyk
|
0fbd635828
|
Reuse pooled local cache for partial factor primality checks
|
2025-10-19 23:35:08 +02:00 |
|
Marek Lemańczyk
|
b7c187bbc5
|
Check Pollard Rho deadline inside partial factor loop
|
2025-10-19 23:16:35 +02:00 |
|
Marek Lemańczyk
|
4917f690fc
|
Make partial factor primality cache thread static
|
2025-10-19 22:59:44 +02:00 |
|
Marek Lemańczyk
|
627d2e9b14
|
Cache composite primality results in PartialFactor
|
2025-10-19 22:49:38 +02:00 |
|
Marek Lemańczyk
|
653da2ccc3
|
Remove dead by-divisor cache fallback
|
2025-10-19 21:24:07 +02:00 |
|
mlemanczyk
|
5fbd5bc20c
|
Small optimizations. Branches which we don't visit in runtime disabled. TODOs added.
|
2025-10-18 14:20:46 +02:00 |
|
mlemanczyk
|
b8031c5993
|
Merge branch 'codex/analyze-gc-instances-in-checkdivisors-method' of https://github.com/mlemanczyk/even-perfect-numbers-scanner into codex/analyze-gc-instances-in-checkdivisors-method
|
2025-10-17 17:21:29 +02:00 |
|
Marek Lemańczyk
|
83bcd8a0de
|
Move pending entry pooling into shared thread pools
|
2025-10-17 17:20:43 +02:00 |
|
mlemanczyk
|
4cca19b1c2
|
TODO added
|
2025-10-17 17:06:18 +02:00 |
|
mlemanczyk
|
be7c2b7ae5
|
Tiny optimization
|
2025-10-17 16:41:15 +02:00 |
|
mlemanczyk
|
e525484b48
|
Primality tests normalized on GetOrComputePrimality. CofactorIsPrime added to factoring results for reuse in other places.
|
2025-10-17 16:24:59 +02:00 |
|
Marek Lemańczyk
|
8428e6c5bd
|
Clarify skip heuristic guard and tighten order factor init
|
2025-10-17 15:05:11 +02:00 |
|