From 4e2010f2d9570487f8a5a562b6a506e260c001d5 Mon Sep 17 00:00:00 2001 From: Niklas Adolfsson Date: Mon, 17 Feb 2020 12:25:07 +0100 Subject: [PATCH] [ci benches]: use `all-features` (#11496) * [ci benches]: use `all-features` Our benches are hidden behind feature flags, this PR enables to type check on those. `--all` is deprecated * [bench verification]: remove block_family_partial * [global allocator]: rm `feature=memory_profiling` The `memory_profiling` feature doesn't work because `parity_util_mem` crate configures it globally. --- .gitlab-ci.yml | 2 +- Cargo.toml | 7 ------- ethcore/verification/benches/verification.rs | 18 ++---------------- parity/lib.rs | 7 ------- 4 files changed, 3 insertions(+), 31 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 67eb80cf4..0f1ae9f82 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -96,7 +96,7 @@ cargo-check-benches: stage: test <<: *docker-cache-status script: - - time cargo check --all --benches --target $CARGO_TARGET --locked --verbose --color=always + - time cargo check --workspace --benches --target $CARGO_TARGET --locked --verbose --color=always --all-features - sccache --show-stats cargo-audit: diff --git a/Cargo.toml b/Cargo.toml index 66e90b816..69eed9c16 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -102,13 +102,6 @@ slow-blocks = ["ethcore/slow-blocks"] secretstore = ["parity-secretstore", "accounts", "ethabi", "ethcore-call-contract"] final = ["parity-version/final"] deadlock_detection = ["parking_lot/deadlock_detection"] -# to create a memory profile (requires nightly rust), use e.g. -# `heaptrack /path/to/parity `, -# to visualize a memory profile, use `heaptrack_gui` -# or -# `valgrind --tool=massif /path/to/parity ` -# and `massif-visualizer` for visualization -memory_profiling = [] # hardcode version number 1.3.7 of parity to force an update # in order to manually test that parity fall-over to the local version # in case of invalid or deprecated command line arguments are entered diff --git a/ethcore/verification/benches/verification.rs b/ethcore/verification/benches/verification.rs index 23bcf4c68..81477cc48 100644 --- a/ethcore/verification/benches/verification.rs +++ b/ethcore/verification/benches/verification.rs @@ -122,34 +122,20 @@ fn block_verification(c: &mut Criterion) { let preverified = verification::verify_block_unordered(block, ðash, true).expect(PROOF); let parent = Unverified::from_rlp(rlp_8481475.clone()).expect(PROOF); - // "partial" means we skip uncle and tx verification - c.bench_function("verify_block_family (partial)", |b| { - b.iter(|| { - if let Err(e) = verification::verify_block_family::( - &preverified.header, - &parent.header, - ðash, - None - ) { - panic!("verify_block_family (partial) ERROR: {:?}", e); - } - }); - }); - let mut block_provider = TestBlockChain::new(); block_provider.insert(rlp_8481476.clone()); // block to verify block_provider.insert(rlp_8481475.clone()); // parent block_provider.insert(rlp_8481474.clone()); // uncle's parent let client = TestBlockChainClient::default(); - c.bench_function("verify_block_family (full)", |b| { + c.bench_function("verify_block_family", |b| { b.iter(|| { let full = FullFamilyParams { block: &preverified, block_provider: &block_provider, client: &client }; if let Err(e) = verification::verify_block_family::( &preverified.header, &parent.header, ðash, - Some(full), + full, ) { panic!("verify_block_family (full) ERROR: {:?}", e) } diff --git a/parity/lib.rs b/parity/lib.rs index e676a1619..c2e78a5b3 100644 --- a/parity/lib.rs +++ b/parity/lib.rs @@ -133,18 +133,11 @@ use configuration::{Cmd, Execute}; use deprecated::find_deprecated; use hash::keccak_buffer; -#[cfg(feature = "memory_profiling")] -use std::alloc::System; - pub use self::configuration::Configuration; pub use self::run::RunningClient; pub use parity_rpc::PubSubSession; pub use ethcore_logger::{Config as LoggerConfig, setup_log, RotatingLogger}; -#[cfg(feature = "memory_profiling")] -#[global_allocator] -static A: System = System; - fn print_hash_of(maybe_file: Option) -> Result { if let Some(file) = maybe_file { let mut f = BufReader::new(File::open(&file).map_err(|_| "Unable to open file".to_owned())?);