diff options
| author | Martin Haug <mhaug@live.de> | 2021-05-26 23:36:03 +0200 |
|---|---|---|
| committer | Laurenz <laurmaedje@gmail.com> | 2021-05-26 23:50:40 +0200 |
| commit | 8e700606bb64c4ffda87cec333f7c76eae244911 (patch) | |
| tree | 8d0c40b04bc61cc3e3a9cad2f7b5f2eb4a691892 /bench/src | |
| parent | e27f6c10146240a6c8b92930b27948083f08c9b5 (diff) | |
Add a cache for unchanged layouts
Co-Authored-By: Laurenz <laurmaedje@gmail.com>
Diffstat (limited to 'bench/src')
| -rw-r--r-- | bench/src/bench.rs | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/bench/src/bench.rs b/bench/src/bench.rs index 5acf15f8..f6ea9398 100644 --- a/bench/src/bench.rs +++ b/bench/src/bench.rs @@ -2,6 +2,7 @@ use std::path::Path; use criterion::{criterion_group, criterion_main, Criterion}; +use typst::cache::Cache; use typst::env::{Env, FsLoader}; use typst::eval::eval; use typst::exec::{exec, State}; @@ -42,14 +43,14 @@ fn benchmarks(c: &mut Criterion) { let syntax_tree = parse(&src).output; let expr_map = eval(&mut env, &syntax_tree, &scope).output; let layout_tree = exec(&mut env, &syntax_tree, &expr_map, state.clone()).output; - let frames = layout(&mut env, &layout_tree); + let frames = layout(&mut env, &mut Cache::new(), &layout_tree); // Bench! bench!("parse": parse(&src)); bench!("eval": eval(&mut env, &syntax_tree, &scope)); bench!("exec": exec(&mut env, &syntax_tree, &expr_map, state.clone())); - bench!("layout": layout(&mut env, &layout_tree)); - bench!("typeset": typeset(&mut env, &src, &scope, state.clone())); + bench!("layout": layout(&mut env, &mut Cache::new(), &layout_tree)); + bench!("typeset": typeset(&mut env, &mut Cache::new(), &src, &scope, state.clone())); bench!("pdf": pdf::export(&env, &frames)); } } |
