Class IterationParams

  • All Implemented Interfaces:
    Serializable

    public final class IterationParams
    extends Object
    Iteration parameters.

    Iteration parameters are separated in at least two instances, with different IterationType-s. The complete benchmark parameters not specific for a particular iteration are available in BenchmarkParams.

    This class is dual-purpose:

    1. It acts as the interface between host JVM and forked JVM, so that the latter would not have to figure out the benchmark configuration again
    2. It can be injected into benchmark methods to access the runtime configuration info about the benchmark
    See Also:
    Serialized Form
    • Field Detail

      • count

        protected final int count
        amount of iterations
      • timeValue

        protected final TimeValue timeValue
        iteration runtime
      • batchSize

        protected final int batchSize
        batch size (method invocations inside the single op)
    • Constructor Detail

      • IterationParams

        public IterationParams​(IterationType type,
                               int count,
                               TimeValue time,
                               int batchSize)
    • Method Detail

      • getType

        public IterationType getType()
        Iteration type: separates warmup iterations vs. measurement iterations.
        Returns:
        iteration type.
      • getCount

        public int getCount()
        Number of iterations.
        Returns:
        number of iterations of given type.
      • getTime

        public TimeValue getTime()
        Time for iteration.
        Returns:
        time
      • getBatchSize

        public int getBatchSize()
        Batch size for iteration.
        Returns:
        batch size
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object