-
Notifications
You must be signed in to change notification settings - Fork 248
Prime Number Functions #400
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Draft
mborland
wants to merge
117
commits into
boostorg:develop
Choose a base branch
from
mborland:prime_functions
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from 1 commit
Commits
Show all changes
117 commits
Select commit
Hold shift + click to select a range
4015fbc
Initial Commit
mborland 3ee737b
Changed init of least_divisors
mborland 9512bb6
Cleanup
mborland d762398
Cleanup
mborland 5375a1d
Added additional tests, benchmarks, and overflow checks
mborland a684dbd
Fix include guard naming
mborland 3e4db8a
Complete revamp of algorithm. Hide implementation behind detail names…
mborland dd8a61c
Re-added support and tests for boost::multiprecision::cpp_int [CI SKIP]
mborland 4debd0d
Changed benchmarks to support threading [CI SKIP]
mborland 2a7e031
Added execution policies. Increased performance for dynamically linke…
mborland a68910e
Added massively parallel section to prime_sieve. Increased length of …
mborland 386cc4d
Add test for multi-threading section and add to Jamfile [CI SKIP]
mborland d79eddb
Added prime sieve to existing prime numbers documentation [CI SKIP]
mborland 3fdf917
Revisions to documentation and send to CI
mborland 6ca245b
Changed include guards to be compatible with C++11 and 14.
mborland 7d3a520
Fixed doc, and ensured that primes are sorted
mborland a1ac504
Fixed documentation. Complete re-design of mask_sieve algo. Pre-gener…
mborland 35d2aa1
All vectors now init {}. Change include guards. Replace raw pointer.
mborland 243a299
Changed from [lower_bound, upper_bound] to [lower_bound, upper_bound)…
mborland 2eadeff
Fixed documentation [CI SKIP]
mborland 173ce0d
segmented_sieve now runs using std::async. [CI SKIP]
mborland 23fba36
Removed extraneous operations [CI SKIP]
mborland f7b45fd
Cleanup style, and delete unused function. Enable par_unseq mask_siev…
mborland d687d5e
Small Cleanup and limit reduction for sieving methods.
mborland e51d727
Add pritchard's sub-linear algo [WIP][CI SKIP]
mborland 1245d27
Added pritchards segmented sieve [WIP][CI SKIP]
mborland 2052081
Implemented binary search in SetS [WIP][CI SKIP]
mborland 9f81e0d
Tests and performance compairsons [WIP][CI SKIP]
mborland 55ea045
More tests. Segmented sieve small cases fix
mborland 31a2105
Imporve segmented performance [WIP][CI SKIP]
mborland f545928
Replaced SetS members with stl algos [WIP][CI SKIP]
mborland d780db5
Replace searching with tracked index. General performance improvement…
mborland 2639bed
Minor change to SetS remove [WIP][CI SKIP]
mborland 94fc1ac
Pritchard segmented performance improvements [WIP][CI SKIP]
mborland 6ebb906
Fixed failed test [WIP][CI SKIP]
mborland 0521854
Various performance improvements [WIP][CI SKIP]
mborland b233a80
Build primes in situ [WIP][CI SKIP]
mborland f95c2cf
Refactoring. Now requires C++17
mborland 8e2e29a
Add segmented bit sieve [WIP][CI SKIP]
mborland 1a24f16
Removed segmented bit sieve and excess headers [CI SKIP]
mborland c63f1f1
Added wheel class [WIP][CI SKIP]
b7d4256
Added fixed mod 210 wheel [WIP][CI SKIP]
fbc38c8
New segmented sieve algorithm [WIP][CI SKIP]
2e46b81
Added interval sieve to performance test [CI SKIP]
6759ede
Added unit tests [WIP][CI SKIP]
1b40403
Implemented interval sieve [CI SKIP]
97244be
Performance improvements and bug fixes [CI SKIP]
fa04133
Significant refactoring [WIP][CI SKIP]
c4a89c8
Seq policy actually sequential [CI SKIP]
91836f6
Fixes for multiprecision and policies [CI SKIP]
6d6b19f
cpp_int now passes all tests [CI SKIP]
81e4a6c
mpz_int passes unit tests [CI SKIP]
0b8f1d5
Documentation edits [CI SKIP]
mborland 5ba0a1d
Replace magic number w variable template [CI SKIP]
mborland 8e240f7
Better prime_range implementation [WIP][CI SKIP]
mborland 7c0cbbf
Merge branch 'develop' into prime_functions
mborland 3d9b77c
Minor changes and doc updates
mborland 302fb5f
Merge branch 'develop' into prime_functions
mborland 9792a23
Minor change to policy handling [CI SKIP]
mborland 84a69f0
diffs from @jzmaddock [CI SKIP]
mborland 5dc3523
Implemented linear sieve with iterators
mborland 0dbe69c
Sanitize linear prime sieve and add wheel
mborland eee2c86
Added container method
mborland f5d789a
Improved Linear Algo and testing
mborland f2277e3
Merge branch 'prime_iterator' into mborland/prime_iterator
mborland 1d2f03c
Linear sieve with output iterator and refactoring [CI SKIP][WIP]
mborland 0d9d31b
Merge branch 'prime_functions' into mborland/prime_functions
mborland c361cde
Linear output iterator and refactoring [CI SKIP]
mborland 66c2642
Added prime approximation function
mborland de1f331
prime approximation function for a range
mborland eaea5f9
Added interval sieve for output iterators
mborland e8196f3
Merge remote-tracking branch 'origin/develop' into prime_iterator
mborland cb5d978
Interval sieve with OI passes unit tests [CI SKIP]
mborland 830ccc4
Merge branch 'prime_iterator' into prime_functions
mborland 4dc3eb2
Add sequential composite sieve with OI [CI SKIP]
mborland 90be100
Add threaded method. Currently INOP [CI SKIP]
mborland a772782
Threaded method completed and validated [CI SKIP]
mborland 2d1461f
Resolves issue #439 [CI SKIP]
mborland e7cdb32
Updated benchmarks [CI SKIP]
mborland 29eef88
Correct benchmark memory allocation [CI SKIP]
mborland b5a28b5
Add linear sieve direct from stepanov [CI SKIP]
mborland 6c26b53
First draft of eratosthenes w/ wheel [CI SKIP]
mborland 980bfe7
Fixes for multiprecision types [CI SKIP]
mborland 07e6f58
wheel sieve passes standard battery [CI SKIP]
mborland 86b9e5a
Add prime sieve wrapper [CI SKIP]
mborland f19149e
Implement dual interface for prime sieve [CI SKIP]
mborland 1ad0d51
Implement dual interface for prime_range [CI SKIP]
mborland 5f6d06a
Remove uneeded vals from wheel [CI SKIP]
mborland 670b06d
Internal data structure changes [CI SKIP]
mborland 7c7a491
Rename type alias [CI SKIP]
mborland e507ba5
Swap mod 210 wheel for mod 30 wheel [CI SKIP]
mborland c9cb41c
Add simple bitset file [CI SKIP]
mborland e8b71a0
Reduced unnecessary traversing of bitset [CI SKIP]
mborland d649f65
Updated bitset [CI SKIP]
mborland ed98892
Add resize to simple_bitset [CI SKIP]
mborland c3b3934
Implement simple_bitset as internal data structure
mborland e9aa05d
Add prime-composite ratio to wheel to size bitset
mborland 7c5d792
minor refactoring [CI SKIP]
mborland 2bbfad2
Fix PrimeRatio [CI SKIP]
mborland ddc5c8a
Improved prime range [CI SKIP]
mborland f517c00
Add hamming weight calc to simple bitset [CI SKIP]
mborland a356b47
Add forward and reverse bit scan to simple bitset
mborland 2212e45
Fix count, enable bit scan by type, cleanup
mborland b12e2dc
Add dual interface. Avoid using multiprecision
mborland f39a4d8
Seperate approximation for multiprecision types
mborland eafbefc
Remove all mulitples of wheel basis from bitset
mborland cb36b89
IntervalSieve performance improvements [CI SKIP]
mborland 16c2354
Add small prime optimization [CI SKIP]
mborland 0b1a690
Add small primes to full sieve [CI SKIP]
mborland 8c883d1
Merge remote-tracking branch 'origin/develop' into prime_functions
mborland f357e0f
Implement bit scanning in sieve [CI SKIP]
mborland a4f2d89
Fix minor errors
mborland d16e562
Add trial divison to verify tests [CI SKIP]
mborland 91be2c3
Fix small primes [CI SKIP]
mborland d9ae8c2
Revert interval_prime_sieve.hpp to f39a4d8
mborland 7d22010
Remove cruft [CI SKIP]
mborland b541987
Continue cleanup [CI SKIP]
mborland File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Remove all mulitples of wheel basis from bitset
[CI SKIP]
- Loading branch information
commit eafbefc6e772938e60f2cb782a1d52455d92d750
There are no files selected for viewing
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
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
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
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.
Uh oh!
There was an error while loading. Please reload this page.