Conversation
MrJ-am
marked this pull request as draft
September 13, 2026 20:58
MrJ-am
marked this pull request as ready for review
September 13, 2026 21:50
Skip redundant sparse writes whose cofactors are divisible by 3 or 5, retain fresh state per pass, and report algorithm=wheel. Extend independent period-boundary and native-memory checks. Document the balanced eight-round benchmark: median throughput improves by 29.6% against the preceding Lisp version. Link the pinned raw measurements and reproduction protocol. The measured Lisp sources match a357b66. Only PrimeLisp/solution_3 is changed.
MrJ-am
marked this pull request as draft
September 16, 2026 13:12
This was referenced Sep 16, 2026
Contributor
|
@MrJ-am I'm going to have to ask you to stop and regroup. Please:
Based on the first point, I will close this PR and the other two you've opened. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Series: base #1084, wheel #1085, other #1082.
This PR now forms the
otherpart of a three-category C/Rust/Common Lisp comparison. It retains the original Common Lisp solution 3 kernel: SBCL native storage, AVX2 multi-composite masks, fresh allocation and explicit release on every pass. The wheel changes remain in a separate PR.It also adds Rust solution 9 with dense/sparse marking and 32 KiB block traversal, conservatively tagged
other, and improves the existing C solution 5 pattern-extension sieve with an eight-write sparse period kernel. Runtime stride decomposition transfers the idea from Lisp/Rust to C. The new Rust entry preserves solution 1's base-category behavior.Four paired five-second samples on one logical CPU of an AMD EPYC 9V74, limit 1,000,000, gave these medians:
The C gain is 8.3% at identical fixed parameters, with improvement in all four paired rounds. Separate default-autotuning checks were inconclusive (only one of three paired wins); this is not a claim of an established default-mode speedup. Lisp block-size and sparse-unrolling changes were rejected for lack of a stable gain.
Commands, raw measurements and limits are included. C's independent full-flag check covers both extension algorithms, three block sizes and limits through 10M. Rust optimized/debug tests and Lisp full flags, memory guards, lifetimes and 10M counts pass. No external sieve or prior pass result is reused.
Dockerfiles are included but Docker was unavailable locally. Draft pending container/CI review. The READMEs credit original authors, explain algorithm tags and document development with ChatGPT/Codex.