Merge commit 'd803bfe2b1fe7f5e219e50ac20d6801a0a58ac75' as 'vendor/ruvector'
This commit is contained in:
29
vendor/ruvector/crates/agentic-robotics-rt/benches/latency.rs
vendored
Normal file
29
vendor/ruvector/crates/agentic-robotics-rt/benches/latency.rs
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
use criterion::{black_box, criterion_group, criterion_main, Criterion};
|
||||
use ros3_rt::{LatencyTracker, ROS3Executor, Priority, Deadline};
|
||||
use std::time::Duration;
|
||||
|
||||
fn benchmark_latency_tracking(c: &mut Criterion) {
|
||||
c.bench_function("latency_record", |b| {
|
||||
let tracker = LatencyTracker::new("benchmark");
|
||||
let duration = Duration::from_micros(100);
|
||||
|
||||
b.iter(|| {
|
||||
black_box(tracker.record(duration));
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
fn benchmark_executor_spawn(c: &mut Criterion) {
|
||||
let executor = ROS3Executor::new().unwrap();
|
||||
|
||||
c.bench_function("executor_spawn_high", |b| {
|
||||
b.iter(|| {
|
||||
executor.spawn_high(async {
|
||||
black_box(42);
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
criterion_group!(benches, benchmark_latency_tracking, benchmark_executor_spawn);
|
||||
criterion_main!(benches);
|
||||
Reference in New Issue
Block a user