This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC] How to add vector math functions to Glibc


>> 3.1. Goal
>>
>> Main goal is to improve vectorization of GCC with OpenMP4.0 SIMD
>> constructs (#2.8 in http://www.openmp.org/mp-documents/OpenMP4.0.0.pdf
>> and Cilk Plus constructs (#6-8 in
>> http://www.cilkplus.org/sites/default/files/open_specifications/Intel_Cilk_plus_lang_spec_1.2.htm)
>> on x86_64 by adding SSE4, AVX and AVX2 vector implementations of
>> several vector math functions (float and double versions). AVX-512
>> versions are planned to be added later. These functions can be also
>> used manually (with intrinsics) by developers to obtain speedup.
>>
>> So it is mainly for GCC.
>
> The only counter-argument to that is that a single implementation
> in glibc can be shared by gcc and llvm or any other compiler. As
> noted in "3.5 Open questions, a."

Yes, it was a little bit inaccurate, corrected on wiki.

> Intel needs to decide where they want this piece of technology
> to reside. I don't know that the community can make this choice
> for Intel.
>
> The community is ready to work with Intel to implement this in
> glibc.

Yes, we also would like to add vector functions to new library libmvec.

So lets discuss Glibc build changes.
Build of libmvec (and hence libm.so installation) need to be
architecture dependent and optional, and some changes already was
discussed in https://sourceware.org/ml/libc-alpha/2014-09/msg00578.html.
Is it OK additionally to have configure option --enable-mathvec with
default=no and with default=yes for x86_86 build?



--
WBR,
Andrew


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]