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

Xiang, Haihao haihao.xiang at intel.com
Fri Jan 6 05:08:15 UTC 2017


Recently I re-ran the gtest on SKL and didn't reproduce the error even with HEAD
 77ff763fa44c36d3154ee9267e9eb940dd4c10fc. I will keep one eye on it and let you
know if I see something.

Thanks
Haihao
 

> Hi Sean,
> 
> The configuration is very simple and I ran the test within a text
> console. Maybe it is a random issue so it is hard to reproduce in your
> side. I will try to debug it. 
> 
> Thanks
> Haihao
> 
> 
> > 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.co
> > m> 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
> > 
> > 
> > 
> _______________________________________________
> Libva mailing list
> Libva at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/libva


More information about the Libva mailing list