Benchmark (Lucene 10.5.0 benchmark API)
Description: declaration: package: org.apache.lucene.benchmark.byTask, class: Benchmark

Package org.apache.lucene.benchmark.byTask

# Class Benchmark

java.lang.Object
org.apache.lucene.benchmark.byTask.Benchmark

public class Benchmark extends Object
Run the benchmark algorithm.

Usage: java Benchmark algorithm-file

1. Read algorithm.
2. Run the algorithm.

Things to be added/fixed in "Benchmarking by tasks":

1. TODO - report into Excel and/or graphed view.
2. TODO - perf comparison between Lucene releases over the years.
3. TODO - perf report adequate to include in Lucene nightly build site? (so we can easily track performance changes.)
4. TODO - add overall time control for repeated execution (vs. current by-count only).
5. TODO - query maker that is based on index statistics.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Benchmark(Reader algReader)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static void`
  `exec(String[] args)`
  Utility: execute benchmark from command line
  `void`
  `execute()`
  Execute this benchmark
  `Algorithm`
  `getAlgorithm()`
  `PerfRunData`
  `getRunData()`
  `static void`
  `main(String[] args)`
  Run the benchmark algorithm.

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Benchmark

    public Benchmark(Reader algReader) throws Exception
    Throws:
      `Exception`

- ## Method Details

  - ### execute

    public void execute() throws Exception
    Execute this benchmark
    Throws:
      `Exception`

  - ### main

    public static void main(String[] args)
    Run the benchmark algorithm.
    Parameters:
      `args` - benchmark config and algorithm files

  - ### exec

    public static void exec(String[] args)
    Utility: execute benchmark from command line
    Parameters:
      `args` - single argument is expected: algorithm-file

  - ### getAlgorithm

    public Algorithm getAlgorithm()
    Returns:
      Returns the algorithm.

  - ### getRunData

    public PerfRunData getRunData()
    Returns:
      Returns the runData.