From 7f4cffa23315acce23a8580a959c19fa0492f94b Mon Sep 17 00:00:00 2001 From: Luiz Irber Date: Sat, 29 Jun 2024 16:26:48 -0700 Subject: [PATCH] update benchmarks --- Cargo.lock | 33 +++++++++++++++++++++++++++++++++ src/core/Cargo.toml | 1 + src/core/benches/compute.rs | 5 +---- src/core/benches/gather.rs | 2 +- src/core/benches/minhash.rs | 5 +---- src/core/benches/nodegraph.rs | 5 +---- 6 files changed, 38 insertions(+), 13 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c077a1e1f9..59b40e81ac 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -358,6 +358,38 @@ dependencies = [ "unicode-width", ] +[[package]] +name = "codspeed" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3a104ac948e0188b921eb3fcbdd55dcf62e542df4c7ab7e660623f6288302089" +dependencies = [ + "colored", + "libc", + "serde_json", +] + +[[package]] +name = "codspeed-criterion-compat" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "722c36bdc62d9436d027256ce2627af81ac7a596dfc7d13d849d0d212448d7fe" +dependencies = [ + "codspeed", + "colored", + "criterion", +] + +[[package]] +name = "colored" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" +dependencies = [ + "lazy_static", + "windows-sys 0.48.0", +] + [[package]] name = "console_error_panic_hook" version = "0.1.7" @@ -1622,6 +1654,7 @@ dependencies = [ "camino", "cfg-if", "chrono", + "codspeed-criterion-compat", "counter", "criterion", "csv", diff --git a/src/core/Cargo.toml b/src/core/Cargo.toml index cbaf7fadc8..caac71e93d 100644 --- a/src/core/Cargo.toml +++ b/src/core/Cargo.toml @@ -65,6 +65,7 @@ typed-builder = "0.18.0" vec-collections = "0.4.3" [dev-dependencies] +codspeed-criterion-compat = "2.6.0" proptest = { version = "1.5.0", default-features = false, features = ["std"]} rand = "0.8.2" tempfile = "3.10.1" diff --git a/src/core/benches/compute.rs b/src/core/benches/compute.rs index 3e1bee87d1..36a48f3943 100644 --- a/src/core/benches/compute.rs +++ b/src/core/benches/compute.rs @@ -1,5 +1,4 @@ -#[macro_use] -extern crate criterion; +use codspeed_criterion_compat::{black_box, criterion_group, criterion_main, Criterion}; use std::fs::File; use std::io::{Cursor, Read}; @@ -8,8 +7,6 @@ use needletail::parse_fastx_reader; use sourmash::cmd::ComputeParameters; use sourmash::signature::Signature; -use criterion::Criterion; - fn add_sequence(c: &mut Criterion) { let cp = ComputeParameters::default(); let template_sig = Signature::from_params(&cp); diff --git a/src/core/benches/gather.rs b/src/core/benches/gather.rs index 81fe2f87aa..550ae762b4 100644 --- a/src/core/benches/gather.rs +++ b/src/core/benches/gather.rs @@ -7,7 +7,7 @@ use sourmash::signature::Signature; use sourmash::sketch::Sketch; use sourmash::{index::calculate_gather_stats, storage::SigStore}; -use criterion::{black_box, criterion_group, criterion_main, Criterion}; +use codspeed_criterion_compat::{black_box, criterion_group, criterion_main, Criterion}; fn gather_stats_benchmarks(c: &mut Criterion) { let mut filename = PathBuf::from(env!("CARGO_MANIFEST_DIR")); diff --git a/src/core/benches/minhash.rs b/src/core/benches/minhash.rs index c2e27b0249..e495185bdd 100644 --- a/src/core/benches/minhash.rs +++ b/src/core/benches/minhash.rs @@ -1,6 +1,3 @@ -#[macro_use] -extern crate criterion; - use std::fs::File; use std::io::BufReader; use std::path::PathBuf; @@ -9,7 +6,7 @@ use sourmash::signature::{Signature, SigsTrait}; use sourmash::sketch::minhash::{KmerMinHash, KmerMinHashBTree}; use sourmash::sketch::Sketch; -use criterion::Criterion; +use codspeed_criterion_compat::{black_box, criterion_group, criterion_main, Criterion}; fn intersection(c: &mut Criterion) { let mut filename = PathBuf::from(env!("CARGO_MANIFEST_DIR")); diff --git a/src/core/benches/nodegraph.rs b/src/core/benches/nodegraph.rs index 8bbf4ce3d5..da0e61a95c 100644 --- a/src/core/benches/nodegraph.rs +++ b/src/core/benches/nodegraph.rs @@ -1,12 +1,9 @@ -#[macro_use] -extern crate criterion; - use std::fs::File; use std::io::{BufWriter, Cursor, Read}; use sourmash::sketch::nodegraph::Nodegraph; -use criterion::Criterion; +use codspeed_criterion_compat::{black_box, criterion_group, criterion_main, Criterion}; fn save_load(c: &mut Criterion) { let mut data: Vec = vec![];