-
Notifications
You must be signed in to change notification settings - Fork 38
BTreeMap for indices_to_hash_map
#554
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
Conversation
|
Can you be more specific about what is improved? In general, accesses in a binary tree map take |
|
@aszepieniec |
|
Let's collect evidence so that we do not have to rely on intuition to determine whether merging this PR is a good idea. Or we can file this PR under "too low priority for now" and shelve it until we need it. |
|
Sounds good to me. I can redo it with `.last()` instead of `.find` and
a range set instead of `partition` to make retrieval benefit obvious.
Indicate if you would want to merge it then, pls. As for inserting
comparison the whole issue feels too small to actually analyze and
compare. I even suspect that with such small lengths of the set the
comparison won't be definite and mostly reflect other things like the
platform, `rustc` version, hardware, and such.
…On Вс, апр 20 2025 at 01:04:50 -0700, aszepieniec ***@***.***> wrote:
Let's collect evidence so that we do not have to rely on intuition to
determine whether merging this PR is a good idea.
Or we can file this PR under "too low priority for now" and shelve it
until we need it.
—
Reply to this email directly, view it on GitHub
<#554 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/APXLOT5ETX3XCLJPOWFNLJD22NIKFAVCNFSM6AAAAAB3KDGVWKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDQMJXGA2TENJUGY>.
You are receiving this because you authored the thread.Message ID:
***@***.***>
*aszepieniec*
left a comment
(Neptune-Crypto/neptune-core#554)
<#554 (comment)>
Let's collect evidence so that we do not have to rely on intuition to
determine whether merging this PR is a good idea.
Or we can file this PR under "too low priority for now" and shelve it
until we need it.
—
Reply to this email directly, view it on GitHub
<#554 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/APXLOT5ETX3XCLJPOWFNLJD22NIKFAVCNFSM6AAAAAB3KDGVWKVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDQMJXGA2TENJUGY>.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
I don't know, it's not obvious before I can see the code. I can only pass judgment afterwards. I'm happy shelving this discussion until it is clear we need this particular thing to be faster. I have a hunch that other things are much more deserving of our attention when it comes to optimization. |
|
Closed: shelved indefinitely. |
return the <.gitignore> change Revert "initial approach" This reverts commit f5f4b66. the second approach impacting a cached/deterministic/derandomized test align with the review comments replace `TestRunner` with some proper invocations replacing more `TestRunner` couple of strategies on `ChunkDictionary` `TransactionKernel` strategies `prop_compose!` `Utxo` add `Seed` and ditch `rng` invocations from block faking helpers it isn't meaningful to fuzz randomness `tests::shared` doesn't generate it's own randomness anymore last place of randomness in `tests::shared` ditched semantically finished ready for review ditch #proofs_presaved_compat Update src/models/state/wallet/secret_key_material.rs Co-authored-by: aszepieniec <[email protected]> the comment on the `prop_assume` for seeds an import unmerge ditch a temp binding propose solution for `Hash`-based collections in `proptest` expand the proposal to the place where the discussion is changes are moved into Neptune-Crypto#554 finilize `catch_inconsistent_shares` remove few commented out lines consistent naming
return the <.gitignore> change Revert "initial approach" This reverts commit f5f4b66. the second approach impacting a cached/deterministic/derandomized test align with the review comments replace `TestRunner` with some proper invocations replacing more `TestRunner` couple of strategies on `ChunkDictionary` `TransactionKernel` strategies `prop_compose!` `Utxo` add `Seed` and ditch `rng` invocations from block faking helpers it isn't meaningful to fuzz randomness `tests::shared` doesn't generate it's own randomness anymore last place of randomness in `tests::shared` ditched semantically finished ready for review ditch #proofs_presaved_compat Update src/models/state/wallet/secret_key_material.rs Co-authored-by: aszepieniec <[email protected]> the comment on the `prop_assume` for seeds an import unmerge ditch a temp binding propose solution for `Hash`-based collections in `proptest` expand the proposal to the place where the discussion is changes are moved into Neptune-Crypto#554 finilize `catch_inconsistent_shares` remove few commented out lines consistent naming
return the <.gitignore> change Revert "initial approach" This reverts commit f5f4b66. the second approach impacting a cached/deterministic/derandomized test align with the review comments replace `TestRunner` with some proper invocations replacing more `TestRunner` couple of strategies on `ChunkDictionary` `TransactionKernel` strategies `prop_compose!` `Utxo` add `Seed` and ditch `rng` invocations from block faking helpers it isn't meaningful to fuzz randomness `tests::shared` doesn't generate it's own randomness anymore last place of randomness in `tests::shared` ditched semantically finished ready for review ditch #proofs_presaved_compat Update src/models/state/wallet/secret_key_material.rs Co-authored-by: aszepieniec <[email protected]> the comment on the `prop_assume` for seeds an import unmerge ditch a temp binding propose solution for `Hash`-based collections in `proptest` expand the proposal to the place where the discussion is changes are moved into Neptune-Crypto#554 finilize `catch_inconsistent_shares` remove few commented out lines consistent naming reflect in the name that "the chunk indices are independent of the absolute index set" fix staling of some tests
return the <.gitignore> change Revert "initial approach" This reverts commit f5f4b66. the second approach impacting a cached/deterministic/derandomized test align with the review comments replace `TestRunner` with some proper invocations replacing more `TestRunner` couple of strategies on `ChunkDictionary` `TransactionKernel` strategies `prop_compose!` `Utxo` add `Seed` and ditch `rng` invocations from block faking helpers it isn't meaningful to fuzz randomness `tests::shared` doesn't generate it's own randomness anymore last place of randomness in `tests::shared` ditched semantically finished ready for review ditch #proofs_presaved_compat Update src/models/state/wallet/secret_key_material.rs Co-authored-by: aszepieniec <[email protected]> the comment on the `prop_assume` for seeds an import unmerge ditch a temp binding propose solution for `Hash`-based collections in `proptest` expand the proposal to the place where the discussion is changes are moved into Neptune-Crypto#554 finilize `catch_inconsistent_shares` remove few commented out lines consistent naming reflect in the name that "the chunk indices are independent of the absolute index set" fix staling of some tests rebase adaptation
This stems from #543 but focuses on the different aspect. It would not be much reasonable to change a function because of a test, but I looked into itself and that seems it only benefits from switching, as this improves
find. (Theproptestbenefits by the determinism ofBTreeMap.)