private void processInputStream()

in src/main/java/org/apache/datasketches/characterization/quantiles/MSketchStreamAProfile.java [95:143]


  private void processInputStream() {
    checkIfZipped(srcFileName);

    //Read
    job.println("");
    job.println("Input Lines Processed: ");
    final LineReader lineReader = new LineReader(srcFileName);

    final long startReadTime_nS = System.nanoTime();
    lineReader.read(0, proc);
    final long readTime_nS = System.nanoTime() - startReadTime_nS;
    numItems = proc.n;
    job.println("");

    //print sketch stats
    job.println("Sketch.toString()");
    job.println(sketch.toString().replace(", ", "\n"));
    minV = sketch.getMin();
    maxV = sketch.getMax();
    job.println("Min: " + minV);
    job.println("Max: " + maxV);
    job.println("Size: " + sketch.toByteArray().length);
    job.println("NumItems: " + numItems);
    job.println("");

    //CDF
    final double[] fracRanks = buildRanksArr(numRanks);
    final long startCdfTime_nS = System.nanoTime();
    final double[] quantiles = sketch.getQuantiles(fracRanks);
    final long cdfTime_nS = System.nanoTime() - startCdfTime_nS;

    job.println("CDF");
    job.println(String.format(cdfHdr, "Index", "Rank", "Quantile"));
    for (int i = 0; i < numRanks; i++) {
      final String s = String.format(cdfFmt, i, fracRanks[i], quantiles[i]);
      job.println(s);
    }
    job.println("");


    final double readTime_S = readTime_nS / 1E9;

    job.println(String.format("ReadTime_Sec  :\t%10.3f", readTime_S));
    job.println(String.format("ReadRate/Sec  :\t%,10.0f", numItems / readTime_S));
    job.println(String.format("CdfTime_mSec  :\t%10.3f", cdfTime_nS / 1E6));
    job.println(String.format("Cdf/Point_nSec:\t%10.3f", (double)cdfTime_nS / numRanks));
    //println(String.format("PmfTime_mSec  :\t%10.3f", pmfTime_nS / 1E6));
    //println(String.format("Pmf/Point_nSec:\t%10.3f", (double)pmfTime_nS / lenPMF));
  }