skufog / libyuv

Automatically exported from code.google.com/p/libyuv
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

SSSE3 ScaleTo1366x768_Bilinear unittest fails #200

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
[  FAILED  ] 3 tests, listed below:
[  FAILED  ] libyuvTest.ARGBScaleTo1366x768_Bilinear
[  FAILED  ] libyuvTest.ScaleTo1366x768_Bilinear
[  FAILED  ] libyuvTest.ScaleTo1366x768_Box

Disabling SSSE3 the test passes (using SSE2).

Original issue reported on code.google.com by phthor...@gmail.com on 12 Mar 2013 at 6:10

GoogleCodeExporter commented 9 years ago
When scaling from very small, up to 1366x768, error is higher due to small math 
differences - C and SSE2 uses 1 16 bit signed multiply.  SSSE3 uses 2 7 bit 
unsigned multiplies.
set LIBYUV_WIDTH=16
set LIBYUV_HEIGHT=16

out\release\libyuv_unittest --gtest_filter=*Scale*
[ RUN      ] libyuvTest.ScaleTo1366x768_Bilinear
filter 1 -     2112 us C -     2095 us OPT
d:\src\libyuv2\trunk\unit_test\scale_test.cc(460): error: Expected: (max_diff) 
<= (1), actual: 2 vs 1
[  FAILED  ] libyuvTest.ScaleTo1366x768_Bilinear (12 ms)

set LIBYUV_DISABLE_SSSE3=1
and the test passes (using SSE2).

Original comment by fbarch...@chromium.org on 13 Mar 2013 at 6:27

GoogleCodeExporter commented 9 years ago
fixed in r606 for
set LIBYUV_WIDTH=16
set LIBYUV_HEIGHT=16

Original comment by fbarch...@chromium.org on 13 Mar 2013 at 6:38