[FFmpeg-devel] [PATCH v6] libswscale/ppc: VSX-optimize 9-16 bit yuv2planeX
Michael Niedermayer
michael at niedermayer.cc
Mon Jan 14 17:13:52 EET 2019
On Sun, Jan 13, 2019 at 10:26:20AM +0200, Lauri Kasanen wrote:
> ./ffmpeg_g -f rawvideo -pix_fmt rgb24 -s hd1080 -i /dev/zero -pix_fmt yuv420p16be \
> -s 1920x1728 -f null -vframes 100 -v error -nostats -
>
> 9-14 bit funcs get about 6x speedup, 16-bit gets about 15x.
> Fate passes, each format tested with an image to video conversion.
>
> Only POWER8 includes 32-bit vector multiplies, so POWER7 is locked out
> of the 16-bit function. This includes the vec_mulo/mule functions too,
> not just vmuluwm.
>
> With TIMER_REPORT skips disabled:
> yuv420p9le
> 12412 UNITS in planarX, 131072 runs, 0 skips
> 73136 UNITS in planarX, 131072 runs, 0 skips
> yuv420p9be
> 12481 UNITS in planarX, 131072 runs, 0 skips
> 73410 UNITS in planarX, 131072 runs, 0 skips
> yuv420p10le
> 12322 UNITS in planarX, 131072 runs, 0 skips
> 72546 UNITS in planarX, 131072 runs, 0 skips
> yuv420p10be
> 12291 UNITS in planarX, 131072 runs, 0 skips
> 72935 UNITS in planarX, 131072 runs, 0 skips
> yuv420p12le
> 12316 UNITS in planarX, 131072 runs, 0 skips
> 72708 UNITS in planarX, 131072 runs, 0 skips
> yuv420p12be
> 12319 UNITS in planarX, 131072 runs, 0 skips
> 72577 UNITS in planarX, 131072 runs, 0 skips
> yuv420p14le
> 12259 UNITS in planarX, 131072 runs, 0 skips
> 72516 UNITS in planarX, 131072 runs, 0 skips
> yuv420p14be
> 12440 UNITS in planarX, 131072 runs, 0 skips
> 72962 UNITS in planarX, 131072 runs, 0 skips
> yuv420p16le
> 10548 UNITS in planarX, 131072 runs, 0 skips
> 73429 UNITS in planarX, 131072 runs, 0 skips
> yuv420p16be
> 10634 UNITS in planarX, 131072 runs, 0 skips
> 150959 UNITS in planarX, 131072 runs, 0 skips
>
> Signed-off-by: Lauri Kasanen <cand at gmx.com>
> ---
> libswscale/ppc/swscale_ppc_template.c | 4 +-
> libswscale/ppc/swscale_vsx.c | 186 +++++++++++++++++++++++++++++++++-
> 2 files changed, 184 insertions(+), 6 deletions(-)
>
> v6: No patch changes, updated bench numbers without skips.
fate does not get worse from this patch on qemu ppc32be and ppc64le
[...]
--
Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB
If you fake or manipulate statistics in a paper in physics you will never
get a job again.
If you fake or manipulate statistics in a paper in medicin you will get
a job for life at the pharma industry.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 181 bytes
Desc: not available
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20190114/8611ad44/attachment.sig>
More information about the ffmpeg-devel
mailing list