Commit Graph
100 Commits
Author SHA1 Message Date
Marek Lemańczyk cf4f93fbfe Merge pull request #32 from mlemanczyk/codex/review-evenperfectbitscanner-for-overflow-checks
Add overflow checks to GPU residue and divisor scanners
2025-09-20 03:22:05 +02:00
Marek Lemańczyk 9f2cf12ce1 Guard GPU residue and divisor scans against overflow 2025-09-20 03:21:49 +02:00
Marek Lemańczyk ff2c516a0e Merge pull request #31 from mlemanczyk/codex/modify-evenperfectbitscanner-for-uint128-divisors
Allow residue GPU scanning to cover UInt128 divisors
2025-09-20 02:49:36 +02:00
Marek Lemańczyk bc1ec6a3aa Allow residue GPU scanning to cover UInt128 divisors 2025-09-20 02:49:20 +02:00
Marek Lemańczyk 0a9b11e957 Performance improvements 2025-09-20 01:47:24 +02:00
Marek Lemańczyk f75e8660cd Status update improvements 2025-09-20 00:12:26 +02:00
Marek Lemańczyk 52f4226ff1 Merge pull request #30 from mlemanczyk/codex/fix-exception-in-resultsparser
Fix worker index capture causing split results failure
2025-09-20 00:04:13 +02:00
Marek Lemańczyk 83d405c8d5 Fix worker index capture in results splitting 2025-09-20 00:03:53 +02:00
Marek Lemańczyk 22be048c15 Tiny cleanup 2025-09-19 23:58:57 +02:00
Marek Lemańczyk b3633d0a5c Merge pull request #29 from mlemanczyk/codex/optimize-threading-and-reduce-synchronization
Parallelize results parser pipeline
2025-09-19 23:39:54 +02:00
Marek Lemańczyk 7fbc3d3b49 Enforce equals syntax for parser options 2025-09-19 23:39:30 +02:00
Marek Lemańczyk 18b6505281 Parallelize results parser pipeline 2025-09-19 23:37:20 +02:00
Marek Lemańczyk 1d19904239 Merge pull request #28 from mlemanczyk/codex/optimize-resultsparser-for-better-performance
Buffer pending results as consecutive ranges
2025-09-19 22:12:37 +02:00
Marek Lemańczyk cb5020b060 Buffer pending results as consecutive ranges 2025-09-19 22:12:12 +02:00
Marek Lemańczyk 4b4cbf3049 Merge pull request #27 from mlemanczyk/codex/optimize-multithreading-in-resultsparser
Improve results sorting performance
2025-09-19 21:41:36 +02:00
Marek Lemańczyk 5f3c32420c Improve results sorting performance 2025-09-19 21:41:08 +02:00
Marek Lemańczyk 73b5d5d686 Tiny optimizations and cleanup 2025-09-19 21:33:18 +02:00
Marek Lemańczyk ef43267adc Tiny cleanup 2025-09-19 20:31:09 +02:00
Marek Lemańczyk 3a3da488b0 Renaming isPerfect to passedAllTests variables and parameters 2025-09-19 20:11:48 +02:00
Marek Lemańczyk e3f2cf1f2c Merge pull request #26 from mlemanczyk/codex/add-parameters-p-min-and-p-max-to-resultsparser
Add inclusive exponent filtering to results parser
2025-09-19 13:48:22 +02:00
Marek Lemańczyk 3a64478aab Add inclusive exponent range filters to results parser 2025-09-19 13:47:56 +02:00
Marek Lemańczyk cc4a6f6bed Added status progress update every 10_000 results 2025-09-19 01:00:17 +02:00
Marek Lemańczyk ab80a55457 Tiny clean and micro-optimizations 2025-09-19 00:55:50 +02:00
Marek Lemańczyk f3878f3480 Tiny micro-optimization to avoid properties with getters / setters 2025-09-19 00:45:59 +02:00
Marek Lemańczyk 2fc42e57c9 Tiny cleanup 2025-09-19 00:43:52 +02:00
Marek Lemańczyk e0a5bd68c4 Merge pull request #25 from mlemanczyk/codex/optimize-resultsparser-to-use-sorted-pendingresults
Optimize pending result handling in results parser
2025-09-19 00:28:45 +02:00
Marek Lemańczyk 1168ff9756 Optimize results parser pending queue 2025-09-19 00:28:17 +02:00
Marek Lemańczyk bb93c5a995 Tiny cleanup 2025-09-17 19:17:41 +02:00
Marek Lemańczyk fdcbfd2829 Ignore list updated to ignore EvenPerfectBitScanner.ResultsParser binaries 2025-09-17 19:09:57 +02:00
Marek Lemańczyk 9a7382fd80 Tiny cleanup 2025-09-17 19:08:43 +02:00
Marek Lemańczyk 2d024cc708 Merge pull request #24 from mlemanczyk/codex/modify-evenperfectbitscanner-for-residue-mode
Report residue scan exhaustion through detailed checks
2025-09-17 19:02:45 +02:00
Marek Lemańczyk 1b28584168 Add divisor-mode detailed check coverage for factors 2025-09-17 19:02:21 +02:00
Marek Lemańczyk b1c29ad16e Merge pull request #23 from mlemanczyk/codex/modify-evenperfectbitscanner-for-mersenne-primes
Refine GPU residue prime tables
2025-09-17 17:36:09 +02:00
Marek Lemańczyk 34cc0b0fdd Refine GPU residue prime tables 2025-09-17 17:35:26 +02:00
Marek Lemańczyk 88d0c9c271 Merge pull request #22 from mlemanczyk/codex/add-evenperfectbitscanner.resultsparser-app
Integrate Open.Numeric.Primes prime iterator
2025-09-16 13:50:53 +02:00
Marek Lemańczyk 382b202e37 Use Open.Numeric.Primes to stream prime results 2025-09-16 13:50:30 +02:00
Marek Lemańczyk 6479c6461b Merge branch 'main' of https://github.com/mlemanczyk/even-perfect-numbers-scanner 2025-09-16 11:45:02 +02:00
Marek Lemańczyk 138149a71f Tiny cleanup 2025-09-16 11:44:56 +02:00
Marek Lemańczyk 0e816d135d List of thirdparty components added 2025-09-16 11:44:33 +02:00
Marek Lemańczyk ababca03cd Merge pull request #21 from mlemanczyk/codex/modify-evenperfectbitscanner-for-prime-iteration
Skip composite residue outputs
2025-09-16 11:23:23 +02:00
Marek Lemańczyk ce73f87ba7 Skip residue composites in output 2025-09-16 11:21:56 +02:00
Marek Lemańczyk be3b7aedec Revert "Iterate candidate exponents via prime merge walk"
This reverts commit 3223a2fbc0.
2025-09-16 00:31:17 +02:00
Marek Lemańczyk 2466661b73 Merge pull request #20 from mlemanczyk/codex/modify-evenperfectbitscanner-to-iterate-primes
Use prime merge iteration for EvenPerfectBitScanner
2025-09-15 23:18:17 +02:00
Marek Lemańczyk 3223a2fbc0 Iterate candidate exponents via prime merge walk 2025-09-15 23:17:49 +02:00
Marek Lemańczyk 1d578f0e4b Merge branch 'main' of https://github.com/mlemanczyk/even-perfect-numbers-scanner 2025-09-15 20:46:26 +02:00
Marek Lemańczyk 48d11c08f0 Formatting cleanup 2025-09-15 20:44:37 +02:00
Marek Lemańczyk 59a0988844 Merge pull request #19 from mlemanczyk/codex/review-test-coverage-for-evenperfectbitscanner
Add GPU coverage for residue and divisor scanning paths
2025-09-15 14:43:15 +02:00
Marek Lemańczyk 39ac3dd8ac Add GPU coverage for residue and divisor paths 2025-09-15 14:42:56 +02:00
Marek Lemańczyk af0131d446 Compilation error fixed 2025-09-15 14:29:24 +02:00
Marek Lemańczyk d962b9ca01 Iterate p only until reaching the maximum p from the input file to prevent infinite loops with p increase. 2025-09-15 14:23:28 +02:00
Marek Lemańczyk 87c5ade66e Merge pull request #18 from mlemanczyk/codex/modify-evenperfectbitscanner-mersenne-behavior
Handle 128-bit divisors in Mersenne scans
2025-09-15 14:16:07 +02:00
Marek Lemańczyk 13e048c23d Allow exhaustive divisor scans with 128-bit limits 2025-09-15 14:15:35 +02:00
Marek Lemańczyk 4e4db63069 We'll increase prime count also when there was no detailed check 2025-09-15 13:05:33 +02:00
Marek Lemańczyk 206f2f0706 Tiny cleanup 2025-09-15 13:01:42 +02:00
Marek Lemańczyk cdc45c49d8 Message displayed when a candidate passed all tests updated to avoid confusion. 2025-09-14 17:15:05 +02:00
Marek Lemańczyk 12654fe79d Result column renamed to avoid confusion 2025-09-14 16:33:13 +02:00
Marek Lemańczyk b1ef9b9512 Tiny cleanup 2025-09-14 16:28:13 +02:00
Marek Lemańczyk 4e219355c9 Tiny cleanup 2025-09-14 15:39:08 +02:00
Marek Lemańczyk 731927f10f Merge pull request #17 from mlemanczyk/codex/analyze-evenperfectbitscanner-for-optimizations
Optimize GPU residue scanning and divisor path
2025-09-13 16:48:52 +02:00
Marek Lemańczyk 58eb65ca9e Refine GPU residue utilities and add positive divisor tests 2025-09-13 16:47:38 +02:00
Marek Lemańczyk 515a1bb342 Clarified payment type 2025-09-13 14:25:01 +02:00
Marek Lemańczyk fd285f9016 CAN's clarified 2025-09-13 14:23:07 +02:00
Marek Lemańczyk 76489b1bf8 Extended the rights 2025-09-13 14:21:02 +02:00
Marek Lemańczyk b27827b105 Clarifying DON'T section 2025-09-13 14:17:31 +02:00
Marek Lemańczyk 585259690f Tiny cleanup 2025-09-13 14:14:19 +02:00
Marek Lemańczyk 4fc77e3067 Tiny cleanup 2025-09-13 14:13:43 +02:00
Marek Lemańczyk 88fa0fca06 Tiny cleanup 2025-09-13 14:11:38 +02:00
Marek Lemańczyk 8bd1b53f0b Tiny cleanup 2025-09-13 14:07:21 +02:00
Marek Lemańczyk 6997bb83a7 Licensing terms clarified 2025-09-13 14:02:52 +02:00
Marek Lemańczyk 3f39e78e48 Merge pull request #16 from mlemanczyk/codex/fix-evenperfectbitscanner-gpu-output
Fix residue mode to skip incremental scan
2025-09-13 11:57:17 +02:00
Marek Lemańczyk f73a5a7ff4 Skip incremental scan in residue mode 2025-09-13 11:57:04 +02:00
Marek Lemańczyk 5d6d5e69b0 Merge pull request #15 from mlemanczyk/codex/investigate-evenperfectbitscanner-gpu-mode
Fix GPU divisor cycle generation indexing and add regression tests
2025-09-13 11:07:43 +02:00
Marek Lemańczyk 84451aac4d Add regression test for divisor cycle GPU generation 2025-09-13 11:07:32 +02:00
Marek Lemańczyk 3028397d6b Micro-optimizations. Normalization of result file name 2025-09-13 10:57:21 +02:00
Marek Lemańczyk 6031454812 Add support for processing result files from the divisor method 2025-09-13 09:04:54 +02:00
Marek Lemańczyk ab9bc30a64 Tiny cleanup 2025-09-12 11:00:24 +02:00
Marek Lemańczyk dd6d9a71cf Stack overflow fixed 2025-09-12 10:59:58 +02:00
Marek Lemańczyk 0535ad2b7b BuildDivisorCandidates moved to MersenneNumberDivisorGpuTester. Micro-optimizations. 2025-09-11 21:21:42 +02:00
Marek Lemańczyk 82737b99fd Micro-optimizations for the best performance in BuildDivisorCandidates.. 2025-09-11 19:07:50 +02:00
Marek Lemańczyk 11bd89d8d0 Unnecessary local variables removed. We'll now reuse local variables instead of declaring new one, where possible. resultBuffer.Dispose() called explicitly before releasing gpu context. 2025-09-11 18:57:49 +02:00
Marek Lemańczyk 0cd8cd8e7e Merge branch 'main' of https://github.com/mlemanczyk/even-perfect-numbers-scanner 2025-09-11 18:44:53 +02:00
Marek Lemańczyk 1b1697d4da Search limit for divisor sets made configurable 2025-09-11 18:41:18 +02:00
Marek Lemańczyk 5af55131d1 Merge pull request #14 from mlemanczyk/codex/restore-mutable-gpuuint128-structure
Switch GpuUInt128 back to mutable form
2025-09-11 18:39:04 +02:00
Marek Lemańczyk ab856c4995 Make GpuUInt128 mutable and update callers 2025-09-11 18:38:42 +02:00
Marek Lemańczyk 40477eca5d Merge pull request #13 from mlemanczyk/codex/check-thread-initialization-in-evenperfectbitscanner
Assign contiguous p ranges to worker threads
2025-09-11 02:36:41 +02:00
Marek Lemańczyk c1dc2e14d5 Allocate unique p ranges per thread 2025-09-11 02:36:16 +02:00
Marek Lemańczyk a63bc6ac06 Merge pull request #12 from mlemanczyk/codex/analyze-and-propose-fixes-for-evenperfectbitscanner-exceptio
Ensure GPU residue copy completes before buffer disposal
2025-09-11 02:09:56 +02:00
Marek Lemańczyk 4e53874713 Add post-copy synchronization for residue GPU scan 2025-09-11 02:09:40 +02:00
Marek Lemańczyk f17f83e326 No. of divisor cycle iterations made configurable 2025-09-11 01:20:15 +02:00
Marek Lemańczyk c8c80f2f91 Add new line after header 2025-09-11 00:59:16 +02:00
Marek Lemańczyk 9fb7b45fce Merge branch 'main' of https://github.com/mlemanczyk/even-perfect-numbers-scanner 2025-09-11 00:57:27 +02:00
Marek Lemańczyk d66c70e530 Primes limit restored 2025-09-11 00:57:24 +02:00
Marek Lemańczyk b22140004b Increment p up to 138 mln only if we don't filter p's 2025-09-11 00:57:02 +02:00
Marek Lemańczyk 45390c50db Merge pull request #11 from mlemanczyk/codex/modify-evenperfectbitscanner-for-divisor-cycles
Scan divisor cycles beyond precomputed limit
2025-09-11 00:56:09 +02:00
Marek Lemańczyk 8562696b13 Mark divisor-based candidates composite only on factor discovery 2025-09-11 00:55:40 +02:00
Marek Lemańczyk 873328b944 Merge pull request #10 from mlemanczyk/codex/modify-evenperfectbitscanner-for-mersenne-mode
Enable automatic divisor scanning in Mersenne mode
2025-09-10 22:23:06 +02:00
Marek Lemańczyk e6be18ad39 Allow divisor mode to scan all valid divisors 2025-09-10 22:22:51 +02:00
Marek Lemańczyk 4acc546d0a Merge pull request #9 from mlemanczyk/codex/implement-mersenne-divisor-check-mode
Add GPU divisor mode for Mersenne checks
2025-09-10 22:03:39 +02:00
Marek Lemańczyk 596bb7e38f Add GPU divisor tester 2025-09-10 22:03:17 +02:00
Marek Lemańczyk fda058cde0 Tiny cleanup 2025-09-10 21:13:10 +02:00