Enum Mode

java.lang.Object
java.lang.Enum<Mode>
org.openjdk.jmh.annotations.Mode
All Implemented Interfaces:
Serializable, Comparable<Mode>, java.lang.constant.Constable

public enum Mode extends Enum<Mode>
Benchmark mode.
  • Enum Constant Details

    • Throughput

      public static final Mode Throughput

      Throughput: operations per unit of time.

      Runs by continuously calling Benchmark methods, counting the total throughput over all worker threads. This mode is time-based, and it will run until the iteration time expires.

    • AverageTime

      public static final Mode AverageTime

      Average time: average time per per operation.

      Runs by continuously calling Benchmark methods, counting the average time to call over all worker threads. This is the inverse of Throughput, but with different aggregation policy. This mode is time-based, and it will run until the iteration time expires.

    • SampleTime

      public static final Mode SampleTime

      Sample time: samples the time for each operation.

      Runs by continuously calling Benchmark methods, and randomly samples the time needed for the call. This mode automatically adjusts the sampling frequency, but may omit some pauses which missed the sampling measurement. This mode is time-based, and it will run until the iteration time expires.

    • SingleShotTime

      public static final Mode SingleShotTime

      Single shot time: measures the time for a single operation.

      Runs by calling Benchmark once and measuring its time. This mode is useful to estimate the "cold" performance when you don't want to hide the warmup invocations, or if you want to see the progress from call to call, or you want to record every single sample. This mode is work-based, and will run only for a single invocation of Benchmark method.

      Caveats for this mode include:
      • More warmup/measurement iterations are generally required.
      • Timers overhead might be significant if benchmarks are small; switch to SampleTime mode if that is a problem.
    • All

      public static final Mode All
      Meta-mode: all the benchmark modes. This is mostly useful for internal JMH testing.
  • Method Details

    • values

      public static Mode[] values()
      Returns an array containing the constants of this enum type, in the order they are declared.
      Returns:
      an array containing the constants of this enum type, in the order they are declared
    • valueOf

      public static Mode valueOf(String name)
      Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum type has no constant with the specified name
      NullPointerException - if the argument is null
    • shortLabel

      public String shortLabel()
    • longLabel

      public String longLabel()
    • deepValueOf

      public static Mode deepValueOf(String name)
    • getKnown

      public static List<String> getKnown()