diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:11:38 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-17 12:12:43 +0000 |
commit | cf94bdc0742c13e2a0cac864c478b8626b266e1b (patch) | |
tree | 044670aa50cc5e2b4229aa0b6b3df6676730c0a6 /vendor/tracing-subscriber/benches/filter_log.rs | |
parent | Adding debian version 1.65.0+dfsg1-2. (diff) | |
download | rustc-cf94bdc0742c13e2a0cac864c478b8626b266e1b.tar.xz rustc-cf94bdc0742c13e2a0cac864c478b8626b266e1b.zip |
Merging upstream version 1.66.0+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/tracing-subscriber/benches/filter_log.rs')
-rw-r--r-- | vendor/tracing-subscriber/benches/filter_log.rs | 315 |
1 files changed, 0 insertions, 315 deletions
diff --git a/vendor/tracing-subscriber/benches/filter_log.rs b/vendor/tracing-subscriber/benches/filter_log.rs deleted file mode 100644 index 4dcf3b4ec..000000000 --- a/vendor/tracing-subscriber/benches/filter_log.rs +++ /dev/null @@ -1,315 +0,0 @@ -use criterion::{criterion_group, criterion_main, Criterion}; -use std::time::Duration; -use tracing::{dispatcher::Dispatch, span, Event, Id, Metadata}; -use tracing_subscriber::{prelude::*, EnvFilter}; - -mod support; -use support::MultithreadedBench; - -/// A subscriber that is enabled but otherwise does nothing. -struct EnabledSubscriber; - -impl tracing::Subscriber for EnabledSubscriber { - fn new_span(&self, span: &span::Attributes<'_>) -> Id { - let _ = span; - Id::from_u64(0xDEAD_FACE) - } - - fn event(&self, event: &Event<'_>) { - let _ = event; - } - - fn record(&self, span: &Id, values: &span::Record<'_>) { - let _ = (span, values); - } - - fn record_follows_from(&self, span: &Id, follows: &Id) { - let _ = (span, follows); - } - - fn enabled(&self, metadata: &Metadata<'_>) -> bool { - let _ = metadata; - true - } - - fn enter(&self, span: &Id) { - let _ = span; - } - - fn exit(&self, span: &Id) { - let _ = span; - } -} - -fn bench_static(c: &mut Criterion) { - let _ = tracing_log::LogTracer::init(); - - let mut group = c.benchmark_group("log/static"); - - group.bench_function("baseline_single_threaded", |b| { - tracing::subscriber::with_default(EnabledSubscriber, || { - b.iter(|| { - log::info!(target: "static_filter", "hi"); - log::debug!(target: "static_filter", "hi"); - log::warn!(target: "static_filter", "hi"); - log::trace!(target: "foo", "hi"); - }) - }); - }); - group.bench_function("single_threaded", |b| { - let filter = "static_filter=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::info!(target: "static_filter", "hi"); - log::debug!(target: "static_filter", "hi"); - log::warn!(target: "static_filter", "hi"); - log::trace!(target: "foo", "hi"); - }) - }); - }); - group.bench_function("enabled_one", |b| { - let filter = "static_filter=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::info!(target: "static_filter", "hi"); - }) - }); - }); - group.bench_function("enabled_many", |b| { - let filter = "foo=debug,bar=trace,baz=error,quux=warn,static_filter=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::info!(target: "static_filter", "hi"); - }) - }); - }); - group.bench_function("disabled_level_one", |b| { - let filter = "static_filter=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::debug!(target: "static_filter", "hi"); - }) - }); - }); - group.bench_function("disabled_level_many", |b| { - let filter = "foo=debug,bar=info,baz=error,quux=warn,static_filter=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::trace!(target: "static_filter", "hi"); - }) - }); - }); - group.bench_function("disabled_one", |b| { - let filter = "foo=info".parse::<EnvFilter>().expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::info!(target: "static_filter", "hi"); - }) - }); - }); - group.bench_function("disabled_many", |b| { - let filter = "foo=debug,bar=trace,baz=error,quux=warn,whibble=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::info!(target: "static_filter", "hi"); - }) - }); - }); - group.bench_function("baseline_multithreaded", |b| { - let dispatch = Dispatch::new(EnabledSubscriber); - b.iter_custom(|iters| { - let mut total = Duration::from_secs(0); - for _ in 0..iters { - let bench = MultithreadedBench::new(dispatch.clone()); - let elapsed = bench - .thread(|| { - log::info!(target: "static_filter", "hi"); - }) - .thread(|| { - log::debug!(target: "static_filter", "hi"); - }) - .thread(|| { - log::warn!(target: "static_filter", "hi"); - }) - .thread(|| { - log::warn!(target: "foo", "hi"); - }) - .run(); - total += elapsed; - } - total - }) - }); - group.bench_function("multithreaded", |b| { - let filter = "static_filter=info" - .parse::<EnvFilter>() - .expect("should parse"); - let dispatch = Dispatch::new(EnabledSubscriber.with(filter)); - b.iter_custom(|iters| { - let mut total = Duration::from_secs(0); - for _ in 0..iters { - let bench = MultithreadedBench::new(dispatch.clone()); - let elapsed = bench - .thread(|| { - log::info!(target: "static_filter", "hi"); - }) - .thread(|| { - log::debug!(target: "static_filter", "hi"); - }) - .thread(|| { - log::warn!(target: "static_filter", "hi"); - }) - .thread(|| { - log::warn!(target: "foo", "hi"); - }) - .run(); - total += elapsed; - } - total - }); - }); - group.finish(); -} - -fn bench_dynamic(c: &mut Criterion) { - let _ = tracing_log::LogTracer::init(); - - let mut group = c.benchmark_group("log/dynamic"); - - group.bench_function("baseline_single_threaded", |b| { - tracing::subscriber::with_default(EnabledSubscriber, || { - b.iter(|| { - tracing::info_span!("foo").in_scope(|| { - log::info!("hi"); - log::debug!("hi"); - }); - tracing::info_span!("bar").in_scope(|| { - log::warn!("hi"); - }); - log::trace!("hi"); - }) - }); - }); - group.bench_function("single_threaded", |b| { - let filter = "[foo]=trace".parse::<EnvFilter>().expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - tracing::info_span!("foo").in_scope(|| { - log::info!("hi"); - log::debug!("hi"); - }); - tracing::info_span!("bar").in_scope(|| { - log::warn!("hi"); - }); - log::trace!("hi"); - }) - }); - }); - group.bench_function("baseline_multithreaded", |b| { - let dispatch = Dispatch::new(EnabledSubscriber); - b.iter_custom(|iters| { - let mut total = Duration::from_secs(0); - for _ in 0..iters { - let bench = MultithreadedBench::new(dispatch.clone()); - let elapsed = bench - .thread(|| { - let span = tracing::info_span!("foo"); - let _ = span.enter(); - log::info!("hi"); - }) - .thread(|| { - let span = tracing::info_span!("foo"); - let _ = span.enter(); - log::debug!("hi"); - }) - .thread(|| { - let span = tracing::info_span!("bar"); - let _ = span.enter(); - log::debug!("hi"); - }) - .thread(|| { - log::trace!("hi"); - }) - .run(); - total += elapsed; - } - total - }) - }); - group.bench_function("multithreaded", |b| { - let filter = "[foo]=trace".parse::<EnvFilter>().expect("should parse"); - let dispatch = Dispatch::new(EnabledSubscriber.with(filter)); - b.iter_custom(|iters| { - let mut total = Duration::from_secs(0); - for _ in 0..iters { - let bench = MultithreadedBench::new(dispatch.clone()); - let elapsed = bench - .thread(|| { - let span = tracing::info_span!("foo"); - let _ = span.enter(); - log::info!("hi"); - }) - .thread(|| { - let span = tracing::info_span!("foo"); - let _ = span.enter(); - log::debug!("hi"); - }) - .thread(|| { - let span = tracing::info_span!("bar"); - let _ = span.enter(); - log::debug!("hi"); - }) - .thread(|| { - log::trace!("hi"); - }) - .run(); - total += elapsed; - } - total - }) - }); - - group.finish(); -} - -fn bench_mixed(c: &mut Criterion) { - let _ = tracing_log::LogTracer::init(); - - let mut group = c.benchmark_group("log/mixed"); - - group.bench_function("disabled", |b| { - let filter = "[foo]=trace,bar[quux]=debug,[{baz}]=debug,asdf=warn,wibble=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::info!(target: "static_filter", "hi"); - }) - }); - }); - group.bench_function("disabled_by_level", |b| { - let filter = "[foo]=info,bar[quux]=debug,asdf=warn,static_filter=info" - .parse::<EnvFilter>() - .expect("should parse"); - tracing::subscriber::with_default(EnabledSubscriber.with(filter), || { - b.iter(|| { - log::trace!(target: "static_filter", "hi"); - }) - }); - }); -} - -criterion_group!(benches, bench_static, bench_dynamic, bench_mixed); -criterion_main!(benches); |