[x265] Regarding changeset 8154 "vec: remove idct8, we have SSSE3 assembly for it"

Steve Borho steve at borho.org
Thu Sep 25 04:40:28 CEST 2014


On 09/24, James Almer wrote:
> Hello.
> 
> Would it be too much to ask to get this reverted, or ported to yasm 
> syntax and reintroduced to the tree?
> The fact there's an SSSE3 implementation of the same function isn't reason 
> enough to remove an implementation for an older instruction set.
> There are several AMD cpus out there that support only up to SSE3, including 
> many quad and hexa core, and this commit means a performance hit for them.
> 
> And for that matter, was it really SSE3? It seems to me that it only uses 
> SSE2 intrinsics/instructions.
> Regards.

It's been our goal for about a year now to get rid of all the intrinsic
SIMD routines and we've been fairly successful.  All we have left is a
rarely used dequant_scaling() function, and these dct/idct routines for
large transforms (16x16 and 32x32).

All things considered I'd greatly prefer an SSE3 or lower asesmbly
version of idct8, but I don't believe that's something our team will be
working on any time soon since we already have an SSSE3 assembly
function and we're focused on increasing AVX and AVX2 coverage for
real-time encoding.

So it looks like I'll back that change out since the intrinsic function
is still useful to you.

-- 
Steve Borho


More information about the x265-devel mailing list