Singlular syscall context (#24204)

This commit is contained in:
Jack May
2022-04-11 16:05:09 -07:00
committed by GitHub
parent c1687b0604
commit 8a754d45b3
8 changed files with 466 additions and 399 deletions

View File

@ -115,7 +115,8 @@ fn bench_program_alu(bencher: &mut Bencher) {
Executable::<BpfError, ThisInstructionMeter>::jit_compile(&mut executable).unwrap();
let compute_meter = invoke_context.get_compute_meter();
let mut instruction_meter = ThisInstructionMeter { compute_meter };
let mut vm = create_vm(&executable, &mut inner_iter, invoke_context, &[]).unwrap();
invoke_context.set_orig_account_lengths(vec![]).unwrap();
let mut vm = create_vm(&executable, &mut inner_iter, invoke_context).unwrap();
println!("Interpreted:");
assert_eq!(
@ -219,6 +220,9 @@ fn bench_create_vm(bencher: &mut Bencher) {
.unwrap(),
)
.unwrap();
invoke_context
.set_orig_account_lengths(account_lengths)
.unwrap();
let executable = Executable::<BpfError, ThisInstructionMeter>::from_elf(
&elf,
@ -229,13 +233,7 @@ fn bench_create_vm(bencher: &mut Bencher) {
.unwrap();
bencher.iter(|| {
let _ = create_vm(
&executable,
serialized.as_slice_mut(),
invoke_context,
&account_lengths,
)
.unwrap();
let _ = create_vm(&executable, serialized.as_slice_mut(), invoke_context).unwrap();
});
});
}
@ -270,13 +268,10 @@ fn bench_instruction_count_tuner(_bencher: &mut Bencher) {
.unwrap();
let compute_meter = invoke_context.get_compute_meter();
let mut instruction_meter = ThisInstructionMeter { compute_meter };
let mut vm = create_vm(
&executable,
serialized.as_slice_mut(),
invoke_context,
&account_lengths,
)
.unwrap();
invoke_context
.set_orig_account_lengths(account_lengths)
.unwrap();
let mut vm = create_vm(&executable, serialized.as_slice_mut(), invoke_context).unwrap();
let mut measure = Measure::start("tune");
let _ = vm.execute_program_interpreted(&mut instruction_meter);