solana/gossip/src
behzad nouri 604ca9316c
includes zero weighted entries in WeightedShuffle (#22829)
Current WeightedShuffle implementation excludes zero weighted entries
from the shuffle:
https://github.com/solana-labs/solana/blob/13e631dcf/gossip/src/weighted_shuffle.rs#L29-L30

Though mathematically this might make more sense, for our use-cases
(turbine specifically), this results in less efficient code:
https://github.com/solana-labs/solana/blob/13e631dcf/core/src/cluster_nodes.rs#L409-L430

This commit changes the implementation so that zero weighted indices are
also included in the shuffle but appear only at the end after non-zero
weighted indices.
2022-01-31 16:23:50 +00:00
..
cluster_info.rs Pacify clippy 2022-01-21 19:12:57 -08:00
cluster_info_metrics.rs limits gossip vote stats to the top most voted slots (#22416) 2022-01-10 21:23:41 +00:00
contact_info.rs Tpu vote 1.7 (#20187) (#20494) 2021-10-07 09:38:23 +00:00
crds.rs Rename "trusted" to "known" in `validators/` (#21197) 2021-11-12 11:57:55 -07:00
crds_entry.rs adds metrics tracking crds writes and votes (#20953) 2021-10-26 13:02:30 +00:00
crds_gossip.rs adds metrics tracking crds writes and votes (#20953) 2021-10-26 13:02:30 +00:00
crds_gossip_error.rs Move gossip modules into solana-gossip crate (#17352) 2021-05-26 09:15:46 -06:00
crds_gossip_pull.rs Optimize packet dedup (#22571) 2022-01-19 13:58:20 -08:00
crds_gossip_push.rs Optimize packet dedup (#22571) 2022-01-19 13:58:20 -08:00
crds_shards.rs adds metrics tracking crds writes and votes (#20953) 2021-10-26 13:02:30 +00:00
crds_value.rs Refactor: move simple vote parsing to runtime (#22537) 2022-01-20 10:39:21 +08:00
deprecated.rs Add sampling logic and DuplicateSlotRepairStatus module (#18721) 2021-07-21 11:15:08 -07:00
duplicate_shred.rs tracks erasure coding shreds' indices explicitly (#21822) 2021-12-19 22:37:55 +00:00
epoch_slots.rs Move gossip modules into solana-gossip crate (#17352) 2021-05-26 09:15:46 -06:00
gossip_error.rs convert std::sync::mpsc to crossbeam_channel (#22264) 2022-01-11 02:44:46 -08:00
gossip_service.rs convert std::sync::mpsc to crossbeam_channel (#22264) 2022-01-11 02:44:46 -08:00
lib.rs Limit transaction forwarding from banking_stage (#19940) 2021-09-21 08:49:41 -07:00
main.rs passes through --allow-private-addr to validators in system perf tests (#18876) 2021-07-29 19:04:45 +00:00
ping_pong.rs Move gossip modules into solana-gossip crate (#17352) 2021-05-26 09:15:46 -06:00
weighted_shuffle.rs includes zero weighted entries in WeightedShuffle (#22829) 2022-01-31 16:23:50 +00:00