src/main/java/org/apache/datasketches/characterization/kll/KllSketchSizeSpeedProfile.java [166:203]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      final long updateTime_nS = System.nanoTime() - startUpdateTime_nS;
      return (double) updateTime_nS / streamLen;
    }
    else { //use Float
      fsk.reset();
      final long startUpdateTime_nS = System.nanoTime();

      for (int i = 0; i < streamLen; i++) {
        fsk.update(i);
      }
      final long updateTime_nS = System.nanoTime() - startUpdateTime_nS;
      return (double) updateTime_nS / streamLen;
    }
  }

  /**
   * Computes the number of trials for a given current stream length for a
   * trial set. This is used in speed trials and decreases the number of trials
   * as the stream length increases.
   *
   * @param curSL the given current stream length for a trial set.
   * @return the number of trials for a given current stream length for a
   * trial set.
   */
  private int getNumTrials(final int curSL) {
    final int minBpSL = 1 << lgMinBpSL;
    final int maxBpSL = 1 << lgMaxBpSL;
    final int maxT = 1 << lgMaxT;
    final int minT = 1 << lgMinT;
    if (lgMinT == lgMaxT || curSL <= minBpSL) {
      return maxT;
    }
    if (curSL >= maxBpSL) {
      return minT;
    }
    final double lgCurU = log(curSL) / LN2;
    final double lgTrials = slope * (lgCurU - lgMinBpSL) + lgMaxT;
    return (int) pow(2.0, lgTrials);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



src/main/java/org/apache/datasketches/characterization/kll/KllSketchVectorSizeSpeedProfile.java [164:202]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
      final long updateTime_nS = System.nanoTime() - startUpdateTime_nS;

      return (double) updateTime_nS / streamLen;
    }
    else { //use Float
      fsk.reset();
      final long startUpdateTime_nS = System.nanoTime();

      for (int i = 0; i < streamLen; i++) {
        fsk.update(i);
      }
      final long updateTime_nS = System.nanoTime() - startUpdateTime_nS;
      return (double) updateTime_nS / streamLen;
    }
  }

  /**
   * Computes the number of trials for a given current stream length for a
   * trial set. This is used in speed trials and decreases the number of trials
   * as the stream length increases.
   *
   * @param curSL the given current stream length for a trial set.
   * @return the number of trials for a given current stream length for a
   * trial set.
   */
  private int getNumTrials(final int curSL) {
    final int minBpSL = 1 << lgMinBpSL;
    final int maxBpSL = 1 << lgMaxBpSL;
    final int maxT = 1 << lgMaxT;
    final int minT = 1 << lgMinT;
    if (lgMinT == lgMaxT || curSL <= minBpSL) {
      return maxT;
    }
    if (curSL >= maxBpSL) {
      return minT;
    }
    final double lgCurU = log(curSL) / LN2;
    final double lgTrials = slope * (lgCurU - lgMinBpSL) + lgMaxT;
    return (int) pow(2.0, lgTrials);
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



