Marek Lemańczyk
|
83bcd8a0de
|
Move pending entry pooling into shared thread pools
|
2025-10-17 17:20:43 +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
|
c0f38fa104
|
Merge pull request #189 from mlemanczyk/codex/analyze-evenperfectbitscanner-for-duplicate-primality-checks
Eliminate repeated primality checks in CPU order calculations
|
2025-10-17 15:05:59 +02:00 |
|
Marek Lemańczyk
|
8428e6c5bd
|
Clarify skip heuristic guard and tighten order factor init
|
2025-10-17 15:05:11 +02:00 |
|
mlemanczyk
|
43cf4a978f
|
Smaller optimizations. Division by zero fixed?
|
2025-10-17 14:18:49 +02:00 |
|
Marek Lemańczyk
|
5fcd082fff
|
Merge pull request #188 from mlemanczyk/codex/add-unlimited-taskscheduler-subclass
Add unbounded task scheduler for divisor testing
|
2025-10-17 11:26:40 +02:00 |
|
Marek Lemańczyk
|
70637c3fba
|
Add unbounded task scheduler for divisor testing
|
2025-10-17 11:26:28 +02:00 |
|
Marek Lemańczyk
|
c4e56bf753
|
Merge pull request #186 from mlemanczyk/codex/modify-gpukernellease-for-pooling
Reuse pooled GPU kernel leases
|
2025-10-17 11:21:20 +02:00 |
|
Marek Lemańczyk
|
0613cb9d99
|
Merge branch 'codex/analyze-gc-instances-in-checkdivisors-method' into codex/modify-gpukernellease-for-pooling
|
2025-10-17 11:21:09 +02:00 |
|
Marek Lemańczyk
|
efb93cace0
|
Merge pull request #187 from mlemanczyk/codex/modify-gpukernellease-for-pooling-v09r6c
Skip zero-valued factors when checking special max order
|
2025-10-17 11:12:24 +02:00 |
|
Marek Lemańczyk
|
fada9ff098
|
Ignore zero factors in TrySpecialMaxCpu
|
2025-10-17 08:54:55 +02:00 |
|
mlemanczyk
|
e5d57364b5
|
GPU limit restored. GpuKernelLease will now return to the pool during Dispose
|
2025-10-17 08:49:22 +02:00 |
|
Marek Lemańczyk
|
964e748498
|
Pool GPU kernel leases for reuse
|
2025-10-17 07:04:11 +02:00 |
|
mlemanczyk
|
fddec17b3f
|
Various try-out changes
|
2025-10-17 06:53:54 +02:00 |
|
mlemanczyk
|
301e715179
|
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 06:03:17 +02:00 |
|
Marek Lemańczyk
|
f5da594240
|
Merge pull request #185 from mlemanczyk/codex/replace-trypopulatesmallprimefactorscpu-with-gpu
Use GPU helper for partial factor small primes
|
2025-10-17 06:03:07 +02:00 |
|
Marek Lemańczyk
|
ee4787d244
|
Use GPU helper for partial factor small primes
|
2025-10-17 06:02:54 +02:00 |
|
mlemanczyk
|
1e1ac8e0ca
|
Gpu check restored
|
2025-10-17 06:02:20 +02:00 |
|
Marek Lemańczyk
|
b2689529fa
|
Merge pull request #184 from mlemanczyk/codex/modify-pow2montgomerymodwindowedgpu-for-gpu-wlp4qt
Add GPU small prime factor path
|
2025-10-17 05:34:41 +02:00 |
|
Marek Lemańczyk
|
67ad36420a
|
Add GPU kernel for small prime factoring
|
2025-10-17 05:31:07 +02:00 |
|
mlemanczyk
|
f5c79c8807
|
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 03:51:09 +02:00 |
|
mlemanczyk
|
b76ef0b11a
|
Cache capacity initialized for better performance
|
2025-10-17 03:51:06 +02:00 |
|
Marek Lemańczyk
|
3b759c724e
|
Merge pull request #182 from mlemanczyk/codex/locate-commit-adding-residue-tracking-arrays
Remove small prime stepper remainder cache
|
2025-10-17 03:50:20 +02:00 |
|
Marek Lemańczyk
|
534141e5a7
|
Remove small prime stepper remainder cache
|
2025-10-17 03:50:09 +02:00 |
|
Marek Lemańczyk
|
36a4617efe
|
Merge pull request #181 from mlemanczyk/codex/revert-changes-from-commit-1b03fb3
Restore shared primality cache locking in CPU calculator
|
2025-10-17 03:30:54 +02:00 |
|
Marek Lemańczyk
|
b985a46ed6
|
Restore cross-thread primality cache
|
2025-10-17 03:30:41 +02:00 |
|
mlemanczyk
|
56e413064a
|
Using cleanup
|
2025-10-17 02:40:51 +02:00 |
|
mlemanczyk
|
495b3918c1
|
Compilation errors fixed
|
2025-10-17 02:40:15 +02:00 |
|
Marek Lemańczyk
|
a0154dd587
|
Merge pull request #180 from mlemanczyk/codex/refactor-primeordercalculator-to-partial-class
Recycle small prime stepper arrays
|
2025-10-17 02:34:53 +02:00 |
|
Marek Lemańczyk
|
ca0f498d0d
|
Recycle small prime stepper arrays
|
2025-10-17 02:34:41 +02:00 |
|
mlemanczyk
|
06b08708d9
|
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 01:24:44 +02:00 |
|
Marek Lemańczyk
|
26894db181
|
Merge pull request #179 from mlemanczyk/codex/optimize-partialfactor-method-in-primeordercalculator
Hoist Pollard Rho deadline checks outside factoring loop
|
2025-10-17 01:15:04 +02:00 |
|
Marek Lemańczyk
|
b81fe3de75
|
Hoist Pollard Rho deadline checks outside factoring loop
|
2025-10-17 01:14:51 +02:00 |
|
mlemanczyk
|
d6a1fa0b51
|
Tiny cleanup
|
2025-10-17 01:05:13 +02:00 |
|
mlemanczyk
|
0a2e65e190
|
Small optimizations
|
2025-10-17 00:29:53 +02:00 |
|
mlemanczyk
|
e63fba4df1
|
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 00:11:47 +02:00 |
|
Marek Lemańczyk
|
14fcd715c1
|
Merge pull request #178 from mlemanczyk/codex/optimize-primeordercalculator-small-prime-factors
Optimize CPU small prime exponent extraction
|
2025-10-17 00:11:06 +02:00 |
|
mlemanczyk
|
1b03fb311a
|
Cache switched to thread static for better performance
|
2025-10-17 00:10:49 +02:00 |
|
Marek Lemańczyk
|
1ce1622388
|
Optimize CPU small prime exponent extraction
|
2025-10-17 00:01:43 +02:00 |
|
mlemanczyk
|
140c291344
|
Small optimizations to limit code branches
|
2025-10-16 23:37:06 +02:00 |
|
Marek Lemańczyk
|
b5f8ed786c
|
Merge pull request #177 from mlemanczyk/codex/naprawic-bad-kompilacji-math.divrem
Replace invalid DivRem usage in prime factor extraction
|
2025-10-16 22:01:44 +02:00 |
|
Marek Lemańczyk
|
ab86fc16fe
|
Fix quotient and remainder calculation in factor extraction
|
2025-10-16 22:01:34 +02:00 |
|
Marek Lemańczyk
|
806dc96f8c
|
Merge pull request #176 from mlemanczyk/codex/replace-concurrentdictionary-with-dictionary-and-lock
Refine primality caching and small factor loop
|
2025-10-16 21:54:29 +02:00 |
|
Marek Lemańczyk
|
d2e7e4905a
|
Streamline primality cache locking
|
2025-10-16 21:52:42 +02:00 |
|
Marek Lemańczyk
|
8d9b8b1829
|
Replace primality cache with lock-backed dictionary
|
2025-10-16 21:51:42 +02:00 |
|
Marek Lemańczyk
|
e8c1069a77
|
Merge pull request #175 from mlemanczyk/codex/optimize-evenperfectbitscanner-for-reduced-gc
Reduce GC pressure in divisor checking pipeline
|
2025-10-16 21:33:52 +02:00 |
|
mlemanczyk
|
4c81f9e5a2
|
IsPrime cache reused
|
2025-10-16 21:21:40 +02:00 |
|
mlemanczyk
|
10751bf841
|
Concurrent dictionary added for IsPrime results caching to utilize the repetition of composites.
|
2025-10-16 21:10:58 +02:00 |
|
mlemanczyk
|
aa4ff799f3
|
Small optimizations
|
2025-10-16 19:46:25 +02:00 |
|
mlemanczyk
|
07395830a5
|
Unnecessary cleanup commented out
|
2025-10-16 18:13:28 +02:00 |
|
Marek Lemańczyk
|
e53bb6ba43
|
Track small-prime remainders with cycle steppers
|
2025-10-16 17:18:27 +02:00 |
|
Marek Lemańczyk
|
fb08a61c66
|
Restore pooled small factor buffers
|
2025-10-16 17:18:19 +02:00 |
|
Marek Lemańczyk
|
949b5f891c
|
Return windowed Montgomery odd powers to pooling
|
2025-10-16 04:52:22 +02:00 |
|
Marek Lemańczyk
|
3e7ee6ab46
|
Restore pooled buffers in partial factorization
|
2025-10-16 04:52:17 +02:00 |
|
Marek Lemańczyk
|
ff724732f8
|
Allow test mode to seed by-divisor runs
|
2025-10-16 03:42:55 +02:00 |
|
Marek Lemańczyk
|
03751c27be
|
Add timed test mode for prime candidate scans
|
2025-10-16 03:17:27 +02:00 |
|
Marek Lemańczyk
|
9c474fc241
|
Use stack buffers for small composite collections
|
2025-10-16 00:59:00 +02:00 |
|
Marek Lemańczyk
|
3e7bffc812
|
Refactor heuristic pooling to cut GC pressure
|
2025-10-16 00:37:01 +02:00 |
|
Marek Lemańczyk
|
0a23502441
|
Clear heuristic candidate list without try-finally
|
2025-10-15 23:57:46 +02:00 |
|
Marek Lemańczyk
|
51730bcba3
|
Reduce GC pressure in divisor checking pipeline
|
2025-10-15 23:43:27 +02:00 |
|
Marek Lemańczyk
|
571b5a9938
|
Replace divisor scan UInt128 usage with thread-static GpuUInt128
|
2025-10-15 22:48:36 +02:00 |
|
Marek Lemańczyk
|
9ab87a8b9b
|
Streamline factor cache lease usage in CPU tester
|
2025-10-15 21:55:30 +02:00 |
|
Marek Lemańczyk
|
64c3721db4
|
Streamline divisor factor pooling for CPU hot path
|
2025-10-15 21:50:11 +02:00 |
|
Marek Lemańczyk
|
c99aebdf68
|
Restore divisor cycle fallback and enforce session disposal guard
|
2025-10-15 21:29:24 +02:00 |
|
Marek Lemańczyk
|
763714307f
|
Eliminate GC allocations from CPU divisor scan hot path
|
2025-10-15 20:48:42 +02:00 |
|
Marek Lemańczyk
|
b0ce7152f7
|
Pool factor cache entries to keep CPU factoring allocation-free
|
2025-10-15 20:48:33 +02:00 |
|
Marek Lemańczyk
|
34fcd62c23
|
Eliminate GC pressure from divisor cycle factoring
|
2025-10-15 19:32:53 +02:00 |
|
Marek Lemańczyk
|
c8f8132db7
|
Align divisor pooling with review feedback
|
2025-10-15 19:32:45 +02:00 |
|
Marek Lemańczyk
|
e44662413a
|
Use thread-static pools in CPU divisor testing
|
2025-10-15 18:10:39 +02:00 |
|
Marek Lemańczyk
|
a70113a99d
|
Merge pull request #173 from mlemanczyk/codex/analyze-and-reduce-gc-cost-in-primeordercalculator
Reduce Pollard Rho stopwatch allocations to lower GC pressure
|
2025-10-15 04:39:59 +02:00 |
|
Marek Lemańczyk
|
0b831b5a23
|
Reduce PartialFactor GC pressure
|
2025-10-15 04:39:46 +02:00 |
|
Marek Lemańczyk
|
77bc2601f1
|
Merge pull request #172 from mlemanczyk/codex/add-max-prime-parameter-to-evenperfectbitscanner
Add max prime filter option
|
2025-10-15 03:31:10 +02:00 |
|
Marek Lemańczyk
|
0055be366d
|
Add max prime filter option
|
2025-10-15 03:30:57 +02:00 |
|
mlemanczyk
|
2f85636a2a
|
Tiny cleanup
|
2025-10-15 03:21:38 +02:00 |
|
mlemanczyk
|
d3695a3dc3
|
Pools made thread static. Various small optimizations. "in" parameter added to read-only method parameters
|
2025-10-15 02:17:13 +02:00 |
|
mlemanczyk
|
7c71d5165e
|
TODO added
|
2025-10-13 21:16:03 +02:00 |
|
mlemanczyk
|
e9373dd8c9
|
PollardRho extended to allow running with 10_240 threads. Configuration made static to prevent unnecessary GC pressure.
|
2025-10-13 20:44:15 +02:00 |
|
mlemanczyk
|
313286f70d
|
Configuration adjusted
|
2025-10-13 20:13:44 +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
|
38120fba13
|
Merge pull request #145 from mlemanczyk/codex/merge-selective-improvements-from-pollardrhoplus2
Remove default prime order overloads
|
2025-10-10 21:52:09 +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 |
|
Marek Lemańczyk
|
79d821c475
|
Merge pull request #127 from mlemanczyk/codex/review-caching-in-evenperfectbitscanner
Compact by-divisor candidate filtering
|
2025-10-08 23:34:56 +02:00 |
|
Marek Lemańczyk
|
adac9ff5f9
|
Compact by-divisor candidate filtering
|
2025-10-08 23:34:35 +02:00 |
|
Marek Lemańczyk
|
4ab70ec4a8
|
Merge pull request #126 from mlemanczyk/codex/analyze-thread-processing-in-evenperfectbitscanner
Enable parallel by-divisor Mersenne scanning
|
2025-10-08 22:46:16 +02:00 |
|
Marek Lemańczyk
|
9a81f5f685
|
Enable parallel by-divisor scanning threads
|
2025-10-08 22:45:53 +02:00 |
|
Marek Lemańczyk
|
686d482417
|
Merge pull request #125 from mlemanczyk/codex/analyze-evenperfectbitscanner-gpu-execution
Reduce GPU remainder transfers for divisor filtering
|
2025-10-08 22:28:49 +02:00 |
|
Marek Lemańczyk
|
85a98eb009
|
Reduce GPU remainder transfers for divisor filtering
|
2025-10-08 22:28:36 +02:00 |
|
Marek Lemańczyk
|
5a66abe672
|
Merge pull request #124 from mlemanczyk/codex/enhance-tests-for-mersenne-class-path
Add GPU by-divisor tests for small factors
|
2025-10-08 21:39:25 +02:00 |
|
Marek Lemańczyk
|
fbe9a98b42
|
Add GPU by-divisor coverage for small factors
|
2025-10-08 21:39:10 +02:00 |
|
Marek Lemańczyk
|
4afe0e356e
|
Merge pull request #123 from mlemanczyk/codex/adjust-bydivisor-path-for-divisor-cycles
Align CPU by-divisor scan with divisor cycle cache filters
|
2025-10-08 20:16:05 +02:00 |
|
Marek Lemańczyk
|
c45b3951c3
|
Align CPU by-divisor scan with cached divisor filters
|
2025-10-08 20:15:26 +02:00 |
|
mlemanczyk
|
632957e4f4
|
Spell-check settings adjusted
|
2025-10-08 19:57:10 +02:00 |
|
mlemanczyk
|
6dc26336c6
|
Remainder check adjusted to PrimesGenerator.
|
2025-10-08 19:56:53 +02:00 |
|
Marek Lemańczyk
|
6a4ee0e2c5
|
Merge pull request #122 from mlemanczyk/codex/modify-evenperfectbitscanner-for-divisor-cycles
Filter CPU divisor-by-divisor scan by residue heuristics
|
2025-10-08 19:23:47 +02:00 |
|
Marek Lemańczyk
|
85634da6eb
|
Filter CPU divisor checks by admissible residues
|
2025-10-08 19:23:09 +02:00 |
|
Marek Lemańczyk
|
26abc2dfa8
|
Merge pull request #121 from mlemanczyk/codex/restore-cache-functionality-for-gpu-path
Use ReadOnlyGpuUInt128 in by-divisor GPU kernels
|
2025-10-08 18:47:54 +02:00 |
|
Marek Lemańczyk
|
6918bd28ff
|
Make by-divisor GPU kernels reuse read-only operands
|
2025-10-08 18:47:16 +02:00 |
|