Commit Graph
100 Commits
Author SHA1 Message Date
Marek Lemańczyk 458cb77227 We'll output to console not only primes, but also composites. Output to console standardized on ConsoleInterval 2025-09-21 12:56:30 +02:00
Marek Lemańczyk 9a054542e6 Merge pull request #57 from mlemanczyk/codex/optimize-memory-usage-for-mersenne-method
Stream the by-divisor GPU tester without retaining divisors
2025-09-21 12:14:24 +02:00
Marek Lemańczyk f44e51c85e Stream by-divisor GPU checks without retaining divisors 2025-09-21 12:14:08 +02:00
Marek Lemańczyk ffc37f3584 Merge pull request #56 from mlemanczyk/codex/analyze-and-fix-accessviolationexception
Wire by-divisor GPU batching to scanner configuration
2025-09-21 11:42:03 +02:00
Marek Lemańczyk 3fd39c3d34 Wire by-divisor GPU batching to scanner configuration 2025-09-21 11:41:51 +02:00
Marek Lemańczyk 085e6e0ceb Merge pull request #55 from mlemanczyk/codex/analyze-exception-in-bydivisor-method
Implement lookup-based Mod10 for GPU compatibility
2025-09-21 11:24:04 +02:00
Marek Lemańczyk ae19ce25a7 Implement lookup-based Mod10 for GPU compatibility 2025-09-21 11:23:52 +02:00
Marek Lemańczyk c58c87c0ec Merge pull request #54 from mlemanczyk/codex/implement-bydivisor-method-for-prime-testing
Add GPU by-divisor scanning mode
2025-09-21 11:12:06 +02:00
Marek Lemańczyk eb0a5b2655 Log by-divisor progress updates 2025-09-21 11:11:56 +02:00
Marek Lemańczyk 5ce0cf74fc Require filtered primes for by-divisor scanning 2025-09-21 11:11:51 +02:00
Marek Lemańczyk b705488b35 Document by-divisor option in CLI help 2025-09-21 10:59:24 +02:00
Marek Lemańczyk b8b34766ae Merge pull request #53 from mlemanczyk/codex/add-mod3,-mod5,-mod7,-mod8,-mod10-methods
Add optimized modulo helpers and update GPU residue steps
2025-09-21 10:14:40 +02:00
Marek Lemańczyk 95a0b030f6 Add optimized modulo helpers for unsigned integers 2025-09-21 10:14:26 +02:00
Marek Lemańczyk 860d64baba Tiny cleanup 2025-09-21 09:51:05 +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 3e0102a404 Mod10 benchmarks added 2025-09-21 06:28:42 +02:00
Marek Lemańczyk bba78dfff7 Cleanup 2025-09-21 06:17:45 +02:00
Marek Lemańczyk 1499f6abe1 Benchmarks extended. Small optimizations. 2025-09-21 06:15:14 +02:00
Marek Lemańczyk 53554ffd3d Restored faster version of the calculations 2025-09-21 05:40:13 +02:00
Marek Lemańczyk 5d8450192d Ignore list updated 2025-09-21 05:30:49 +02:00
Marek Lemańczyk c7e1ac60d2 Merge pull request #52 from mlemanczyk/codex/optimize-mersennenumberresiduegputester.scan-method
Restore struct residue args and add benchmarking project
2025-09-21 05:29:28 +02:00
Marek Lemańczyk 5ab69f8c01 Restore struct residue args and add residue benchmark project 2025-09-21 05:29:13 +02:00
Marek Lemańczyk 4fe701425e Micro-optimizations 2025-09-21 04:38:01 +02:00
Marek Lemańczyk f53853f6ff Micro optimization to take ref to orders once and re-use it, until it changes for the last block. 2025-09-21 04:27:51 +02:00
Marek Lemańczyk 186895e174 Merge branch 'main' of https://github.com/mlemanczyk/even-perfect-numbers-scanner 2025-09-21 04:15:53 +02:00
Marek Lemańczyk b464985596 Restored maxK override based on command line parameter 2025-09-21 04:14:21 +02:00
Marek Lemańczyk 99ef0abd50 Merge pull request #51 from mlemanczyk/codex/optimize-uint128extensions.mod10_8_5_3-method
Optimize Mod10_8_5_3 remainder computation
2025-09-21 04:13:08 +02:00
Marek Lemańczyk 72d66e293d Optimize simultaneous remainder calculation 2025-09-21 04:12:34 +02:00
Marek Lemańczyk 05ca1e0237 Merge pull request #50 from mlemanczyk/codex/finalize-revert-of-commit-2d024cc
Restore pre-residue mode behavior and tests
2025-09-21 04:05:32 +02:00
Marek Lemańczyk aa683215b2 Restore pre-residue mode behavior and tests 2025-09-21 04:05:16 +02:00
Marek Lemańczyk 23e8d306b1 Breaking change partially reverted 2025-09-21 02:48:51 +02:00
Marek Lemańczyk 8a6fc0c6a5 Revert "Merge pull request #24 from mlemanczyk/codex/modify-evenperfectbitscanner-for-residue-mode"
This reverts commit 2d024cc708, reversing
changes made to b1c29ad16e.
2025-09-21 02:25:18 +02:00
Marek Lemańczyk deb25796a8 Merge pull request #49 from mlemanczyk/codex/analyze-commit-for-evenperfectbitscanner-issue
Fix GPU residue tester iteration and add regression tests
2025-09-21 00:14:47 +02:00
Marek Lemańczyk f9b4f912e2 Fix GPU residue tester iteration and add regression tests 2025-09-21 00:14:33 +02:00
Marek Lemańczyk 4650faed58 Merge pull request #48 from mlemanczyk/codex/analyze-commit-causing-calculation-errors
Guard residue order kernels against stale cycle cache entries
2025-09-20 23:35:13 +02:00
Marek Lemańczyk 0ce17d19ae Guard residue order kernels against stale cycle cache entries 2025-09-20 23:34:47 +02:00
Marek Lemańczyk 88d58c6176 Merge pull request #47 from mlemanczyk/codex/analyze-evenperfectbitscanner-results
Ensure GPU residue copies are synchronized and cover high divisor sets
2025-09-20 22:49:54 +02:00
Marek Lemańczyk 7449f146d9 Ensure GPU residue copies are synchronized and cover high divisor sets 2025-09-20 22:49:37 +02:00
Marek Lemańczyk 633c94906a Merge pull request #46 from mlemanczyk/codex/investigate-evenperfectbitscanner-calculation-errors
Harden GPU divisor scan buffer handling
2025-09-20 21:29:36 +02:00
Marek Lemańczyk 8e686fbe6e Harden GPU divisor scan buffer handling 2025-09-20 21:29:22 +02:00
Marek Lemańczyk 2f07b776c6 Merge pull request #45 from mlemanczyk/codex/investigate-evenperfectbitscanner-output-errors
Align GPU prime sieve with CPU GCD heuristic
2025-09-20 19:48:50 +02:00
Marek Lemańczyk 1ec71f8cfd Align GPU prime sieve with CPU GCD heuristic 2025-09-20 19:48:36 +02:00
Marek Lemańczyk a5fafd6ebf Merge pull request #44 from mlemanczyk/codex/investigate-evenperfectbitscanner-incorrect-results
Zero GPU residue result buffer before scanning
2025-09-20 19:26:57 +02:00
Marek Lemańczyk 7ccac87df3 Zero GPU residue result buffer before scanning 2025-09-20 19:26:45 +02:00
Marek Lemańczyk 1714f39f81 Merge pull request #43 from mlemanczyk/codex/investigate-evenperfectbitscanner-calculations
Serialize GPU prime sieve per accelerator
2025-09-20 19:00:41 +02:00
Marek Lemańczyk 47e694cdc1 Serialize GPU prime sieve per accelerator 2025-09-20 19:00:27 +02:00
Marek Lemańczyk ab133d23c1 Merge pull request #42 from mlemanczyk/codex/analyze-program-execution-path-issues
Serialize GPU leases with per-accelerator locks
2025-09-20 18:19:48 +02:00
Marek Lemańczyk abe695788b Serialize GPU leases with per-accelerator locks 2025-09-20 18:19:21 +02:00
Marek Lemańczyk 2683dfcff1 Merge pull request #41 from mlemanczyk/codex/extend-tests-for-mersennenumberresiduegputester
Expand residue thread coverage tests
2025-09-20 17:29:04 +02:00
Marek Lemańczyk 33aeb88c87 Expand residue thread coverage tests 2025-09-20 17:28:34 +02:00
Marek Lemańczyk e148f5b6bc Merge pull request #40 from mlemanczyk/codex/expand-tests-for-mersennenumberresiduegputester
Expand GPU coverage for even perfect candidate tests
2025-09-20 10:50:23 +02:00
Marek Lemańczyk 94b314df23 Expand GPU coverage for even perfect candidate tests 2025-09-20 10:50:10 +02:00
Marek Lemańczyk fb7734528f Tiny cleanup 2025-09-20 10:48:12 +02:00
Marek Lemańczyk d78503eade Reapply "Merge pull request #35 from mlemanczyk/codex/debug-residue-iteration-in-evenperfectbitscanner"
This reverts commit cc1967231c.
2025-09-20 10:46:53 +02:00
Marek Lemańczyk 5e6e762556 Reapply "Merge pull request #34 from mlemanczyk/codex/fix-residue-method-iteration-issue"
This reverts commit 9a199dc258.
2025-09-20 10:45:01 +02:00
Marek Lemańczyk b676d89293 Merge branch 'main' of https://github.com/mlemanczyk/even-perfect-numbers-scanner 2025-09-20 09:41:10 +02:00
Marek Lemańczyk a9e4dc98c4 Revert "Merge pull request #38 from mlemanczyk/codex/fix-residue-method-iteration-issue"
This reverts commit afcc8d87f9, reversing
changes made to 5702e45169.
2025-09-20 09:39:53 +02:00
Marek Lemańczyk cc1967231c Revert "Merge pull request #35 from mlemanczyk/codex/debug-residue-iteration-in-evenperfectbitscanner"
This reverts commit bf1a498456, reversing
changes made to 66ac013abc.
2025-09-20 09:35:34 +02:00
Marek Lemańczyk 9a199dc258 Revert "Merge pull request #34 from mlemanczyk/codex/fix-residue-method-iteration-issue"
This reverts commit 66ac013abc, reversing
changes made to 52a27dfe61.
2025-09-20 09:35:10 +02:00
Marek Lemańczyk e2eea432c5 Merge pull request #39 from mlemanczyk/codex/fix-evenperfectbitscanner-prime-detection
Fix GPU residue false positives for Mersenne primes
2025-09-20 09:16:11 +02:00
Marek Lemańczyk 662cfa8cc7 Reset residue toggle after default-limit residue test 2025-09-20 09:14:29 +02:00
Marek Lemańczyk 5420523a0a Restored outputting of candidates which failed some tests 2025-09-20 08:30:20 +02:00
Marek Lemańczyk afcc8d87f9 Merge pull request #38 from mlemanczyk/codex/fix-residue-method-iteration-issue
Fix residue iteration with filtered primes
2025-09-20 05:50:00 +02:00
Marek Lemańczyk 8334b87ead Restore indentation for transform selector 2025-09-20 05:49:45 +02:00
Marek Lemańczyk 5702e45169 Merge pull request #37 from mlemanczyk/codex/fix-residue-method-iteration-issue
Write only prime residue results
2025-09-20 05:25:13 +02:00
Marek Lemańczyk 6f692e93ef Write only prime residue results 2025-09-20 05:25:00 +02:00
Marek Lemańczyk 68179b14d7 Merge pull request #36 from mlemanczyk/codex/fix-residue-iteration-issue-in-output
Ensure residue composite flag is thread-local
2025-09-20 05:09:28 +02:00
Marek Lemańczyk b3272cf07e Ensure residue composite flag is thread-local 2025-09-20 05:09:12 +02:00
Marek Lemańczyk bf1a498456 Merge pull request #35 from mlemanczyk/codex/debug-residue-iteration-in-evenperfectbitscanner
Prevent residue filter from skipping primes after reaching maxP
2025-09-20 04:53:36 +02:00
Marek Lemańczyk 1555453848 Prevent premature stop when filtering primes 2025-09-20 04:52:03 +02:00
Marek Lemańczyk 66ac013abc Merge pull request #34 from mlemanczyk/codex/fix-residue-method-iteration-issue
Fix residue kernel modulus reduction for residue Mersenne scan
2025-09-20 04:24:25 +02:00
Marek Lemańczyk ee9c151eaa Fix residue kernel modulus reduction and add regression test 2025-09-20 04:24:04 +02:00
Marek Lemańczyk 52a27dfe61 Merge pull request #33 from mlemanczyk/codex/verify-divisor-set-in-mersenne=residue
Align residue GPU divisor limit with divisor mode
2025-09-20 03:51:06 +02:00
Marek Lemańczyk 2d9a261867 Align residue GPU divisor limit with divisor mode 2025-09-20 03:50:36 +02:00
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