mirror of
https://github.com/sigp/lighthouse.git
synced 2026-04-18 05:18:30 +00:00
* Add peerdas KZG library and use it for data column construction and cell kzg verification (#5701, #5941, #6118, #6179) Co-authored-by: kevaundray <kevtheappdev@gmail.com> * Update `rust_eth_kzg` crate to published version. * Update kzg metrics buckets. * Merge branch 'unstable' into peerdas-kzg * Update KZG version to fix windows mem allocation. * Refactor common logic from build sidecar and reconstruction. Remove unnecessary `needless_lifetimes`. Co-authored-by: realbigsean <sean@sigmaprime.io> * Copy existing trusted setup into `PeerDASTrustedSetup` for consistency and maintain `--trusted-setup` functionality. * Merge branch 'unstable' into peerdas-kzg * Merge branch 'peerdas-kzg' of github.com:jimmygchen/lighthouse into peerdas-kzg * Merge branch 'unstable' into peerdas-kzg * Merge branch 'unstable' into peerdas-kzg * Load PeerDAS KZG only if PeerDAS is enabled.
32 lines
1.3 KiB
Rust
32 lines
1.3 KiB
Rust
use c_kzg::KzgSettings;
|
|
use criterion::{criterion_group, criterion_main, Criterion};
|
|
use eth2_network_config::TRUSTED_SETUP_BYTES;
|
|
use kzg::TrustedSetup;
|
|
use rust_eth_kzg::{DASContext, TrustedSetup as PeerDASTrustedSetup};
|
|
|
|
pub fn bench_init_context(c: &mut Criterion) {
|
|
let trusted_setup: TrustedSetup = serde_json::from_reader(TRUSTED_SETUP_BYTES)
|
|
.map_err(|e| format!("Unable to read trusted setup file: {}", e))
|
|
.expect("should have trusted setup");
|
|
|
|
c.bench_function(&format!("Initialize context rust_eth_kzg"), |b| {
|
|
b.iter(|| {
|
|
const NUM_THREADS: usize = 1;
|
|
let trusted_setup = PeerDASTrustedSetup::from(&trusted_setup);
|
|
DASContext::with_threads(&trusted_setup, NUM_THREADS)
|
|
})
|
|
});
|
|
c.bench_function(&format!("Initialize context c-kzg (4844)"), |b| {
|
|
b.iter(|| {
|
|
let trusted_setup: TrustedSetup = serde_json::from_reader(TRUSTED_SETUP_BYTES)
|
|
.map_err(|e| format!("Unable to read trusted setup file: {}", e))
|
|
.expect("should have trusted setup");
|
|
KzgSettings::load_trusted_setup(&trusted_setup.g1_points(), &trusted_setup.g2_points())
|
|
.unwrap()
|
|
})
|
|
});
|
|
}
|
|
|
|
criterion_group!(benches, bench_init_context);
|
|
criterion_main!(benches);
|