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

Eoff, Ullysses A ullysses.a.eoff at intel.com
Fri Nov 11 18:23:02 UTC 2016


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


More information about the Libva mailing list