Nodes store complete routes as uint-based types#35
Open
PatrickCronin wants to merge 7 commits intopcronin/performance-feature-branchfrom
Open
Nodes store complete routes as uint-based types#35PatrickCronin wants to merge 7 commits intopcronin/performance-feature-branchfrom
PatrickCronin wants to merge 7 commits intopcronin/performance-feature-branchfrom
Conversation
Pull Request Test Coverage Report for Build 3808664512
💛 - Coveralls |
Owner
Author
|
Interesting, there's a few issues on the Internet that seem to suggest there was issues with profiling on OS X (I've been using an M1 MacBook Pro). For interest's sake I ran the profiles on an other Xeon-based server running a flavor of linux. The bitslice program ran faster again, although this time it was closer.
The profiles now contain boxes from the program, so at least I've got something to look at that makes sense. |
ab8dd10 to
413ca9a
Compare
f6dc114 to
b8782e3
Compare
413ca9a to
4bcfa32
Compare
4bcfa32 to
0df0069
Compare
3191ad4 to
919d6ed
Compare
0df0069 to
165a329
Compare
919d6ed to
1bb8216
Compare
165a329 to
4ee17a1
Compare
ac52555 to
8f16126
Compare
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.
We think a uint-based type is possibly more suitable for internally representing a rstrie than the bitslice type (which is currently implemented as []byte). Since we'll need to use uint32 for IPv4 route parts and uint128 (a custom type) for IPv6 route parts, each node will necessary contain a uint32 or a uint128, and thus we think having each node store its complete representation (conceptually, the route that the node represents) instead of just the bits unique to the node without consideration of the nodes and thus bits of the node's parents.