As I understand, HistogramCalibrator collects data distribution of each activation, and it is compressed into 2^bits bins for computing entropy.
In the signed 8-bit setting, integer values among -128~127 can be used, and the number of candidate integers is 256.
In the unsigned 8-bit setting, integer values among 0~255 can be used, and the number of candidate integers is also 256.
So, I think nbins
in _compute_amax_entropy
should always be 256 regardless of the sign.
However, the implementation in pytorch_quantization, nbins
of signed 8-bit setting is half that of unsigned 8-bit setting.
Can you inform me what I missed?