[Libva] [PATCH intel-driver 0/5] JPEG Encode Test Speed Optimization

Sean V Kelley sean.v.kelley at intel.com
Mon Nov 21 22:28:01 UTC 2016


Hello Haihao,

If you like, please file a bug and provide details about your system
configuration and the errors you are seeing.  I'm not able to
duplicate your errors.

Sean


On Sun, Nov 20, 2016 at 7:18 PM, Xiang, Haihao <haihao.xiang at intel.com> wrote:
>
> I ran gtest again and got 2 failed cases now:
>
> [==========] 580 tests from 16 test cases ran. (111876 ms total)
> [  PASSED  ] 578 tests.
> [  FAILED  ] 2 tests, listed below:
> [  FAILED  ] Common/JPEGEncodeInputTest.Full/97, where GetParam() =
> (Fixed Size 7680x4320, 0x525ce4 pointing to "UYVY")
> [  FAILED  ] Common/JPEGEncodeInputTest.Full/98, where GetParam() =
> (Fixed Size 7680x4320, 0x525d10 pointing to "YUY2")
>
> however Common/JPEGEncodeInputTest.Full/97 and
> Common/JPEGEncodeInputTest.Full/98 pass when run the tests separately.
>
> [ RUN      ] Common/JPEGEncodeInputTest.Full/97
> Creator: Fixed Size 7680x4320
> Input  : UYVY 7680x4320 {15360,0,0} {4320,0,0} {66355200,0,0} {0,0,0}
> [       OK ] Common/JPEGEncodeInputTest.Full/97 (6458 ms)
> [----------] 1 test from Common/JPEGEncodeInputTest (6458 ms total)
>
> [ RUN      ] Common/JPEGEncodeInputTest.Full/98
> Creator: Fixed Size 7680x4320
> Input  : YUY2 7680x4320 {15360,0,0} {4320,0,0} {66355200,0,0} {0,0,0}
> [       OK ] Common/JPEGEncodeInputTest.Full/98 (6235 ms)
> [----------] 1 test from Common/JPEGEncodeInputTest (6235 ms total)
>
> so I guess some buffers/parameters are not cleared before running a new
> test in a full testing run. I will file a bug to track this issue.
>
> Thanks
> Haihao
>
>
>> Hi Haihao,
>>
>> Please file a bug if this persists.
>>
>> Thanks,
>> U. Artie
>>
>> > -----Original Message-----
>> > From: Xiang, Haihao
>> > Sent: Wednesday, November 09, 2016 7:57 PM
>> > To: libva at lists.freedesktop.org; seanvk at posteo.de; Eoff, Ullysses A
>> > <ullysses.a.eoff at intel.com>
>> > Subject: Re: [Libva] [PATCH intel-driver 0/5] JPEG Encode Test
>> > Speed Optimization
>> >
>> >
>> > Hi Artie,
>> >
>> > Did you run gtest on SKL?  I saw a failure with this optimization
>> > on
>> > SKL. After reverting back to commit 63b98a5, the issue disappears.
>> >
>> > [ RUN      ] Common/JPEGEncodeInputTest.Full/97
>> > i965_jpeg_encode_test.cpp:371: Failure
>> > Value of: std::abs(ebytes - rbytes).max() <= 2
>> >   Actual: false
>> > Expected: true
>> >         plane 0: 29641916 of 33177600 (89.3432%) mismatch
>> >         plane 1: 184960 of 16588800 (1.11497%) mismatch
>> >         plane 2: 0 of 16588800 (0%) mismatch
>> > Creator: Fixed Size 7680x4320
>> > Input  : UYVY 7680x4320 {15360,0,0} {4320,0,0} {66355200,0,0}
>> > {0,0,0}
>> > [  FAILED  ] Common/JPEGEncodeInputTest.Full/97, where GetParam() =
>> > (Fixed Size 7680x4320, 0x522e64 pointing to "UYVY") (7295 ms)
>> >
>> > Thanks
>> > Haihao
>> >
>> >
>> >
>> >
>> > > On Wed, 2016-10-26 at 13:24 -0700, U. Artie Eoff wrote:
>> > > > This patch series splits out the general YUV input data fields
>> > > > and
>> > > > routines
>> > > > from the ::JPEG::Encode::TestInput class into it's own
>> > > > class.  This
>> > > > new class,
>> > > > YUVImage, was then refactored to use std::valarray/std::slice
>> > > > to
>> > > > manage the
>> > > > underlying YUV byte data.  The JPEG encode tests are updated
>> > > > accordingly.  This
>> > > > change allows for faster comparison and conversion operations
>> > > > on
>> > > > YUV
>> > > > byte data
>> > > > input/output results and helps reduce some of the copying
>> > > > overhead.
>> > > >
>> > > > Also changed the random value generator to improve it's speed.
>> > > >
>> > > > With these changes, I observe ~2x improvement in runtime speed
>> > > > on
>> > > > the
>> > > > JPEG
>> > > > Encode test cases.
>> > > >
>> > > > Finally, included is a Timer class for convenience that can be
>> > > > used
>> > > > for future
>> > > > test development.
>> > >
>> > >
>> > > Nice refactoring that will make it easier for adding the other
>> > > encoders.
>> > >
>> > > lgtm (also tested0, applied.
>> > >
>> > > Thanks,
>> > >
>> > > Sean
>> > >
>> > > >
>> > > > U. Artie Eoff (5):
>> > > >   test: add a timer class
>> > > >   test: use C random library for random numbers
>> > > >   test: add YUVImage class
>> > > >   test: streamable valarray
>> > > >   test: use YUVImage in JPEG encode tests
>> > > >
>> > > >  test/Makefile.am               |   2 +
>> > > >  test/i965_jpeg_encode_test.cpp | 135 +++-----
>> > > >  test/i965_jpeg_test_data.cpp   | 196 ++---------
>> > > >  test/i965_jpeg_test_data.h     |  26 +-
>> > > >  test/i965_streamable.h         |  25 ++
>> > > >  test/i965_test_environment.cpp |   7 +
>> > > >  test/i965_test_image_utils.cpp | 747
>> > > > +++++++++++++++++++++++++++++++++++++++++
>> > > >  test/i965_test_image_utils.h   |  66 ++++
>> > > >  test/object_heap_test.cpp      |   4 -
>> > > >  test/test_utils.h              |  45 ++-
>> > > >  10 files changed, 970 insertions(+), 283 deletions(-)
>> > > >  create mode 100644 test/i965_test_image_utils.cpp
>> > > >  create mode 100644 test/i965_test_image_utils.h
>> > > >
>> > > _______________________________________________
>> > > Libva mailing list
>> > > Libva at lists.freedesktop.org
>> > > https://lists.freedesktop.org/mailman/listinfo/libva
> _______________________________________________
> Libva mailing list
> Libva at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/libva



-- 
Sean V. Kelley <sean.v.kelley at intel.com>
Open Source Technology Center / SSG
Intel Corp.


More information about the Libva mailing list