2016-04-16 12 views
0

HdrHistogram Javaライブラリを使用していますが、希望の出力が得られません。ライブラリーや期待値に誤りがあることを理解してもらえますか?HdrHistogram Javaライブラリの使用に関するヘルプが必要

この場合、私は、出力が1000000であることを期待していますが、実際の出力は、ですが、なぜでしょう1000003

import org.HdrHistogram.*; 

public class Main { 

public static void main(String[] args) throws InterruptedException { 
    Histogram histogram = new Histogram(5); 
    histogram.recordValue(1000000); 
    histogram.recordValue(1000001); 
    histogram.recordValue(1000002); 
    histogram.recordValue(90); 
    histogram.recordValue(10); 

    System.err.println(histogram.getValueAtPercentile(50.0)); 
} 
} 

です。 私の設定は次のとおりです: -

<dependency> 
     <groupId>org.hdrhistogram</groupId> 
     <artifactId>HdrHistogram</artifactId> 
     <version>2.1.8</version> 
    </dependency> 

答えて

0

これは正しい動作です。指定された解像度/区切りの小数点5桁(例では1000000 +/- 100)が正しいでしょう。 1000003はその範囲内にあり、histogram.valuesAreEquivalent(1000000,1000003)はtrueを返します。 histogram.lowestEquivalentValue(1000000)と ヒストグラムを使用できることに注意してください。 highestEquivalentValue(1000000)を使用して、同等の値の範囲を設定します。

関連する問題