Commit Graph
252 Commits
Author SHA1 Message Date
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 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 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 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 534141e5a7 Remove small prime stepper remainder cache 2025-10-17 03:50:09 +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 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
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 ab86fc16fe Fix quotient and remainder calculation in factor extraction 2025-10-16 22:01:34 +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
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 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 0b831b5a23 Reduce PartialFactor GC pressure 2025-10-15 04:39:46 +02:00