1. Quickstart
A complete benchmark project in three files.
In lakefile.toml:
name = "myproject" defaultTargets = ["bench"] [[require]] name = "lean-bench" git = "https://github.com/kim-em/lean-bench.git" rev = "main" [[lean_lib]] name = "MyProject" [[lean_exe]] name = "bench" root = "MyProject.Bench"
In MyProject.lean:
def myFib : Nat → Nat | 0 => 0 | 1 => 1 | n + 2 => myFib n + myFib (n + 1)
In MyProject/Bench.lean:
import LeanBench import MyProject setup_benchmark myFib n => 2 ^ n def main (args : List String) : IO UInt32 := LeanBench.Cli.dispatch args
$ lake exe bench list registered benchmarks: myFib expected complexity: 2 ^ n