summaryrefslogtreecommitdiffstats
path: root/third_party/rust/tracing/benches/baseline.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/tracing/benches/baseline.rs')
-rw-r--r--third_party/rust/tracing/benches/baseline.rs24
1 files changed, 24 insertions, 0 deletions
diff --git a/third_party/rust/tracing/benches/baseline.rs b/third_party/rust/tracing/benches/baseline.rs
new file mode 100644
index 0000000000..93c14f422c
--- /dev/null
+++ b/third_party/rust/tracing/benches/baseline.rs
@@ -0,0 +1,24 @@
+use criterion::{black_box, criterion_group, criterion_main, Criterion};
+
+fn bench(c: &mut Criterion) {
+ use std::sync::atomic::{AtomicUsize, Ordering};
+
+ let mut group = c.benchmark_group("comparison");
+ group.bench_function("relaxed_load", |b| {
+ let foo = AtomicUsize::new(1);
+ b.iter(|| black_box(foo.load(Ordering::Relaxed)));
+ });
+ group.bench_function("acquire_load", |b| {
+ let foo = AtomicUsize::new(1);
+ b.iter(|| black_box(foo.load(Ordering::Acquire)))
+ });
+ group.bench_function("log", |b| {
+ b.iter(|| {
+ log::log!(log::Level::Info, "log");
+ })
+ });
+ group.finish();
+}
+
+criterion_group!(benches, bench);
+criterion_main!(benches);