From d5c0542f61d1e36709aabd97d2321307a3ca023e Mon Sep 17 00:00:00 2001 From: Manos Pitsidianakis Date: Sat, 4 Aug 2018 20:30:21 +0300 Subject: [PATCH] Update benches --- README | 12 ++++++++++++ benches/maildir.rs | 26 +++++++++++++++++++++----- benches/parse.rs | 2 ++ melib/src/conf/mod.rs | 2 +- 4 files changed, 36 insertions(+), 6 deletions(-) diff --git a/README b/README index 72047e2ca..a2d3a5a6f 100644 --- a/README +++ b/README @@ -9,6 +9,18 @@ terminal mail user agent + +config +====== + +# $XDG_CONFIG_HOME/meli/config + +profiling: +========== + +# perf record -g target/debug/bin +# perf script | stackcollapse-perf | rust-unmangle | flamegraph > perf.svg + / / /_/ | / \/ diff --git a/benches/maildir.rs b/benches/maildir.rs index 8a0c2c5a1..dae3c506f 100644 --- a/benches/maildir.rs +++ b/benches/maildir.rs @@ -1,5 +1,6 @@ #![feature(test)] extern crate melib; +use melib::conf::Folder; use melib::mailbox::backends::maildir::*; extern crate test; @@ -7,21 +8,36 @@ use self::test::Bencher; #[bench] fn bench_threads_1(b: &mut Bencher) { - b.iter(|| MaildirType::new("").get_multicore(1)); + b.iter(|| { + let folder = Folder::new(String::from(""), vec![]); + MaildirType::new("").multicore(1, &folder) + }); } #[bench] fn bench_threads_2(b: &mut Bencher) { - b.iter(|| MaildirType::new("").get_multicore(2)); + b.iter(|| { + let folder = Folder::new(String::from(""), vec![]); + MaildirType::new("").multicore(2, &folder) + }); } #[bench] fn bench_threads_3(b: &mut Bencher) { - b.iter(|| MaildirType::new("").get_multicore(3)); + b.iter(|| { + let folder = Folder::new(String::from(""), vec![]); + MaildirType::new("").multicore(3, &folder) + }); } #[bench] fn bench_threads_4(b: &mut Bencher) { - b.iter(|| MaildirType::new("").get_multicore(4)); + b.iter(|| { + let folder = Folder::new(String::from(""), vec![]); + MaildirType::new("").multicore(4, &folder) + }); } #[bench] fn bench_threads_6(b: &mut Bencher) { - b.iter(|| MaildirType::new("").get_multicore(6)); + b.iter(|| { + let folder = Folder::new(String::from(""), vec![]); + MaildirType::new("").multicore(6, &folder) + }); } diff --git a/benches/parse.rs b/benches/parse.rs index d149d35c6..e389841e1 100644 --- a/benches/parse.rs +++ b/benches/parse.rs @@ -8,6 +8,7 @@ use melib::mailbox::email::Envelope; extern crate test; use self::test::Bencher; +/* #[bench] fn mail_parse(b: &mut Bencher) { b.iter(|| { @@ -16,3 +17,4 @@ fn mail_parse(b: &mut Bencher) { })))) }); } +*/ diff --git a/melib/src/conf/mod.rs b/melib/src/conf/mod.rs index 8d7b94426..87c78ef8b 100644 --- a/melib/src/conf/mod.rs +++ b/melib/src/conf/mod.rs @@ -41,7 +41,7 @@ pub struct Folder { } impl Folder { - fn new(path: String, file_name: String, children: Vec) -> Self { + pub fn new(path: String, file_name: String, children: Vec) -> Self { let mut h = DefaultHasher::new(); h.write(&path.as_bytes()); Folder {