diff --git a/node-graph/interpreted-executor/benches/run_once.rs b/node-graph/interpreted-executor/benches/run_once.rs index f24b94362a..014ae46f70 100644 --- a/node-graph/interpreted-executor/benches/run_once.rs +++ b/node-graph/interpreted-executor/benches/run_once.rs @@ -12,9 +12,9 @@ fn run_once(c: &mut Criterion) { bench_for_each_demo(&mut group, |name, g| { let (_, network) = setup_network(name); g.bench_function(name, |b| { - b.iter_batched( + b.iter_batched_ref( || DynamicExecutor::new(network.clone()).unwrap(), - |executor| Executor::execute(&&executor, std::hint::black_box(context)).unwrap(), + |executor| Executor::execute(&&*executor, std::hint::black_box(context)).unwrap(), criterion::BatchSize::LargeInput, ) }); diff --git a/node-graph/interpreted-executor/benches/run_once_gungraun.rs b/node-graph/interpreted-executor/benches/run_once_gungraun.rs index da9377b4ac..997a467e8b 100644 --- a/node-graph/interpreted-executor/benches/run_once_gungraun.rs +++ b/node-graph/interpreted-executor/benches/run_once_gungraun.rs @@ -14,12 +14,12 @@ fn setup_run_once(name: &str) -> DynamicExecutor { #[library_benchmark] #[benches::with_setup(args = ["isometric-fountain", "painted-dreams", "procedural-string-lights", "parametric-dunescape", "red-dress", "valley-of-spires"], setup = setup_run_once)] -pub fn run_once(executor: DynamicExecutor) -> DynamicExecutor { +pub fn run_once(executor: DynamicExecutor) -> (DynamicExecutor, core_types::gpoll::GPoll) { let context = application_io::RenderConfig::default(); - black_box(Executor::execute(&&executor, black_box(context)).unwrap()); + let result = black_box(Executor::execute(&&executor, black_box(context)).unwrap()); - // Return the executor so its teardown happens outside the measured section - executor + // Return the executor and result so their teardown happens outside the measured section + (executor, result) } library_benchmark_group!(name = run_once_group; benchmarks = run_once); diff --git a/node-graph/interpreted-executor/benches/update_executor.rs b/node-graph/interpreted-executor/benches/update_executor.rs index 081cba763a..7d2625184d 100644 --- a/node-graph/interpreted-executor/benches/update_executor.rs +++ b/node-graph/interpreted-executor/benches/update_executor.rs @@ -9,14 +9,14 @@ fn update_executor(c: &mut Criterion) { let mut group = c.benchmark_group("Update Executor"); bench_for_each_demo(&mut group, |name, g| { g.bench_function(name, |b| { - b.iter_batched( + b.iter_batched_ref( || { let (_, proto_network) = setup_network(name); let empty = ProtoNetwork::default(); let executor = DynamicExecutor::new(empty).unwrap(); (executor, proto_network) }, - |(mut executor, network)| executor.update(std::hint::black_box(network)), + |(executor, network)| executor.update(std::hint::black_box(std::mem::take(network))), criterion::BatchSize::SmallInput, ) });