This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [RFC] How to add vector math functions to Glibc
- From: "Carlos O'Donell" <carlos at redhat dot com>
- To: "H.J. Lu" <hjl dot tools at gmail dot com>
- Cc: Andrew Senkevich <andrew dot n dot senkevich at gmail dot com>, "Joseph S. Myers" <joseph at codesourcery dot com>, libc-alpha <libc-alpha at sourceware dot org>
- Date: Fri, 26 Sep 2014 13:55:43 -0400
- Subject: Re: [RFC] How to add vector math functions to Glibc
- Authentication-results: sourceware.org; auth=none
- References: <CAMXFM3tjquzniXP1weqxSVFJyhXqsf2PHuyrrrmqp7K0ZzORqA at mail dot gmail dot com> <CAMXFM3sGMNX1DEPAMt7qUR4UREF_xUAQjCG1OjBiZH2aoOFiPA at mail dot gmail dot com> <Pine dot LNX dot 4 dot 64 dot 1409181551370 dot 31607 at digraph dot polyomino dot org dot uk> <CAMXFM3tO7MTYCq8-YFZacdbLvR4iAab_n04AuB+rp2Phs4BvQg at mail dot gmail dot com> <Pine dot LNX dot 4 dot 64 dot 1409242011260 dot 7597 at digraph dot polyomino dot org dot uk> <CAMXFM3tqiqUNuSU2KXvAFM-QescX3+6xUO9=z5X0Ac6C9qJ7zg at mail dot gmail dot com> <CAMe9rOq7bZHb8R=opUzSmAMGWjLpX21mR=Sx96cuBph=TTtDXA at mail dot gmail dot com> <54246CB5 dot 7020908 at redhat dot com> <CAMe9rOoLmJ2jHWmERoB0M83WNKovJOgh0--Kquw9O86A1tPU0g at mail dot gmail dot com> <5424733D dot 6010305 at redhat dot com> <CAMe9rOpacze055qyBFzz3M-b-GNtXCqZzMmkScBL9a94zVj28g at mail dot gmail dot com> <54247FAB dot 6050002 at redhat dot com> <CAMe9rOq78Sey2HMHBdJNY=+E5NuHxDDhhZ=+0QJX5MTw6KLcBg at mail dot gmail dot com> <54258AD4 dot 7000604 at redhat dot com> <CAMe9rOqgy6DB9mAEYHaNCZN9-m8aiSWrwAgZ=AXAcbYr8+KD7Q at mail dot gmail dot com>
On 09/26/2014 12:08 PM, H.J. Lu wrote:
>> I think this chioce may actually be larger than just Intel.
>>
>> For example IBM, and particularly their Power vector math
>> functions were explained to me as being callable directly
>> by developers. Thus Power might want libmvec.so in glibc?
>
> Does Power have the same API as x86? If not, how will they
> be used by programmers?
Power does not have the same API.
I expect that David Edhelson was talking about these:
http://pic.dhe.ibm.com/infocenter/compbg/v121v141/index.jsp?topic=%2Fcom.ibm.xlcpp121.bg.doc%2Fproguide%2Fvector.html
Though I haven't verified.
> Again, we need to decide
>
> 1. Who is the main user.
Normal developers.
> 2. How it is used by the main user.
They call those functions.
> 3. What is the impact on the programmers.
If the functions are in glibc, we can deploy them independent
of compiler.
> If we put it in GLIBC, we should have a API with a generic
> implementation and each target can have optimized implementation.
I disagree.
Each target will likely have two APIs:
(a) The legacy API supported for compatibility with existing
applications following the existing published APIs.
e.g. IBM and Intel vector functions.
(b) A generic GNU implemetnation that all targets can have.
We aren't even talking about (b) yet.
Cheers,
Carlos.