Here I attach a preliminary version of a patch for
precompute_partition_info_sums_()
function that should accelerate encoding of 24-bit input data.
1) SSE2, SSSE3 and AVX2 versions of this function should be updated, too
2) the patch also changes
if(FLAC__bitmath_ilog2(default_partition_samples) + bps +
FLAC__MAX_EXTRA_RESIDUAL_BPS < 32)
into (in effect)
if(FLAC__bitmath_ilog2(default_partition_samples) + bps +
FLAC__MAX_EXTRA_RESIDUAL_BPS <= 32)
So, should the value of FLAC__MAX_EXTRA_RESIDUAL_BPS be increased (to 5? or to
6?)
3) any comments?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: precomp_partitions.patch
Type: application/octet-stream
Size: 3069 bytes
Desc: not available
Url :
http://lists.xiph.org/pipermail/flac-dev/attachments/20150523/a55b2278/attachment.obj
Erik de Castro Lopo
2015-May-25 10:09 UTC
[flac-dev] A patch for precompute_partition_info_sums_()
lvqcl wrote:> 3) any comments?Well, it compiles and passes the test suite. However, I am concerned that that the test suite may not actually fully cover this function (maybe its time to figure out gcov again). I know we had a problem in this bit of code before. Is it possible to write a unit test for this functon? Erik -- ---------------------------------------------------------------------- Erik de Castro Lopo http://www.mega-nerd.com/
Erik de Castro Lopo wrote:> Is it possible to write a unit test for this functon?I'm not a programmer, so I don't know how to make a proper unit test here. And I don't know what to test. Because...> I know we had a problem in this bit of code before....the problem was not in the code itself, but in "an assumption that the average residual magnitude will not be more than "bps" bits".