Optimize packet dedup (#22571) (#22585)

* Use bloom filter to dedup packets

* dedup first

* Update bloom/src/bloom.rs

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* Update core/src/sigverify_stage.rs

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* Update core/src/sigverify_stage.rs

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* Update core/src/sigverify_stage.rs

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>

* fixup

* fixup

* fixup

Co-authored-by: Trent Nelson <trent.a.b.nelson@gmail.com>
(cherry picked from commit d343713f61)

# Conflicts:
#	Cargo.lock
#	core/Cargo.toml
#	core/src/banking_stage.rs
#	core/src/sigverify_stage.rs
#	gossip/Cargo.toml
#	perf/Cargo.toml
#	programs/bpf/Cargo.lock
#	runtime/Cargo.toml

Co-authored-by: anatoly yakovenko <anatoly@solana.com>
This commit is contained in:
mergify[bot]
2022-01-20 02:51:49 +00:00
committed by GitHub
parent 37e9076db0
commit dbf9a32883
20 changed files with 303 additions and 117 deletions

View File

@ -2335,9 +2335,9 @@ checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3"
[[package]]
name = "serde"
version = "1.0.130"
version = "1.0.133"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f12d06de37cf59146fbdecab66aa99f9fe4f78722e3607577a5375d66bd0c913"
checksum = "97565067517b60e2d1ea8b268e59ce036de907ac523ad83a0475da04e818989a"
dependencies = [
"serde_derive",
]
@ -2353,9 +2353,9 @@ dependencies = [
[[package]]
name = "serde_derive"
version = "1.0.130"
version = "1.0.133"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d7bc1a1ab1961464eae040d96713baa5a724a8152c1222492465b54322ec508b"
checksum = "ed201699328568d8d08208fdd080e3ff594e6c422e438b6705905da01005d537"
dependencies = [
"proc-macro2 1.0.24",
"quote 1.0.6",
@ -2560,6 +2560,23 @@ dependencies = [
"tokio-stream",
]
[[package]]
name = "solana-bloom"
version = "1.9.5"
dependencies = [
"bv",
"fnv",
"log",
"rand 0.7.3",
"rayon",
"rustc_version 0.4.0",
"serde",
"serde_derive",
"solana-frozen-abi 1.9.5",
"solana-frozen-abi-macro 1.9.5",
"solana-sdk",
]
[[package]]
name = "solana-bpf-loader-program"
version = "1.9.5"
@ -3174,10 +3191,12 @@ name = "solana-perf"
version = "1.9.5"
dependencies = [
"bincode",
"bv",
"caps",
"curve25519-dalek 3.2.0",
"dlopen",
"dlopen_derive",
"fnv",
"lazy_static",
"libc",
"log",
@ -3185,6 +3204,7 @@ dependencies = [
"rand 0.7.3",
"rayon",
"serde",
"solana-bloom",
"solana-logger 1.9.5",
"solana-metrics",
"solana-rayon-threadlimit",
@ -3371,6 +3391,7 @@ dependencies = [
"serde",
"serde_derive",
"solana-address-lookup-table-program",
"solana-bloom",
"solana-bucket-map",
"solana-compute-budget-program",
"solana-config-program",