Add a realistic end-to-end benchmark

This commit is contained in:
Emil Ernerfeldt 2021-03-29 22:48:13 +02:00
parent d4e5133da2
commit f9c4be33a7

View file

@ -9,7 +9,17 @@ pub fn criterion_benchmark(c: &mut Criterion) {
let mut ctx = egui::CtxRef::default(); let mut ctx = egui::CtxRef::default();
let mut demo_windows = egui_demo_lib::DemoWindows::default(); let mut demo_windows = egui_demo_lib::DemoWindows::default();
c.bench_function("demo_windows_minimal", |b| { // The most end-to-end benchmark.
c.bench_function("demo_windows_minimal with tesselation (realistic)", |b| {
b.iter(|| {
ctx.begin_frame(raw_input.clone());
demo_windows.ui(&ctx);
let (_, shapes) = ctx.end_frame();
ctx.tessellate(shapes)
})
});
c.bench_function("demo_windows_minimal (no tesselation)", |b| {
b.iter(|| { b.iter(|| {
ctx.begin_frame(raw_input.clone()); ctx.begin_frame(raw_input.clone());
demo_windows.ui(&ctx); demo_windows.ui(&ctx);