Static vs dynamic dispatch in Rust benchmark — for those who care about runtime performance

All the details, benchmark code, generated assembly, and explanation are in the README:

https://github.com/amidukr/rust-devirtualization-test

The README goes a lot in to how this benchmark is made but cuts off mid sentence as it explains what the benchmark demonstrates. So what does this demonstrate?

Edit: On my computer the results are much different:

run 1: static =  592.395 ms | dynamic = 1229.125 ms | dynamic/static = 2.07x
run 2: static =  666.677 ms | dynamic = 1281.886 ms | dynamic/static = 1.92x
run 3: static =  768.886 ms | dynamic = 1193.847 ms | dynamic/static = 1.55x
run 4: static =  502.110 ms | dynamic = 1190.254 ms | dynamic/static = 2.37x
run 5: static =  698.196 ms | dynamic = 1154.300 ms | dynamic/static = 1.65x

The benchmark seems to be trying to measure the CPU's branch predictor? Or clock speed?