add benchmark_one function