Home | History | Annotate | Download | only in src

Lines Matching defs:Benchmark

15 #include "benchmark/benchmark.h"
55 "Minimum number of seconds we should run benchmark before "
60 "of the benchmark execution, regardless of number of "
64 "The number of runs of each benchmark. If greater than 1, the "
76 namespace benchmark {
90 inline Mutex& RETURN_CAPABILITY(::benchmark::internal::BenchmarkLockVar)
109 // Global variable so that a benchmark can cause a little extra printing
116 //static benchmark::MallocCounter *benchmark_mc;
256 // Information kept per benchmark we may want to run
257 struct Benchmark::Instance {
259 Benchmark* benchmark;
267 bool multithreaded; // Is benchmark multi-threaded?
271 // benchmark identifies a family of related benchmarks to run.
276 // Registers a benchmark family and returns the index assigned to it.
277 size_t AddBenchmark(std::unique_ptr<Benchmark> family);
279 // Extract the list of benchmark instances that match the specified
282 std::vector<Benchmark::Instance>* benchmarks);
286 std::vector<std::unique_ptr<Benchmark>> families_;
315 std::vector< std::pair<int, int> > args_; // Args for all benchmark runs
329 size_t BenchmarkFamilies::AddBenchmark(std::unique_ptr<Benchmark> family) {
338 std::vector<Benchmark::Instance>* benchmarks) {
343 std::cerr << "Could not compile benchmark re: " << error_msg << std::endl;
352 for (std::unique_ptr<Benchmark>& bench_family : families_) {
353 // Family was deleted or benchmark doesn't match
368 Benchmark::Instance instance;
370 instance.benchmark = bench_family.get();
515 Benchmark::Benchmark(const char* name)
520 Benchmark::~Benchmark() {
524 Benchmark::Benchmark(Benchmark const& other)
529 Benchmark* Benchmark::Arg(int x) {
534 Benchmark* Benchmark::Range(int start, int limit) {
539 Benchmark* Benchmark::DenseRange(int start, int limit) {
544 Benchmark* Benchmark::ArgPair(int x, int y) {
549 Benchmark* Benchmark::RangePair(int lo1, int hi1, int lo2, int hi2) {
554 Benchmark* Benchmark::Apply(void (*custom_arguments)(Benchmark* benchmark)) {
559 Benchmark* Benchmark::MinTime(double t) {
564 Benchmark* Benchmark::UseRealTime() {
569 Benchmark* Benchmark::Threads(int t) {
574 Benchmark* Benchmark::ThreadRange(int min_threads, int max_threads) {
579 Benchmark* Benchmark::ThreadPerCpu() {
584 void Benchmark::SetName(const char* name) {
597 // Execute one thread of benchmark b for the specified number of iterations.
599 void RunInThread(const benchmark::internal::Benchmark::Instance* b,
603 b->benchmark->Run(st);
605 "Benchmark returned before State::KeepRunning() returned false!";
615 void RunBenchmark(const benchmark::internal::Benchmark::Instance& b,
628 // Try benchmark
666 // Base decisions off of real time if requested by this benchmark.
696 // Create report about this benchmark run.
773 std::vector<Benchmark::Instance> benchmarks;
777 for (const internal::Benchmark::Instance& benchmark : benchmarks) {
778 std::cout << benchmark.name << "\n";
787 std::vector<Benchmark::Instance> benchmarks;
793 for (const Benchmark::Instance& benchmark : benchmarks) {
795 std::max<size_t>(name_field_width, benchmark.name.size());
809 for (const auto& benchmark : benchmarks) {
810 RunBenchmark(benchmark, reporter);
858 "benchmark"
870 using namespace benchmark;
901 Benchmark* RegisterBenchmarkInternal(Benchmark* bench) {
902 std::unique_ptr<Benchmark> bench_ptr(bench);
917 // prevent the initialization from happening in a benchmark.
921 } // end namespace benchmark