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));
}