Re: Altivec in baseline for ppc64?

2021-07-16 Thread Luke Kenneth Casson Leighton
---
crowd-funded eco-conscious hardware: https://www.crowdsupply.com/eoma68

On Fri, Jul 16, 2021 at 2:55 PM Lennart Sorensen
 wrote:

> Some years ago I tried to get such runtime detection added for vlc.
> Upstream was certainly far from helpful and just about hostile to the
> idea of adding runtime detection code on powerpc.

because "why would you support 10+ year old processors", i do get it,
but it is very frustrating.

>  Given I was just
> trying to help out the people hitting a problem with it (I don't have
> any desktop powerpc, I only deal with embedded), I decided it wasn't
> worth my effort to argue with them.

Libre-SOC's SVP64 ISA is a stunning 4 to 5 times less instructions for MP3
CODEC inner loop.  i'm also adding hardware-level support for in-place
FFT butterfly, such that *any* sized FFT should be possible to do in around
45 instructions.

when hardware's available this _should_ shock ffmpeg and other
developers out of rejecting upstream patches for non-IBM non-SIMD
contributions.

... but the more mandatory patches "#ifdef POWER9" include VSX,
the harder that becomes to do, because our processor will be POWER9
compliant... just without SIMD.

l.



Re: Altivec in baseline for ppc64?

2021-07-16 Thread Lennart Sorensen
On Fri, Jul 16, 2021 at 01:08:47PM +0200, John Paul Adrian Glaubitz wrote:
> Well, you could have runtime detection like certain multimedia codes and 
> OpenSSL use but
> most packages don't do that.
> 
> Either way, if certain downstreams want better support for certain targets, 
> they are always
> welcome to jump in and send patches to me or upstream. This port is a 
> community effort,
> after all.

Some years ago I tried to get such runtime detection added for vlc.
Upstream was certainly far from helpful and just about hostile to the
idea of adding runtime detection code on powerpc.  Given I was just
trying to help out the people hitting a problem with it (I don't have
any desktop powerpc, I only deal with embedded), I decided it wasn't
worth my effort to argue with them.

-- 
Len Sorensen



Re: Altivec in baseline for ppc64?

2021-07-16 Thread John Paul Adrian Glaubitz
On 7/16/21 12:59 PM, Jeffrey Walton wrote:
>> I would argue that there are far more users with PowerMacs which all support 
>> AltiVecs than
>> with obscure embedded machines. As I said, some packages like nss2 already 
>> enabled AltiVec
>> by default.
> 
> Does it have to be one or the other? Can't you have both?

Well, you could have runtime detection like certain multimedia codes and 
OpenSSL use but
most packages don't do that.

Either way, if certain downstreams want better support for certain targets, 
they are always
welcome to jump in and send patches to me or upstream. This port is a community 
effort,
after all.

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaub...@debian.org
`. `'   Freie Universitaet Berlin - glaub...@physik.fu-berlin.de
  `-GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913



Re: Altivec in baseline for ppc64?

2021-07-16 Thread Jeffrey Walton
On Fri, Jul 16, 2021 at 2:59 AM John Paul Adrian Glaubitz
 wrote:
>
> On 7/15/21 5:49 PM, Christian Zigotzky wrote:
> > I disagree too because the performance of software with AltiVec support 
> > isn't as
> > high as expected. I tested it a lot because we have AltiVec and Non-Altivec 
> > machines
> > here. We changed to Non-AltiVec compiled software a while ago.
>
> It depends on the workload, of course. Anything that does SIMD like matrix 
> multiplications
> in multimedia or scientific computing will, of course, profit from enabling 
> AltiVec.
>
> No one claimed that AltiVec, MMX or SSE will just improve everything.

+1

I've found a few algorithms that were profitable on ARM and x86, but
not profitable with Altivec. The LEA algorithm comes to mind:
https://github.com/weidai11/cryptopp/blob/master/lea_simd.cpp#L46.
Altivec runs about 5x slower than C++.

> > We and the MintPPC team had some problems with the VLC media player on our 
> > Non-AltiVec
> > machines a year ago because it is only available in an AltiVec version.
> > The MintPPC team had to recompile it. [1]
> > We also had to recompile the version 3.0.12 of VLC because of the AltiVec 
> > dependency again. [2]
>
> I would argue that there are far more users with PowerMacs which all support 
> AltiVecs than
> with obscure embedded machines. As I said, some packages like nss2 already 
> enabled AltiVec
> by default.

Does it have to be one or the other? Can't you have both?

Jeff



Re: Altivec in baseline for ppc64?

2021-07-16 Thread John Paul Adrian Glaubitz
On 7/15/21 5:49 PM, Christian Zigotzky wrote:
> I disagree too because the performance of software with AltiVec support isn't 
> as
> high as expected. I tested it a lot because we have AltiVec and Non-Altivec 
> machines
> here. We changed to Non-AltiVec compiled software a while ago.

It depends on the workload, of course. Anything that does SIMD like matrix 
multiplications
in multimedia or scientific computing will, of course, profit from enabling 
AltiVec.

No one claimed that AltiVec, MMX or SSE will just improve everything.

> We and the MintPPC team had some problems with the VLC media player on our 
> Non-AltiVec
> machines a year ago because it is only available in an AltiVec version.
> The MintPPC team had to recompile it. [1]
> We also had to recompile the version 3.0.12 of VLC because of the AltiVec 
> dependency again. [2]

I would argue that there are far more users with PowerMacs which all support 
AltiVecs than
with obscure embedded machines. As I said, some packages like nss2 already 
enabled AltiVec
by default.

Adrian

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaub...@debian.org
`. `'   Freie Universitaet Berlin - glaub...@physik.fu-berlin.de
  `-GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913