Re: [RESEND PATCH v0 0/3] Performance improvement of decoder

From: Nicolas Dufresne
Date: Wed Apr 02 2025 - 11:44:36 EST


Hi,

Le mercredi 19 mars 2025 à 12:50 +0900, Jackson.lee a écrit :
> From: Jackson Lee <jackson.lee@xxxxxxxxxxxxxxx>
>
> The wave5 codec driver is a stateful encoder/decoder.
> The following patches is for improving decoder performance.
>
> v4l2-compliance results:
> ========================
>
> v4l2-compliance 1.28.1-5233, 64 bits, 64-bit time_t
>
> Buffer ioctls:
>                 warn: v4l2-test-buffers.cpp(693): VIDIOC_CREATE_BUFS not supported
>                 warn: v4l2-test-buffers.cpp(693): VIDIOC_CREATE_BUFS not supported
>         test VIDIOC_REQBUFS/CREATE_BUFS/QUERYBUF: OK
>         test CREATE_BUFS maximum buffers: OK
>         test VIDIOC_EXPBUF: OK
>         test Requests: OK (Not Supported)
>
> Total for wave5-dec device /dev/video0: 46, Succeeded: 46, Failed: 0, Warnings: 2
> Total for wave5-enc device /dev/video1: 46, Succeeded: 46, Failed: 0, Warnings: 0
>
> Fluster test results:
> =====================
>
> Running test suite JCT-VC-HEVC_V1 with decoder GStreamer-H.265-V4L2-Gst1.0 Using 1 parallel job(s)
> Ran 133/147 tests successfully               in 68.517 secs
>
> (1 test fails because of not supporting to parse multi frames, 1 test fails because of a missing frame and slight corruption,
>  2 tests fail because of sizes which are incompatible with the IP, 11 tests fail because of unsupported 10 bit format)
>
> Running test suite JVT-AVC_V1 with decoder GStreamer-H.264-V4L2-Gst1.0 Using 1 parallel job(s)
> Ran 78/135 tests successfully               in 35.015 secs

I'd be more confortable if I could get test report using 2 or 3
parallel instances.

Also, have you conducted manual "seek" tests, and stress tested the
dynamic resolution changes ? We don't have automated tests for these
anywhere yet.

Nicolas

>
> (57 fail because the hardware is unable to decode  MBAFF / FMO / Field / Extended profile streams.)
>
>
> Jackson Lee (3):
>   media: chips-media: wave5: Improve performance of decoder
>   media: chips-media: wave5: Reduce high CPU load
>   media: chips-media: wave5: Fix Null reference while testing fluster
>
>  .../platform/chips-media/wave5/wave5-helper.c |  10 +-
>  .../chips-media/wave5/wave5-vpu-dec.c         | 361 ++++++++++--------
>  .../chips-media/wave5/wave5-vpu-enc.c         |   8 +-
>  .../platform/chips-media/wave5/wave5-vpu.c    |  69 +++-
>  .../platform/chips-media/wave5/wave5-vpuapi.c |  25 +-
>  .../platform/chips-media/wave5/wave5-vpuapi.h |  12 +-
>  6 files changed, 307 insertions(+), 178 deletions(-)